Index: src/parsing/pattern-rewriter.cc |
diff --git a/src/parsing/pattern-rewriter.cc b/src/parsing/pattern-rewriter.cc |
index ead3081f9e90178f99e85099f0b42f953449a87a..a9875bdf96f60017c8664b39b8d34be0c5f7d041 100644 |
--- a/src/parsing/pattern-rewriter.cc |
+++ b/src/parsing/pattern-rewriter.cc |
@@ -32,12 +32,12 @@ |
void Parser::PatternRewriter::RewriteDestructuringAssignment( |
- Parser* parser, RewritableAssignmentExpression* to_rewrite, Scope* scope) { |
+ Parser* parser, RewritableAssignmentExpression* to_rewrite, Scope* scope, |
+ bool* ok) { |
PatternRewriter rewriter; |
DCHECK(!to_rewrite->is_rewritten()); |
- bool ok = true; |
rewriter.scope_ = scope; |
rewriter.parser_ = parser; |
rewriter.context_ = ASSIGNMENT; |
@@ -45,21 +45,9 @@ |
rewriter.block_ = nullptr; |
rewriter.descriptor_ = nullptr; |
rewriter.names_ = nullptr; |
- rewriter.ok_ = &ok; |
+ rewriter.ok_ = ok; |
rewriter.RecurseIntoSubpattern(rewriter.pattern_, nullptr); |
- DCHECK(ok); |
-} |
- |
- |
-Expression* Parser::PatternRewriter::RewriteDestructuringAssignment( |
- Parser* parser, Assignment* assignment, Scope* scope) { |
- DCHECK_NOT_NULL(assignment); |
- DCHECK_EQ(Token::ASSIGN, assignment->op()); |
- auto to_rewrite = |
- parser->factory()->NewRewritableAssignmentExpression(assignment); |
- RewriteDestructuringAssignment(parser, to_rewrite, scope); |
- return to_rewrite->expression(); |
} |