f44efd6b31
Mark ArrayLiterals utilizing the spread operator as non-simple. This causes them to return false for IsCompileTimeValue, and thus causes spread to work as expected in nested literals. BUG=v8:4417 LOG=y Review URL: https://codereview.chromium.org/1336123002 Cr-Commit-Position: refs/heads/master@{#30754}
13 lines
447 B
JavaScript
13 lines
447 B
JavaScript
// Copyright 2015 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.
|
|
//
|
|
// Flags: --harmony-spread-arrays
|
|
|
|
var arr = [1, 2, 3];
|
|
assertEquals({arr: [1, 2, 3]}, {arr: [...arr]});
|
|
assertEquals([[1, 2, 3]], [[...arr]]);
|
|
|
|
assertEquals({arr: [6, 5, [1, 2, 3]]}, {arr: [6, 5, [...arr]]});
|
|
assertEquals([8, 7, [6, 5, [1, 2, 3]]], [8, 7, [6, 5, [...arr]]]);
|