Index: src/scopes.h |
diff --git a/src/scopes.h b/src/scopes.h |
index 412ad853f6208a1e94e42c1973f4d759840e478a..cd4658d37bca7ae3fbf7ac007323c90217074ed8 100644 |
--- a/src/scopes.h |
+++ b/src/scopes.h |
@@ -72,7 +72,7 @@ class Scope: public ZoneObject { |
// --------------------------------------------------------------------------- |
// Construction |
- Scope(Isolate* isolate, Zone* zone, Scope* outer_scope, ScopeType scope_type, |
+ Scope(Zone* zone, Scope* outer_scope, ScopeType scope_type, |
AstValueFactory* value_factory); |
// Compute top scope and allocate variables. For lazy compilation the top |
@@ -95,7 +95,6 @@ class Scope: public ZoneObject { |
// tree and its children are reparented. |
Scope* FinalizeBlockScope(); |
- Isolate* isolate() const { return isolate_; } |
Zone* zone() const { return zone_; } |
// --------------------------------------------------------------------------- |
@@ -454,13 +453,13 @@ class Scope: public ZoneObject { |
// where var declarations will be hoisted to in the implementation. |
Scope* DeclarationScope(); |
- Handle<ScopeInfo> GetScopeInfo(); |
+ Handle<ScopeInfo> GetScopeInfo(Isolate* isolate); |
// Get the chain of nested scopes within this scope for the source statement |
// position. The scopes will be added to the list from the outermost scope to |
// the innermost scope. Only nested block, catch or with scopes are tracked |
// and will be returned, but no inner function scopes. |
- void GetNestedScopeChain(List<Handle<ScopeInfo> >* chain, |
+ void GetNestedScopeChain(Isolate* isolate, List<Handle<ScopeInfo> >* chain, |
int statement_position); |
// --------------------------------------------------------------------------- |
@@ -486,8 +485,6 @@ class Scope: public ZoneObject { |
protected: |
friend class ParserFactory; |
- Isolate* const isolate_; |
- |
// Scope tree. |
Scope* outer_scope_; // the immediately enclosing outer scope, or NULL |
ZoneList<Scope*> inner_scopes_; // the immediately enclosed inner scopes |
@@ -659,15 +656,15 @@ class Scope: public ZoneObject { |
// Predicates. |
bool MustAllocate(Variable* var); |
bool MustAllocateInContext(Variable* var); |
- bool HasArgumentsParameter(); |
+ bool HasArgumentsParameter(Isolate* isolate); |
// Variable allocation. |
void AllocateStackSlot(Variable* var); |
void AllocateHeapSlot(Variable* var); |
- void AllocateParameterLocals(); |
- void AllocateNonParameterLocal(Variable* var); |
- void AllocateNonParameterLocals(); |
- void AllocateVariablesRecursively(); |
+ void AllocateParameterLocals(Isolate* isolate); |
+ void AllocateNonParameterLocal(Isolate* isolate, Variable* var); |
+ void AllocateNonParameterLocals(Isolate* isolate); |
+ void AllocateVariablesRecursively(Isolate* isolate); |
void AllocateModulesRecursively(Scope* host_scope); |
// Resolve and fill in the allocation information for all variables |
@@ -683,12 +680,11 @@ class Scope: public ZoneObject { |
private: |
// Construct a scope based on the scope info. |
- Scope(Isolate* isolate, Zone* zone, Scope* inner_scope, ScopeType type, |
+ Scope(Zone* zone, Scope* inner_scope, ScopeType type, |
Handle<ScopeInfo> scope_info, AstValueFactory* value_factory); |
// Construct a catch scope with a binding for the name. |
- Scope(Isolate* isolate, Zone* zone, Scope* inner_scope, |
- const AstRawString* catch_variable_name, |
+ Scope(Zone* zone, Scope* inner_scope, const AstRawString* catch_variable_name, |
AstValueFactory* value_factory); |
void AddInnerScope(Scope* inner_scope) { |