Source code
Revision control
Copy as Markdown
Other Tools
load(libdir + "asserts.js");
var cases = [
"{",
"{ ;",
"var",
"var x,",
"var x =",
"let x,",
"let x =",
"const",
"const x =",
"const x = 1,",
"if",
"if (",
"if (0) ; else",
"do",
"do ;",
"do ; while",
"do ; while (",
"do ; while (1",
"while",
"while (",
"while (1",
"while (1)",
"for",
"for (",
"for (;",
"for (;;",
"for (;;)",
"for (var",
"for (x",
"for (x in",
"for (x in y",
"for (x in y)",
"for (x of",
"for (x of y",
"for (x of y)",
"switch",
"switch (",
"switch (x",
"switch (x)",
"with",
"with (",
"with (x",
"with (x)",
"a:",
"throw",
"try",
"try {",
"try {} catch",
"try {} catch (",
"try {} catch (exc",
"try {} catch (exc if",
"try {} catch (exc if 1",
"try {} finally",
"try {} finally {",
"function",
"function f",
"function f(",
"function f()",
"function f() {",
"(function",
"(function f",
"(function f(",
"(function f()",
];
for (var s of cases)
assertThrowsInstanceOf(() => Function(s), SyntaxError);