Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(112)

Unified Diff: src/ast/scopes.cc

Issue 2233673003: Remove CONST_LEGACY VariableMode (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Rebased Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/ast/scopeinfo.cc ('k') | src/ast/variables.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/ast/scopes.cc
diff --git a/src/ast/scopes.cc b/src/ast/scopes.cc
index bc26f1da9ac7984cbf1c05be61e9dbe0698e9f24..0ab42d11ddffe7ab05414355afd090d6f1d05d5f 100644
--- a/src/ast/scopes.cc
+++ b/src/ast/scopes.cc
@@ -363,11 +363,9 @@ void Scope::DeserializeScopeInfo(Isolate* isolate,
if (scope_info_->HasFunctionName()) {
Handle<String> name_handle(scope_info_->FunctionName(), isolate);
const AstRawString* name = ast_value_factory->GetString(name_handle);
- VariableMode mode;
- int index = scope_info_->FunctionContextSlotIndex(*name_handle, &mode);
+ int index = scope_info_->FunctionContextSlotIndex(*name_handle);
if (index >= 0) {
Variable* result = AsDeclarationScope()->DeclareFunctionVar(name);
- DCHECK_EQ(mode, result->mode());
result->AllocateTo(VariableLocation::CONTEXT, index);
}
}
@@ -475,9 +473,11 @@ void DeclarationScope::DeclareDefaultFunctionVariables(
Variable* DeclarationScope::DeclareFunctionVar(const AstRawString* name) {
DCHECK(is_function_scope());
DCHECK_NULL(function_);
- VariableMode mode = is_strict(language_mode()) ? CONST : CONST_LEGACY;
- function_ = new (zone())
- Variable(this, name, mode, Variable::NORMAL, kCreatedInitialized);
+ Variable::Kind kind = is_sloppy(language_mode())
+ ? Variable::SLOPPY_FUNCTION_NAME
+ : Variable::NORMAL;
+ function_ =
+ new (zone()) Variable(this, name, CONST, kind, kCreatedInitialized);
return function_;
}
@@ -638,11 +638,9 @@ Variable* DeclarationScope::LookupFunctionVar(const AstRawString* name) {
return function_;
} else if (!scope_info_.is_null()) {
// If we are backed by a scope info, try to lookup the variable there.
- VariableMode mode;
- int index = scope_info_->FunctionContextSlotIndex(*(name->string()), &mode);
+ int index = scope_info_->FunctionContextSlotIndex(*(name->string()));
if (index < 0) return nullptr;
Variable* var = DeclareFunctionVar(name);
- DCHECK_EQ(mode, var->mode());
var->AllocateTo(VariableLocation::CONTEXT, index);
return var;
} else {
@@ -704,7 +702,7 @@ Variable* Scope::DeclareVariable(
Declaration* declaration, VariableMode mode, InitializationFlag init,
bool allow_harmony_restrictive_generators,
bool* sloppy_mode_block_scope_function_redefinition, bool* ok) {
- DCHECK(IsDeclaredVariableMode(mode) && mode != CONST_LEGACY);
+ DCHECK(IsDeclaredVariableMode(mode));
DCHECK(!already_resolved_);
if (mode == VAR && !is_declaration_scope()) {
« no previous file with comments | « src/ast/scopeinfo.cc ('k') | src/ast/variables.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698