js/src/jit-test/tests/for-of/throw.js

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/js/src/jit-test/tests/for-of/throw.js	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,20 @@
     1.4 +// Control can exit a for-of loop via throw.
     1.5 +
     1.6 +function f() {
     1.7 +    for (var a of [1, 2, 3]) {
     1.8 +        for (var b of [1, 2, 3]) {
     1.9 +            for (var c of [1, 2, 3]) {
    1.10 +                if (a !== b && b !== c && c !== a)
    1.11 +                    throw [a, b, c];
    1.12 +            }
    1.13 +        }
    1.14 +    }
    1.15 +}
    1.16 +
    1.17 +var x = null;
    1.18 +try {
    1.19 +    f();
    1.20 +} catch (exc) {
    1.21 +    x = exc.join("");
    1.22 +}
    1.23 +assertEq(x, "123");

mercurial