mirror of https://github.com/lukechilds/node.git
Browse Source
Original commit message: Don't skip hole checks inside patterns in parameter lists Previously, b6e9f625c17f3a688139426771e2cb34fbdcb46e fixed self-assignment in parameters to throw. But it failed to deal with the case of destructuring with defaults. This patch extends that previous approach to always treat the end of a parameter as its initializer position, whether it has an initializer or not. This is the minimal change to make it easy to merge; a follow-up will rename the field of Parameter from "initializer_end_position" to "end_position". BUG=v8:5454 Review-Url: https://codereview/chromium.org/2390943002 Cr-Commit-Position: refs/heads/master@{#39962} PR-URL: https://github.com/nodejs/node/pull/9138 Reviewed-By: targos - Michaël Zasso <mic.besace@gmail.com> Reviewed-By: bnoordhuis - Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: jasnell - James M Snell <jasnell@gmail.com>v6.x
Cristian Cavalli
8 years ago
committed by
Ali Ijaz Sheikh
3 changed files with 13 additions and 6 deletions
@ -0,0 +1,11 @@ |
|||
// 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.
|
|||
|
|||
assertThrows(function(...[b = !b]) { }, ReferenceError); |
|||
assertThrows(() => (function([b = !b]) { })([]), ReferenceError); |
|||
assertThrows(() => (function({b = !b}) { })({}), ReferenceError); |
|||
|
|||
assertThrows((...[b = !b]) => { }, ReferenceError); |
|||
assertThrows(() => (([b = !b]) => { })([]), ReferenceError); |
|||
assertThrows(() => (({b = !b}) => { })({}), ReferenceError); |
Loading…
Reference in new issue