Index: src/ast/scopes.cc |
diff --git a/src/ast/scopes.cc b/src/ast/scopes.cc |
index b75b2c4019a0353bb8d1ae5b90ca146bb2e5ba19..630d2ebd28ae890a1a354075114ed22a5901b463 100644 |
--- a/src/ast/scopes.cc |
+++ b/src/ast/scopes.cc |
@@ -1234,6 +1234,20 @@ |
} |
} |
+VariableProxy* Scope::NewUnresolved(AstNodeFactory* factory, |
+ const AstRawString* name, |
+ int start_position, VariableKind kind) { |
+ // Note that we must not share the unresolved variables with |
+ // the same name because they may be removed selectively via |
+ // RemoveUnresolved(). |
+ DCHECK(!already_resolved_); |
+ DCHECK_EQ(factory->zone(), zone()); |
+ VariableProxy* proxy = factory->NewVariableProxy(name, kind, start_position); |
+ proxy->set_next_unresolved(unresolved_); |
+ unresolved_ = proxy; |
+ return proxy; |
+} |
+ |
void Scope::AddUnresolved(VariableProxy* proxy) { |
DCHECK(!already_resolved_); |
DCHECK(!proxy->is_resolved()); |