summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/arguments/defaults-with-rest.js
blob: b0c7c8bcf96e7d56d9ab1b207b224483401c3547 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
load(libdir + "eqArrayHelper.js");
load(libdir + "asserts.js");

function f1(a, bIs, b=3, ...rest) {
    assertEq(a, 1);
    assertEq(bIs, b);
    assertEqArray(rest, []);
}
assertEq(f1.length, 2);
f1(1, 3);
f1(1, 42, 42);
function f2(a=rest, ...rest) {
}
// TDZ
assertThrowsInstanceOf(f2, ReferenceError);
function f3(a=rest, ...rest) {
}
assertThrowsInstanceOf(f3, ReferenceError);
function f4(a=42, ...f)  {
    assertEq(typeof f, "function");
    function f() {}
}
f4()