| OLD | NEW |
| 1 This test checks that the following expressions or statements are valid ECMASCRI
PT code or should throw parse error | 1 This test checks that the following expressions or statements are valid ECMASCRI
PT code or should throw parse error |
| 2 | 2 |
| 3 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
". | 3 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE
". |
| 4 | 4 |
| 5 | 5 |
| 6 Unary operators and member access | 6 Unary operators and member access |
| 7 PASS Valid: "" | 7 PASS Valid: "" |
| 8 PASS Valid: "function f() { }" | 8 PASS Valid: "function f() { }" |
| 9 PASS Invalid: "(a" | 9 PASS Invalid: "(a" |
| 10 PASS Invalid: "function f() { (a }" | 10 PASS Invalid: "function f() { (a }" |
| (...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 84 PASS Valid: "s: a[1].l ? b.l['s'] ? c++ : d : true" | 84 PASS Valid: "s: a[1].l ? b.l['s'] ? c++ : d : true" |
| 85 PASS Valid: "function f() { s: a[1].l ? b.l['s'] ? c++ : d : true }" | 85 PASS Valid: "function f() { s: a[1].l ? b.l['s'] ? c++ : d : true }" |
| 86 PASS Valid: "a ? b + 1 ? c + 3 * d.l : d[5][6] : e" | 86 PASS Valid: "a ? b + 1 ? c + 3 * d.l : d[5][6] : e" |
| 87 PASS Valid: "function f() { a ? b + 1 ? c + 3 * d.l : d[5][6] : e }" | 87 PASS Valid: "function f() { a ? b + 1 ? c + 3 * d.l : d[5][6] : e }" |
| 88 PASS Valid: "a in b instanceof delete -c" | 88 PASS Valid: "a in b instanceof delete -c" |
| 89 PASS Valid: "function f() { a in b instanceof delete -c }" | 89 PASS Valid: "function f() { a in b instanceof delete -c }" |
| 90 PASS Invalid: "a in instanceof b.l" | 90 PASS Invalid: "a in instanceof b.l" |
| 91 PASS Invalid: "function f() { a in instanceof b.l }" | 91 PASS Invalid: "function f() { a in instanceof b.l }" |
| 92 PASS Valid: "- - true % 5" | 92 PASS Valid: "- - true % 5" |
| 93 PASS Valid: "function f() { - - true % 5 }" | 93 PASS Valid: "function f() { - - true % 5 }" |
| 94 PASS Invalid: "- false = 3" | 94 FAIL Invalid: "- false = 3" should throw undefined |
| 95 PASS Invalid: "function f() { - false = 3 }" | 95 FAIL Invalid: "function f() { - false = 3 }" should throw undefined |
| 96 PASS Valid: "a: b: c: (1 + null) = 3" | 96 PASS Valid: "a: b: c: (1 + null) = 3" |
| 97 PASS Valid: "function f() { a: b: c: (1 + null) = 3 }" | 97 PASS Valid: "function f() { a: b: c: (1 + null) = 3 }" |
| 98 PASS Valid: "a[2] = b.l += c /= 4 * 7 ^ !6" | 98 PASS Valid: "a[2] = b.l += c /= 4 * 7 ^ !6" |
| 99 PASS Valid: "function f() { a[2] = b.l += c /= 4 * 7 ^ !6 }" | 99 PASS Valid: "function f() { a[2] = b.l += c /= 4 * 7 ^ !6 }" |
| 100 PASS Invalid: "a + typeof b += c in d" | 100 FAIL Invalid: "a + typeof b += c in d" should throw undefined |
| 101 PASS Invalid: "function f() { a + typeof b += c in d }" | 101 FAIL Invalid: "function f() { a + typeof b += c in d }" should throw undefined |
| 102 PASS Invalid: "typeof a &= typeof b" | 102 FAIL Invalid: "typeof a &= typeof b" should throw undefined |
| 103 PASS Invalid: "function f() { typeof a &= typeof b }" | 103 FAIL Invalid: "function f() { typeof a &= typeof b }" should throw undefined |
| 104 PASS Valid: "a: ((typeof (a))) >>>= a || b.l && c" | 104 PASS Valid: "a: ((typeof (a))) >>>= a || b.l && c" |
| 105 PASS Valid: "function f() { a: ((typeof (a))) >>>= a || b.l && c }" | 105 PASS Valid: "function f() { a: ((typeof (a))) >>>= a || b.l && c }" |
| 106 PASS Valid: "a: b: c[a /= f[a %= b]].l[c[x] = 7] -= a ? b <<= f : g" | 106 PASS Valid: "a: b: c[a /= f[a %= b]].l[c[x] = 7] -= a ? b <<= f : g" |
| 107 PASS Valid: "function f() { a: b: c[a /= f[a %= b]].l[c[x] = 7] -= a ? b <<= f
: g }" | 107 PASS Valid: "function f() { a: b: c[a /= f[a %= b]].l[c[x] = 7] -= a ? b <<= f
: g }" |
| 108 PASS Valid: "-void+x['y'].l == x.l != 5 - f[7]" | 108 PASS Valid: "-void+x['y'].l == x.l != 5 - f[7]" |
| 109 PASS Valid: "function f() { -void+x['y'].l == x.l != 5 - f[7] }" | 109 PASS Valid: "function f() { -void+x['y'].l == x.l != 5 - f[7] }" |
| 110 Function calls (and new with arguments) | 110 Function calls (and new with arguments) |
| 111 PASS Valid: "a()()()" | 111 PASS Valid: "a()()()" |
| 112 PASS Valid: "function f() { a()()() }" | 112 PASS Valid: "function f() { a()()() }" |
| 113 PASS Valid: "s: l: a[2](4 == 6, 5 = 6)(f[4], 6)" | 113 PASS Valid: "s: l: a[2](4 == 6, 5 = 6)(f[4], 6)" |
| (...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 382 PASS Valid: "for (var a, b ; ; ) { break } " | 382 PASS Valid: "for (var a, b ; ; ) { break } " |
| 383 PASS Valid: "function f() { for (var a, b ; ; ) { break } }" | 383 PASS Valid: "function f() { for (var a, b ; ; ) { break } }" |
| 384 PASS Valid: "for (var a = b, b = a ; ; ) break" | 384 PASS Valid: "for (var a = b, b = a ; ; ) break" |
| 385 PASS Valid: "function f() { for (var a = b, b = a ; ; ) break }" | 385 PASS Valid: "function f() { for (var a = b, b = a ; ; ) break }" |
| 386 PASS Valid: "for (var a = b, c, d, b = a ; x in b ; ) { break }" | 386 PASS Valid: "for (var a = b, c, d, b = a ; x in b ; ) { break }" |
| 387 PASS Valid: "function f() { for (var a = b, c, d, b = a ; x in b ; ) { break }
}" | 387 PASS Valid: "function f() { for (var a = b, c, d, b = a ; x in b ; ) { break }
}" |
| 388 PASS Valid: "for (var a = b, c, d ; ; 1 in a()) break" | 388 PASS Valid: "for (var a = b, c, d ; ; 1 in a()) break" |
| 389 PASS Valid: "function f() { for (var a = b, c, d ; ; 1 in a()) break }" | 389 PASS Valid: "function f() { for (var a = b, c, d ; ; 1 in a()) break }" |
| 390 PASS Invalid: "for ( ; var a ; ) break" | 390 PASS Invalid: "for ( ; var a ; ) break" |
| 391 PASS Invalid: "function f() { for ( ; var a ; ) break }" | 391 PASS Invalid: "function f() { for ( ; var a ; ) break }" |
| 392 PASS Invalid: "for (const a; ; ) break" | 392 FAIL Invalid: "for (const a; ; ) break" should throw undefined |
| 393 PASS Invalid: "function f() { for (const a; ; ) break }" | 393 FAIL Invalid: "function f() { for (const a; ; ) break }" should throw undefined |
| 394 PASS Invalid: "for ( %a ; ; ) { }" | 394 PASS Invalid: "for ( %a ; ; ) { }" |
| 395 PASS Invalid: "function f() { for ( %a ; ; ) { } }" | 395 PASS Invalid: "function f() { for ( %a ; ; ) { } }" |
| 396 PASS Valid: "for (a in b) break" | 396 PASS Valid: "for (a in b) break" |
| 397 PASS Valid: "function f() { for (a in b) break }" | 397 PASS Valid: "function f() { for (a in b) break }" |
| 398 PASS Valid: "for (a() in b) break" | 398 PASS Valid: "for (a() in b) break" |
| 399 PASS Valid: "function f() { for (a() in b) break }" | 399 PASS Valid: "function f() { for (a() in b) break }" |
| 400 PASS Valid: "for (a().l[4] in b) break" | 400 PASS Valid: "for (a().l[4] in b) break" |
| 401 PASS Valid: "function f() { for (a().l[4] in b) break }" | 401 PASS Valid: "function f() { for (a().l[4] in b) break }" |
| 402 PASS Valid: "for (new a in b in c in d) break" | 402 PASS Valid: "for (new a in b in c in d) break" |
| 403 PASS Valid: "function f() { for (new a in b in c in d) break }" | 403 PASS Valid: "function f() { for (new a in b in c in d) break }" |
| 404 PASS Valid: "for (new new new a in b) break" | 404 PASS Valid: "for (new new new a in b) break" |
| 405 PASS Valid: "function f() { for (new new new a in b) break }" | 405 PASS Valid: "function f() { for (new new new a in b) break }" |
| 406 PASS Invalid: "for (delete new a() in b) break" | 406 FAIL Invalid: "for (delete new a() in b) break" should throw undefined |
| 407 PASS Invalid: "function f() { for (delete new a() in b) break }" | 407 FAIL Invalid: "function f() { for (delete new a() in b) break }" should throw un
defined |
| 408 PASS Invalid: "for (a * a in b) break" | 408 FAIL Invalid: "for (a * a in b) break" should throw undefined |
| 409 PASS Invalid: "function f() { for (a * a in b) break }" | 409 FAIL Invalid: "function f() { for (a * a in b) break }" should throw undefined |
| 410 PASS Valid: "for ((a * a) in b) break" | 410 PASS Valid: "for ((a * a) in b) break" |
| 411 PASS Valid: "function f() { for ((a * a) in b) break }" | 411 PASS Valid: "function f() { for ((a * a) in b) break }" |
| 412 PASS Invalid: "for (a++ in b) break" | 412 FAIL Invalid: "for (a++ in b) break" should throw undefined |
| 413 PASS Invalid: "function f() { for (a++ in b) break }" | 413 FAIL Invalid: "function f() { for (a++ in b) break }" should throw undefined |
| 414 PASS Valid: "for ((a++) in b) break" | 414 PASS Valid: "for ((a++) in b) break" |
| 415 PASS Valid: "function f() { for ((a++) in b) break }" | 415 PASS Valid: "function f() { for ((a++) in b) break }" |
| 416 PASS Invalid: "for (++a in b) break" | 416 FAIL Invalid: "for (++a in b) break" should throw undefined |
| 417 PASS Invalid: "function f() { for (++a in b) break }" | 417 FAIL Invalid: "function f() { for (++a in b) break }" should throw undefined |
| 418 PASS Valid: "for ((++a) in b) break" | 418 PASS Valid: "for ((++a) in b) break" |
| 419 PASS Valid: "function f() { for ((++a) in b) break }" | 419 PASS Valid: "function f() { for ((++a) in b) break }" |
| 420 PASS Invalid: "for (a, b in c) break" | 420 FAIL Invalid: "for (a, b in c) break" should throw undefined |
| 421 PASS Invalid: "function f() { for (a, b in c) break }" | 421 FAIL Invalid: "function f() { for (a, b in c) break }" should throw undefined |
| 422 PASS Invalid: "for (a,b in c ;;) break" | 422 PASS Invalid: "for (a,b in c ;;) break" |
| 423 PASS Invalid: "function f() { for (a,b in c ;;) break }" | 423 PASS Invalid: "function f() { for (a,b in c ;;) break }" |
| 424 PASS Valid: "for (a,(b in c) ;;) break" | 424 PASS Valid: "for (a,(b in c) ;;) break" |
| 425 PASS Valid: "function f() { for (a,(b in c) ;;) break }" | 425 PASS Valid: "function f() { for (a,(b in c) ;;) break }" |
| 426 PASS Valid: "for ((a, b) in c) break" | 426 PASS Valid: "for ((a, b) in c) break" |
| 427 PASS Valid: "function f() { for ((a, b) in c) break }" | 427 PASS Valid: "function f() { for ((a, b) in c) break }" |
| 428 PASS Invalid: "for (a ? b : c in c) break" | 428 FAIL Invalid: "for (a ? b : c in c) break" should throw undefined |
| 429 PASS Invalid: "function f() { for (a ? b : c in c) break }" | 429 FAIL Invalid: "function f() { for (a ? b : c in c) break }" should throw undefin
ed |
| 430 PASS Valid: "for ((a ? b : c) in c) break" | 430 PASS Valid: "for ((a ? b : c) in c) break" |
| 431 PASS Valid: "function f() { for ((a ? b : c) in c) break }" | 431 PASS Valid: "function f() { for ((a ? b : c) in c) break }" |
| 432 PASS Valid: "for (var a in b in c) break" | 432 PASS Valid: "for (var a in b in c) break" |
| 433 PASS Valid: "function f() { for (var a in b in c) break }" | 433 PASS Valid: "function f() { for (var a in b in c) break }" |
| 434 PASS Valid: "for (var a = 5 += 6 in b) break" | 434 PASS Valid: "for (var a = 5 += 6 in b) break" |
| 435 PASS Valid: "function f() { for (var a = 5 += 6 in b) break }" | 435 PASS Valid: "function f() { for (var a = 5 += 6 in b) break }" |
| 436 PASS Invalid: "for (var a += 5 in b) break" | 436 PASS Invalid: "for (var a += 5 in b) break" |
| 437 PASS Invalid: "function f() { for (var a += 5 in b) break }" | 437 PASS Invalid: "function f() { for (var a += 5 in b) break }" |
| 438 PASS Invalid: "for (var a = in b) break" | 438 PASS Invalid: "for (var a = in b) break" |
| 439 PASS Invalid: "function f() { for (var a = in b) break }" | 439 PASS Invalid: "function f() { for (var a = in b) break }" |
| (...skipping 132 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 572 PASS Valid: "if (0) new a(b+c) = 5" | 572 PASS Valid: "if (0) new a(b+c) = 5" |
| 573 PASS Valid: "function f() { if (0) new a(b+c) = 5 }" | 573 PASS Valid: "function f() { if (0) new a(b+c) = 5 }" |
| 574 PASS Valid: "([1 || 1].a = 1)" | 574 PASS Valid: "([1 || 1].a = 1)" |
| 575 PASS Valid: "function f() { ([1 || 1].a = 1) }" | 575 PASS Valid: "function f() { ([1 || 1].a = 1) }" |
| 576 PASS Valid: "({a: 1 || 1}.a = 1)" | 576 PASS Valid: "({a: 1 || 1}.a = 1)" |
| 577 PASS Valid: "function f() { ({a: 1 || 1}.a = 1) }" | 577 PASS Valid: "function f() { ({a: 1 || 1}.a = 1) }" |
| 578 PASS Invalid: "var a.b = c" | 578 PASS Invalid: "var a.b = c" |
| 579 PASS Invalid: "function f() { var a.b = c }" | 579 PASS Invalid: "function f() { var a.b = c }" |
| 580 PASS Invalid: "var a.b;" | 580 PASS Invalid: "var a.b;" |
| 581 PASS Invalid: "function f() { var a.b; }" | 581 PASS Invalid: "function f() { var a.b; }" |
| 582 PASS e.line is 1 | 582 FAIL e.line should be 1 (of type number). Was undefined (of type undefined). |
| 583 PASS foo is 'PASS' | 583 PASS foo is 'PASS' |
| 584 PASS bar is 'PASS' | 584 PASS bar is 'PASS' |
| 585 PASS successfullyParsed is true | 585 PASS successfullyParsed is true |
| 586 | 586 |
| 587 TEST COMPLETE | 587 TEST COMPLETE |
| 588 | 588 |
| OLD | NEW |