function foo(b, y, d) { | |
// Note that when we fixed this, this simpler thing would also crash: | |
// var [x] = [...y]; | |
var [a, x, c] = [b, ...y, d]; | |
return [a, x, c]; | |
} | |
function test(args, expected) { | |
var actual = foo.apply(this, args); | |
if ("" + actual != "" + expected) | |
throw "Error: bad result: " + actual; | |
} | |
test([1, [], 2], [1, 2, void 0]); | |
test([1, [2], 3], [1, 2, 3]); | |
test([1, [2, 3], 4], [1, 2, 3]); | |