public boolean hasSideEffects(Expression expr) {
		if (expr instanceof MatchableOperator
				&& expr.containsConflictingLoad((MatchableOperator) expr))
			return true;
		for (int i = 0; i < subExpressions.length; i++) {
			if (subExpressions[i].hasSideEffects(expr))
				return true;
		}
		return false;
	}