aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/syntax/Expression.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/syntax/Expression.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/syntax/Expression.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/syntax/Expression.java b/src/main/java/com/google/devtools/build/lib/syntax/Expression.java
index db5d4e658e..182c6567a4 100644
--- a/src/main/java/com/google/devtools/build/lib/syntax/Expression.java
+++ b/src/main/java/com/google/devtools/build/lib/syntax/Expression.java
@@ -62,14 +62,18 @@ public abstract class Expression extends ASTNode {
*/
public final Object eval(Environment env) throws EvalException, InterruptedException {
try {
- Callstack.push(this);
+ if (Callstack.enabled) {
+ Callstack.push(this);
+ }
try {
return doEval(env);
} catch (EvalException ex) {
throw maybeTransformException(ex);
}
} finally {
- Callstack.pop();
+ if (Callstack.enabled) {
+ Callstack.pop();
+ }
}
}