| Index: src/ast/scopes.cc
|
| diff --git a/src/ast/scopes.cc b/src/ast/scopes.cc
|
| index c150336668545eb1a8bf78b3af3823f70bb476c1..acaff4925c2b583a23a34d7991fb1010caf338ce 100644
|
| --- a/src/ast/scopes.cc
|
| +++ b/src/ast/scopes.cc
|
| @@ -243,8 +243,8 @@ Scope::Scope(Zone* zone, const AstRawString* catch_variable_name,
|
| // Cache the catch variable, even though it's also available via the
|
| // scope_info, as the parser expects that a catch scope always has the catch
|
| // variable as first and only variable.
|
| - Variable* variable = Declare(zone, this, catch_variable_name, VAR,
|
| - NORMAL_VARIABLE, kCreatedInitialized);
|
| + Variable* variable = Declare(zone, catch_variable_name, VAR, NORMAL_VARIABLE,
|
| + kCreatedInitialized);
|
| AllocateHeapSlot(variable);
|
| }
|
|
|
| @@ -579,7 +579,7 @@ void DeclarationScope::DeclareThis(AstValueFactory* ast_value_factory) {
|
|
|
| bool subclass_constructor = IsSubclassConstructor(function_kind_);
|
| Variable* var = Declare(
|
| - zone(), this, ast_value_factory->this_string(),
|
| + zone(), ast_value_factory->this_string(),
|
| subclass_constructor ? CONST : VAR, THIS_VARIABLE,
|
| subclass_constructor ? kNeedsInitialization : kCreatedInitialized);
|
| receiver_ = var;
|
| @@ -594,8 +594,8 @@ void DeclarationScope::DeclareArguments(AstValueFactory* ast_value_factory) {
|
| // Declare 'arguments' variable which exists in all non arrow functions.
|
| // Note that it might never be accessed, in which case it won't be
|
| // allocated during variable allocation.
|
| - arguments_ = Declare(zone(), this, ast_value_factory->arguments_string(),
|
| - VAR, NORMAL_VARIABLE, kCreatedInitialized);
|
| + arguments_ = Declare(zone(), ast_value_factory->arguments_string(), VAR,
|
| + NORMAL_VARIABLE, kCreatedInitialized);
|
| } else if (IsLexicalVariableMode(arguments_->mode())) {
|
| // Check if there's lexically declared variable named arguments to avoid
|
| // redeclaration. See ES#sec-functiondeclarationinstantiation, step 20.
|
| @@ -609,14 +609,13 @@ void DeclarationScope::DeclareDefaultFunctionVariables(
|
| DCHECK(!is_arrow_scope());
|
|
|
| DeclareThis(ast_value_factory);
|
| - new_target_ = Declare(zone(), this, ast_value_factory->new_target_string(),
|
| - CONST, NORMAL_VARIABLE, kCreatedInitialized);
|
| + new_target_ = Declare(zone(), ast_value_factory->new_target_string(), CONST,
|
| + NORMAL_VARIABLE, kCreatedInitialized);
|
|
|
| if (IsConciseMethod(function_kind_) || IsClassConstructor(function_kind_) ||
|
| IsAccessorFunction(function_kind_)) {
|
| - this_function_ =
|
| - Declare(zone(), this, ast_value_factory->this_function_string(), CONST,
|
| - NORMAL_VARIABLE, kCreatedInitialized);
|
| + this_function_ = Declare(zone(), ast_value_factory->this_function_string(),
|
| + CONST, NORMAL_VARIABLE, kCreatedInitialized);
|
| }
|
| }
|
|
|
| @@ -686,13 +685,13 @@ void DeclarationScope::AddLocal(Variable* var) {
|
| locals_.Add(var);
|
| }
|
|
|
| -Variable* Scope::Declare(Zone* zone, Scope* scope, const AstRawString* name,
|
| +Variable* Scope::Declare(Zone* zone, const AstRawString* name,
|
| VariableMode mode, VariableKind kind,
|
| InitializationFlag initialization_flag,
|
| MaybeAssignedFlag maybe_assigned_flag) {
|
| bool added;
|
| Variable* var =
|
| - variables_.Declare(zone, scope, name, mode, kind, initialization_flag,
|
| + variables_.Declare(zone, this, name, mode, kind, initialization_flag,
|
| maybe_assigned_flag, &added);
|
| if (added) locals_.Add(var);
|
| return var;
|
| @@ -844,8 +843,7 @@ Variable* DeclarationScope::DeclareParameter(
|
| if (mode == TEMPORARY) {
|
| var = NewTemporary(name);
|
| } else {
|
| - var =
|
| - Declare(zone(), this, name, mode, NORMAL_VARIABLE, kCreatedInitialized);
|
| + var = Declare(zone(), name, mode, NORMAL_VARIABLE, kCreatedInitialized);
|
| // TODO(wingo): Avoid O(n^2) check.
|
| *is_duplicate = IsDeclaredParameter(name);
|
| }
|
| @@ -865,8 +863,7 @@ Variable* Scope::DeclareLocal(const AstRawString* name, VariableMode mode,
|
| // introduced during variable allocation, and TEMPORARY variables are
|
| // allocated via NewTemporary().
|
| DCHECK(IsDeclaredVariableMode(mode));
|
| - return Declare(zone(), this, name, mode, kind, init_flag,
|
| - maybe_assigned_flag);
|
| + return Declare(zone(), name, mode, kind, init_flag, maybe_assigned_flag);
|
| }
|
|
|
| Variable* Scope::DeclareVariable(
|
|
|