js/src/jit-test/tests/for-of/syntax-1.js

Thu, 22 Jan 2015 13:21:57 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 22 Jan 2015 13:21:57 +0100
branch
TOR_BUG_9701
changeset 15
b8a032363ba2
permissions
-rw-r--r--

Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6

     1 // We correctly reject bogus for-of loop syntax.
     3 load(libdir + "asserts.js");
     5 function assertSyntaxError(code) {
     6     assertThrowsInstanceOf(function () { Function(code); }, SyntaxError, "Function:" + code);
     7     assertThrowsInstanceOf(function () { eval(code); }, SyntaxError, "eval:" + code);
     8     var ieval = eval;
     9     assertThrowsInstanceOf(function () { ieval(code); }, SyntaxError, "indirect eval:" + code);
    10 }
    12 function test(badForHead) {
    13     assertSyntaxError(badForHead + " {}");  // apply directly to forHead
    14     assertSyntaxError("[0 " + badForHead + "];");
    15 }
    17 var a, b, c;
    18 test("for (a in b of c)");
    19 test("for each (a of b)");
    20 test("for (a of b of c)");
    21 test("for (let (a = 1) a of b)");
    22 test("for (let {a: 1} of b)");

mercurial