Index: src/parser.cc |
diff --git a/src/parser.cc b/src/parser.cc |
index 056133449cd4ef342780f9b7cf8d8db8f4545347..31c5dc818cabe629255203e7a661cd3f4e1a2897 100644 |
--- a/src/parser.cc |
+++ b/src/parser.cc |
@@ -2216,8 +2216,6 @@ TryStatement* Parser::ParseTryStatement(bool* ok) { |
Expect(Token::RPAREN, CHECK_OK); |
if (peek() == Token::LBRACE) { |
- // Rewrite the catch body { B } to a block: |
- // { { B } ExitContext; }. |
Target target(&this->target_stack_, &catch_collector); |
catch_scope = NewScope(top_scope_, Scope::CATCH_SCOPE, inside_with()); |
if (top_scope_->is_strict_mode()) { |
@@ -2226,14 +2224,11 @@ TryStatement* Parser::ParseTryStatement(bool* ok) { |
Variable::Mode mode = harmony_block_scoping_ |
? Variable::LET : Variable::VAR; |
catch_variable = catch_scope->DeclareLocal(name, mode); |
- catch_block = new(zone()) Block(isolate(), NULL, 2, false); |
Scope* saved_scope = top_scope_; |
top_scope_ = catch_scope; |
- Block* catch_body = ParseBlock(NULL, CHECK_OK); |
+ catch_block = ParseBlock(NULL, CHECK_OK); |
top_scope_ = saved_scope; |
- catch_block->AddStatement(catch_body); |
- catch_block->AddStatement(new(zone()) ExitContextStatement()); |
} else { |
Expect(Token::LBRACE, CHECK_OK); |
} |