Index: src/scopes.h |
diff --git a/src/scopes.h b/src/scopes.h |
index 71d1129b2bd649351e79d519acebf46d3a666af1..96d2e59974ef3787d5314853c0ed54edbf113a2a 100644 |
--- a/src/scopes.h |
+++ b/src/scopes.h |
@@ -117,6 +117,10 @@ class Scope: public ZoneObject { |
// Assumes outer_scope_ is non-null. |
void ReplaceOuterScope(Scope* outer_scope); |
+ // Propagates any eagerly-gathered scope usage flags (such as calls_eval()) |
+ // to the passed-in scope. |
+ void PropagateUsageFlagsToScope(Scope* other); |
+ |
Zone* zone() const { return zone_; } |
// --------------------------------------------------------------------------- |
@@ -237,7 +241,7 @@ class Scope: public ZoneObject { |
void RecordWithStatement() { scope_contains_with_ = true; } |
// Inform the scope that the corresponding code contains an eval call. |
- void RecordEvalCall() { if (!is_script_scope()) scope_calls_eval_ = true; } |
+ void RecordEvalCall() { scope_calls_eval_ = true; } |
// Inform the scope that the corresponding code uses "arguments". |
void RecordArgumentsUsage() { scope_uses_arguments_ = true; } |