Index: src/scopes.cc |
diff --git a/src/scopes.cc b/src/scopes.cc |
index c744dd418bbaaca2b74567048f30ecf208274da3..97fbc2144f796872edd47c1bc6419369d67718cd 100644 |
--- a/src/scopes.cc |
+++ b/src/scopes.cc |
@@ -30,8 +30,7 @@ VariableMap::~VariableMap() {} |
Variable* VariableMap::Declare(Scope* scope, const AstRawString* name, |
- VariableMode mode, bool is_valid_lhs, |
- Variable::Kind kind, |
+ VariableMode mode, Variable::Kind kind, |
InitializationFlag initialization_flag, |
MaybeAssignedFlag maybe_assigned_flag) { |
// AstRawStrings are unambiguous, i.e., the same string is always represented |
@@ -42,7 +41,7 @@ Variable* VariableMap::Declare(Scope* scope, const AstRawString* name, |
if (p->value == NULL) { |
// The variable has not been declared yet -> insert it. |
DCHECK(p->key == name); |
- p->value = new (zone()) Variable(scope, name, mode, is_valid_lhs, kind, |
+ p->value = new (zone()) Variable(scope, name, mode, kind, |
initialization_flag, maybe_assigned_flag); |
} |
return reinterpret_cast<Variable*>(p->value); |
@@ -131,7 +130,6 @@ Scope::Scope(Zone* zone, Scope* inner_scope, |
Variable* variable = variables_.Declare(this, |
catch_variable_name, |
VAR, |
- true, // Valid left-hand side. |
Variable::NORMAL, |
kCreatedInitialized); |
AllocateHeapSlot(variable); |
@@ -313,15 +311,15 @@ void Scope::Initialize() { |
DCHECK(!subclass_constructor || is_function_scope()); |
Variable* var = variables_.Declare( |
this, ast_value_factory_->this_string(), |
- subclass_constructor ? CONST : VAR, false, Variable::THIS, |
+ subclass_constructor ? CONST : VAR, Variable::THIS, |
subclass_constructor ? kNeedsInitialization : kCreatedInitialized); |
var->AllocateTo(Variable::PARAMETER, -1); |
receiver_ = var; |
if (subclass_constructor) { |
- new_target_ = variables_.Declare( |
- this, ast_value_factory_->new_target_string(), CONST, false, |
- Variable::NEW_TARGET, kCreatedInitialized); |
+ new_target_ = |
+ variables_.Declare(this, ast_value_factory_->new_target_string(), |
+ CONST, Variable::NEW_TARGET, kCreatedInitialized); |
new_target_->AllocateTo(Variable::PARAMETER, -2); |
new_target_->set_is_used(); |
} |
@@ -337,7 +335,6 @@ void Scope::Initialize() { |
variables_.Declare(this, |
ast_value_factory_->arguments_string(), |
VAR, |
- true, |
Variable::ARGUMENTS, |
kCreatedInitialized); |
} |
@@ -413,7 +410,7 @@ Variable* Scope::LookupLocal(const AstRawString* name) { |
maybe_assigned_flag = kMaybeAssigned; |
} |
- Variable* var = variables_.Declare(this, name, mode, true, Variable::NORMAL, |
+ Variable* var = variables_.Declare(this, name, mode, Variable::NORMAL, |
init_flag, maybe_assigned_flag); |
var->AllocateTo(location, index); |
return var; |
@@ -429,9 +426,8 @@ Variable* Scope::LookupFunctionVar(const AstRawString* name, |
VariableMode mode; |
int index = scope_info_->FunctionContextSlotIndex(*(name->string()), &mode); |
if (index < 0) return NULL; |
- Variable* var = new(zone()) Variable( |
- this, name, mode, true /* is valid LHS */, |
- Variable::NORMAL, kCreatedInitialized); |
+ Variable* var = new (zone()) |
+ Variable(this, name, mode, Variable::NORMAL, kCreatedInitialized); |
VariableProxy* proxy = factory->NewVariableProxy(var); |
VariableDeclaration* declaration = factory->NewVariableDeclaration( |
proxy, mode, this, RelocInfo::kNoPosition); |
@@ -459,7 +455,7 @@ Variable* Scope::DeclareParameter(const AstRawString* name, VariableMode mode, |
bool is_rest) { |
DCHECK(!already_resolved()); |
DCHECK(is_function_scope()); |
- Variable* var = variables_.Declare(this, name, mode, true, Variable::NORMAL, |
+ Variable* var = variables_.Declare(this, name, mode, Variable::NORMAL, |
kCreatedInitialized); |
if (is_rest) { |
DCHECK_NULL(rest_parameter_); |
@@ -480,7 +476,7 @@ Variable* Scope::DeclareLocal(const AstRawString* name, VariableMode mode, |
// explicitly, and TEMPORARY variables are allocated via NewTemporary(). |
DCHECK(IsDeclaredVariableMode(mode)); |
++num_var_or_const_; |
- return variables_.Declare(this, name, mode, true, kind, init_flag, |
+ return variables_.Declare(this, name, mode, kind, init_flag, |
maybe_assigned_flag); |
} |
@@ -490,7 +486,6 @@ Variable* Scope::DeclareDynamicGlobal(const AstRawString* name) { |
return variables_.Declare(this, |
name, |
DYNAMIC_GLOBAL, |
- true, |
Variable::NORMAL, |
kCreatedInitialized); |
} |
@@ -513,7 +508,6 @@ Variable* Scope::NewInternal(const AstRawString* name) { |
Variable* var = new(zone()) Variable(this, |
name, |
INTERNAL, |
- false, |
Variable::NORMAL, |
kCreatedInitialized); |
internals_.Add(var, zone()); |
@@ -526,7 +520,6 @@ Variable* Scope::NewTemporary(const AstRawString* name) { |
Variable* var = new(zone()) Variable(this, |
name, |
TEMPORARY, |
- true, |
Variable::NORMAL, |
kCreatedInitialized); |
temps_.Add(var, zone()); |
@@ -987,7 +980,6 @@ Variable* Scope::NonLocal(const AstRawString* name, VariableMode mode) { |
var = map->Declare(NULL, |
name, |
mode, |
- true, |
Variable::NORMAL, |
init_flag); |
// Allocate it by giving it a dynamic lookup. |