js/src/jit-test/tests/basic/throw-apply-too-many-args.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:0236a99802cd
1 function g(a, b, c, d) {}
2 function f(a, b, c)
3 {
4 arguments.length = getMaxArgs() + 1;
5 g.apply(this, arr);
6 }
7 var args = [[5], [5], [5], [5], [5], [5], [5], [5], [5], [5], [5], let (x = []) (x.length = getMaxArgs() + 1, x)]
8 try
9 {
10 for (var i = 0; i < args.length; i++) { arr = args[i]; f(); }
11 throw new Error("didn't throw");
12 }
13 catch (e)
14 {
15 assertEq(e instanceof RangeError, true, "wrong exception: " + e);
16 }
17 try
18 {
19 for (var i = 0; i < args.length; i++) { arr = args[i]; f(); }
20 throw new Error("didn't throw");
21 }
22 catch (e)
23 {
24 assertEq(e instanceof RangeError, true, "wrong exception: " + e);
25 }

mercurial