| Index: src/ast/scopes.cc
|
| diff --git a/src/ast/scopes.cc b/src/ast/scopes.cc
|
| index ad1c137753e475963467df4a934f414f9d649161..2a3cece7d9df16cbd8b103c2dba5c87f18bb8504 100644
|
| --- a/src/ast/scopes.cc
|
| +++ b/src/ast/scopes.cc
|
| @@ -1349,6 +1349,18 @@ Scope* Scope::GetOuterScopeWithContext() {
|
| return scope;
|
| }
|
|
|
| +bool Scope::HasLazilyParsedInnerFunctionScope() const {
|
| + for (Scope* scope = inner_scope_; scope; scope = scope->sibling_) {
|
| + if (scope->is_function_scope()) {
|
| + if (static_cast<DeclarationScope*>(scope)->was_lazily_parsed()) {
|
| + return true;
|
| + }
|
| + }
|
| + if (scope->HasLazilyParsedInnerFunctionScope()) return true;
|
| + }
|
| + return false;
|
| +}
|
| +
|
| Handle<StringSet> DeclarationScope::CollectNonLocals(
|
| ParseInfo* info, Handle<StringSet> non_locals) {
|
| VariableProxy* free_variables = FetchFreeVariables(this, info);
|
|
|