Browse Source

deps: backport 2cabc86 from upstream V8

Original commit message:

    Fix classifier related bug

    R=adamk@chromium.org
    BUG=chromium:621111
    LOG=N

    Review-Url: https://codereview.chromium.org/2086513002
    Cr-Commit-Position: refs/heads/master@{#37150}

Fixes: https://github.com/nodejs/node/issues/11977

PR-URL: https://github.com/nodejs/node/pull/12037
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
v6.x
Michaël Zasso 8 years ago
committed by Myles Borins
parent
commit
52bdb8f246
  1. 2
      deps/v8/include/v8-version.h
  2. 7
      deps/v8/src/parsing/parser-base.h
  3. 6
      deps/v8/test/mjsunit/harmony/regress/regress-crbug-621111.js

2
deps/v8/include/v8-version.h

@ -11,7 +11,7 @@
#define V8_MAJOR_VERSION 5
#define V8_MINOR_VERSION 1
#define V8_BUILD_NUMBER 281
#define V8_PATCH_LEVEL 95
#define V8_PATCH_LEVEL 96
// Use 1 for candidates and 0 otherwise.
// (Boolean macro values are not supported by all preprocessors.)

7
deps/v8/src/parsing/parser-base.h

@ -1400,11 +1400,14 @@ typename ParserBase<Traits>::ExpressionT ParserBase<Traits>::ParseExpression(
// AssignmentExpression
// Expression ',' AssignmentExpression
ExpressionT result = this->EmptyExpression();
{
ExpressionClassifier binding_classifier(this);
ExpressionT result =
this->ParseAssignmentExpression(accept_IN, &binding_classifier, CHECK_OK);
result = this->ParseAssignmentExpression(accept_IN, &binding_classifier,
CHECK_OK);
classifier->Accumulate(&binding_classifier,
ExpressionClassifier::AllProductions);
}
bool is_simple_parameter_list = this->IsIdentifier(result);
bool seen_rest = false;
while (peek() == Token::COMMA) {

6
deps/v8/test/mjsunit/harmony/regress/regress-crbug-621111.js

@ -0,0 +1,6 @@
// Copyright 2016 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.
(y = 1[1, [...[]]]) => 1; // will core dump, if not fixed
(y = 1[1, [...[]]]) => {}; // will core dump, if not fixed
Loading…
Cancel
Save