diff options
Diffstat (limited to 'js/src/jit-test/tests/arguments/defaults-invalid-syntax.js')
-rw-r--r-- | js/src/jit-test/tests/arguments/defaults-invalid-syntax.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/arguments/defaults-invalid-syntax.js b/js/src/jit-test/tests/arguments/defaults-invalid-syntax.js new file mode 100644 index 0000000000..f1e1e508af --- /dev/null +++ b/js/src/jit-test/tests/arguments/defaults-invalid-syntax.js @@ -0,0 +1,30 @@ +load(libdir + "asserts.js"); + +assertThrowsInstanceOf(function () { + eval("function f(...rest=23) {}"); +}, SyntaxError); +assertThrowsInstanceOf(function () { + eval("function f(a=yield 24) {}"); +}, SyntaxError); +assertThrowsInstanceOf(function () { + eval("function f(a={a : 19 + (yield 24).prop}) {}"); +}, SyntaxError); +assertThrowsInstanceOf(function () { + eval("function f(a=1,a=1) {}"); +}, SyntaxError); +assertThrowsInstanceOf(function () { + eval("function f(a,a=1) {}"); +}, SyntaxError); +assertThrowsInstanceOf(function () { + eval("function f(a=1,a) {}"); +}, SyntaxError); +assertThrowsInstanceOf(function () { + eval("function f(a,a,b=1) {}"); +}, SyntaxError); +assertThrowsInstanceOf(function () { + eval("function f(a,b=1,a=1) {}"); +}, SyntaxError); +assertThrowsInstanceOf(function () { + eval("function f(a=1,b=1,a=1) {}"); +}, SyntaxError); +function silly_but_okay(a=(function* () { yield 97; })) {} |