| Index: src/interpreter/bytecode-generator.cc
|
| diff --git a/src/interpreter/bytecode-generator.cc b/src/interpreter/bytecode-generator.cc
|
| index 16ba1039ac04977277bdf0058bc82e085a75f556..ad484c869dc92400da7c0a475340bc1ffcbd855e 100644
|
| --- a/src/interpreter/bytecode-generator.cc
|
| +++ b/src/interpreter/bytecode-generator.cc
|
| @@ -1093,7 +1093,7 @@ void BytecodeGenerator::VisitReturnStatement(ReturnStatement* stmt) {
|
| void BytecodeGenerator::VisitWithStatement(WithStatement* stmt) {
|
| builder()->SetStatementPosition(stmt);
|
| VisitForAccumulatorValue(stmt->expression());
|
| - VisitNewLocalWithContext();
|
| + VisitNewLocalWithContext(stmt->scope());
|
| VisitInScope(stmt->statement(), stmt->scope());
|
| }
|
|
|
| @@ -3199,14 +3199,14 @@ void BytecodeGenerator::VisitNewLocalBlockContext(Scope* scope) {
|
| execution_result()->SetResultInAccumulator();
|
| }
|
|
|
| -void BytecodeGenerator::VisitNewLocalWithContext() {
|
| +void BytecodeGenerator::VisitNewLocalWithContext(Scope* scope) {
|
| AccumulatorResultScope accumulator_execution_result(this);
|
|
|
| Register extension_object = register_allocator()->NewRegister();
|
|
|
| builder()->ConvertAccumulatorToObject(extension_object);
|
| VisitFunctionClosureForContext();
|
| - builder()->CreateWithContext(extension_object);
|
| + builder()->CreateWithContext(extension_object, scope->scope_info());
|
| execution_result()->SetResultInAccumulator();
|
| }
|
|
|
|
|