| Index: src/ast.cc
|
| diff --git a/src/ast.cc b/src/ast.cc
|
| index 52990b8feedeb93109e7465913ec746c64b24c6f..107b5408735fde95b19274226ff78dc49988bdf3 100644
|
| --- a/src/ast.cc
|
| +++ b/src/ast.cc
|
| @@ -103,6 +103,7 @@ VariableProxy::VariableProxy(Isolate* isolate,
|
| void VariableProxy::BindTo(Variable* var) {
|
| ASSERT(var_ == NULL); // must be bound only once
|
| ASSERT(var != NULL); // must bind
|
| + ASSERT(!FLAG_harmony_modules || interface_->IsUnified(var->interface()));
|
| ASSERT((is_this() && var->is_this()) || name_.is_identical_to(var->name()));
|
| // Ideally CONST-ness should match. However, this is very hard to achieve
|
| // because we don't know the exact semantics of conflicting (const and
|
| @@ -1070,16 +1071,14 @@ REGULAR_NODE(CallNew)
|
| // LOOKUP variables only result from constructs that cannot be inlined anyway.
|
| REGULAR_NODE(VariableProxy)
|
|
|
| -// We currently do not optimize any modules. Note in particular, that module
|
| -// instance objects associated with ModuleLiterals are allocated during
|
| -// scope resolution, and references to them are embedded into the code.
|
| -// That code may hence neither be cached nor re-compiled.
|
| +// We currently do not optimize any modules.
|
| DONT_OPTIMIZE_NODE(ModuleDeclaration)
|
| DONT_OPTIMIZE_NODE(ImportDeclaration)
|
| DONT_OPTIMIZE_NODE(ExportDeclaration)
|
| DONT_OPTIMIZE_NODE(ModuleVariable)
|
| DONT_OPTIMIZE_NODE(ModulePath)
|
| DONT_OPTIMIZE_NODE(ModuleUrl)
|
| +DONT_OPTIMIZE_NODE(ModuleStatement)
|
| DONT_OPTIMIZE_NODE(WithStatement)
|
| DONT_OPTIMIZE_NODE(TryCatchStatement)
|
| DONT_OPTIMIZE_NODE(TryFinallyStatement)
|
|
|