Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 // yield without an operand causes a warning. See bug 885463.
3 load(libdir + "asserts.js");
5 assertWarning(() => Function("yield"), SyntaxError,
6 "yield followed by EOF should cause a warning");
7 assertWarning(() => Function("yield;"), SyntaxError,
8 "yield followed by semicolon should cause a warning");
9 assertWarning(() => Function("yield\n print('ok');"), SyntaxError,
10 "yield followed by newline should cause a warning");
12 assertWarning(() => eval("(function () { yield; })"), SyntaxError,
13 "yield followed by semicolon in eval code should cause a warning");
14 assertWarning(() => eval("(function () { yield })"), SyntaxError,
15 "yield followed by } in eval code should cause a warning");
17 assertNoWarning(() => Function("yield 0;"),
18 "yield with an operand should be fine");
19 assertNoWarning(() => Function("yield 0"),
20 "yield with an operand should be fine, even without a semicolon");
22 print("\npassed - all those warnings are normal and there's no real way to suppress them");