Index: src/ast/scopes.cc |
diff --git a/src/ast/scopes.cc b/src/ast/scopes.cc |
index 1ed8b73aaa44f65a1bc952e3066a1ab47bf6cab2..09bb6d4e0507e488e5d853b2341718d33b553ead 100644 |
--- a/src/ast/scopes.cc |
+++ b/src/ast/scopes.cc |
@@ -373,7 +373,7 @@ int Scope::num_parameters() const { |
return is_declaration_scope() ? AsDeclarationScope()->num_parameters() : 0; |
} |
-bool Scope::Analyze(ParseInfo* info) { |
+void Scope::Analyze(ParseInfo* info) { |
DCHECK(info->literal() != NULL); |
DeclarationScope* scope = info->literal()->scope(); |
DeclarationScope* top = scope; |
@@ -390,7 +390,7 @@ bool Scope::Analyze(ParseInfo* info) { |
// Allocate the variables. |
{ |
AstNodeFactory ast_node_factory(info->ast_value_factory()); |
- if (!top->AllocateVariables(info, &ast_node_factory)) return false; |
+ top->AllocateVariables(info, &ast_node_factory); |
} |
#ifdef DEBUG |
@@ -401,8 +401,6 @@ bool Scope::Analyze(ParseInfo* info) { |
scope->CheckScopePositions(); |
scope->CheckZones(); |
#endif |
- |
- return true; |
} |
void DeclarationScope::DeclareThis(AstValueFactory* ast_value_factory) { |
@@ -871,7 +869,7 @@ void Scope::CollectStackAndContextLocals(ZoneList<Variable*>* stack_locals, |
} |
} |
-bool DeclarationScope::AllocateVariables(ParseInfo* info, |
+void DeclarationScope::AllocateVariables(ParseInfo* info, |
AstNodeFactory* factory) { |
// 1) Propagate scope information. |
bool outer_scope_calls_sloppy_eval = false; |
@@ -883,16 +881,10 @@ bool DeclarationScope::AllocateVariables(ParseInfo* info, |
PropagateScopeInfo(outer_scope_calls_sloppy_eval); |
// 2) Resolve variables. |
- if (!ResolveVariablesRecursively(info, factory)) { |
- DCHECK(pending_error_handler_.has_pending_error()); |
- pending_error_handler_.ThrowPendingError(info->isolate(), info->script()); |
- return false; |
- } |
+ ResolveVariablesRecursively(info, factory); |
// 3) Allocate variables. |
AllocateVariablesRecursively(info->ast_value_factory()); |
- |
- return true; |
} |
@@ -1362,14 +1354,13 @@ Variable* Scope::LookupRecursive(VariableProxy* proxy, |
return var; |
} |
- |
-bool Scope::ResolveVariable(ParseInfo* info, VariableProxy* proxy, |
+void Scope::ResolveVariable(ParseInfo* info, VariableProxy* proxy, |
AstNodeFactory* factory) { |
DCHECK(info->script_scope()->is_script_scope()); |
// If the proxy is already resolved there's nothing to do |
// (functions and consts may be resolved by the parser). |
- if (proxy->is_resolved()) return true; |
+ if (proxy->is_resolved()) return; |
// Otherwise, try to resolve the variable. |
BindingKind binding_kind; |
@@ -1436,27 +1427,22 @@ bool Scope::ResolveVariable(ParseInfo* info, VariableProxy* proxy, |
if (proxy->is_assigned()) var->set_maybe_assigned(); |
proxy->BindTo(var); |
- |
- return true; |
} |
- |
-bool Scope::ResolveVariablesRecursively(ParseInfo* info, |
+void Scope::ResolveVariablesRecursively(ParseInfo* info, |
AstNodeFactory* factory) { |
DCHECK(info->script_scope()->is_script_scope()); |
// Resolve unresolved variables for this scope. |
for (VariableProxy* proxy = unresolved_; proxy != nullptr; |
proxy = proxy->next_unresolved()) { |
- if (!ResolveVariable(info, proxy, factory)) return false; |
+ ResolveVariable(info, proxy, factory); |
} |
// Resolve unresolved variables for inner scopes. |
for (Scope* scope = inner_scope_; scope != nullptr; scope = scope->sibling_) { |
- if (!scope->ResolveVariablesRecursively(info, factory)) return false; |
+ scope->ResolveVariablesRecursively(info, factory); |
} |
- |
- return true; |
} |
void Scope::MigrateUnresolvableLocals(DeclarationScope* migrate_to, |