diff options
-rw-r--r-- | common.gypi | 2 | ||||
-rw-r--r-- | deps/v8/src/parsing/parser-base.h | 2 | ||||
-rw-r--r-- | deps/v8/test/mjsunit/regress/regress-8241.js | 6 |
3 files changed, 8 insertions, 2 deletions
diff --git a/common.gypi b/common.gypi index 7ec4bff1580..d4de1234271 100644 --- a/common.gypi +++ b/common.gypi @@ -33,7 +33,7 @@ # Reset this number to 0 on major V8 upgrades. # Increment by one for each non-official patch applied to deps/v8. - 'v8_embedder_string': '-node.57', + 'v8_embedder_string': '-node.58', # Enable disassembler for `--print-code` v8 options 'v8_enable_disassembler': 1, diff --git a/deps/v8/src/parsing/parser-base.h b/deps/v8/src/parsing/parser-base.h index e7933546c6d..4e66dd8d9d6 100644 --- a/deps/v8/src/parsing/parser-base.h +++ b/deps/v8/src/parsing/parser-base.h @@ -2977,13 +2977,13 @@ ParserBase<Impl>::ParseAssignmentExpression(bool accept_IN, bool* ok) { // This is definitely not an expression so don't accumulate // expression-related errors. productions &= ~ExpressionClassifier::ExpressionProduction; + ValidateAssignmentPattern(CHECK_OK); } Accumulate(productions); if (!Token::IsAssignmentOp(peek())) return expression; if (is_destructuring_assignment) { - ValidateAssignmentPattern(CHECK_OK); } else { expression = CheckAndRewriteReferenceExpression( expression, lhs_beg_pos, scanner()->location().end_pos, diff --git a/deps/v8/test/mjsunit/regress/regress-8241.js b/deps/v8/test/mjsunit/regress/regress-8241.js new file mode 100644 index 00000000000..fb9d5475cb3 --- /dev/null +++ b/deps/v8/test/mjsunit/regress/regress-8241.js @@ -0,0 +1,6 @@ +// Copyright 2018 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +function f(x) { } +f(x=>x, [x,y] = [1,2]); |