Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(77)

Side by Side Diff: LayoutTests/fast/js/parser-syntax-check-expected.txt

Issue 20867002: Remove old tests that have been migrated to the v8 repo. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: remove unused script-tests as well Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 This test checks that the following expressions or statements are valid ECMASCRI PT code or should throw parse error
2
3 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE ".
4
5
6 Unary operators and member access
7 PASS Valid: ""
8 PASS Valid: "function f() { }"
9 PASS Invalid: "(a"
10 PASS Invalid: "function f() { (a }"
11 PASS Invalid: "a[5"
12 PASS Invalid: "function f() { a[5 }"
13 PASS Invalid: "a[5 + 6"
14 PASS Invalid: "function f() { a[5 + 6 }"
15 PASS Invalid: "a."
16 PASS Invalid: "function f() { a. }"
17 PASS Invalid: "()"
18 PASS Invalid: "function f() { () }"
19 PASS Invalid: "a.'l'"
20 PASS Invalid: "function f() { a.'l' }"
21 PASS Valid: "a: +~!new a"
22 PASS Valid: "function f() { a: +~!new a }"
23 PASS Invalid: "new -a"
24 PASS Invalid: "function f() { new -a }"
25 PASS Valid: "new (-1)"
26 PASS Valid: "function f() { new (-1) }"
27 PASS Valid: "a: b: c: new f(x++)++"
28 PASS Valid: "function f() { a: b: c: new f(x++)++ }"
29 PASS Valid: "(a)++"
30 PASS Valid: "function f() { (a)++ }"
31 PASS Valid: "(1--).x"
32 PASS Valid: "function f() { (1--).x }"
33 PASS Invalid: "a-- ++"
34 PASS Invalid: "function f() { a-- ++ }"
35 PASS Invalid: "(a:) --b"
36 PASS Invalid: "function f() { (a:) --b }"
37 PASS Valid: "++ -- ++ a"
38 PASS Valid: "function f() { ++ -- ++ a }"
39 PASS Valid: "++ new new a ++"
40 PASS Valid: "function f() { ++ new new a ++ }"
41 PASS Valid: "delete void 0"
42 PASS Valid: "function f() { delete void 0 }"
43 PASS Invalid: "delete the void"
44 PASS Invalid: "function f() { delete the void }"
45 PASS Invalid: "(a++"
46 PASS Invalid: "function f() { (a++ }"
47 PASS Valid: "++a--"
48 PASS Valid: "function f() { ++a-- }"
49 PASS Valid: "++((a))--"
50 PASS Valid: "function f() { ++((a))-- }"
51 PASS Valid: "(a.x++)++"
52 PASS Valid: "function f() { (a.x++)++ }"
53 PASS Invalid: "1: null"
54 PASS Invalid: "function f() { 1: null }"
55 PASS Invalid: "+-!~"
56 PASS Invalid: "function f() { +-!~ }"
57 PASS Invalid: "+-!~(("
58 PASS Invalid: "function f() { +-!~(( }"
59 PASS Invalid: "a)"
60 PASS Invalid: "function f() { a) }"
61 PASS Invalid: "a]"
62 PASS Invalid: "function f() { a] }"
63 PASS Invalid: ".l"
64 PASS Invalid: "function f() { .l }"
65 PASS Invalid: "1.l"
66 PASS Invalid: "function f() { 1.l }"
67 PASS Valid: "1 .l"
68 PASS Valid: "function f() { 1 .l }"
69 Binary and conditional operators
70 PASS Valid: "a + + typeof this"
71 PASS Valid: "function f() { a + + typeof this }"
72 PASS Invalid: "a + * b"
73 PASS Invalid: "function f() { a + * b }"
74 PASS Invalid: "a ? b"
75 PASS Invalid: "function f() { a ? b }"
76 PASS Invalid: "a ? b :"
77 PASS Invalid: "function f() { a ? b : }"
78 PASS Invalid: "%a"
79 PASS Invalid: "function f() { %a }"
80 PASS Invalid: "a-"
81 PASS Invalid: "function f() { a- }"
82 PASS Valid: "a = b ? b = c : d = e"
83 PASS Valid: "function f() { a = b ? b = c : d = e }"
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 }"
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 }"
88 PASS Valid: "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"
91 PASS Invalid: "function f() { a in instanceof b.l }"
92 PASS Valid: "- - true % 5"
93 PASS Valid: "function f() { - - true % 5 }"
94 FAIL Invalid: "- false = 3" should throw undefined
95 FAIL Invalid: "function f() { - false = 3 }" should throw undefined
96 PASS Valid: "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"
99 PASS Valid: "function f() { a[2] = b.l += c /= 4 * 7 ^ !6 }"
100 FAIL Invalid: "a + typeof b += c in d" should throw undefined
101 FAIL Invalid: "function f() { a + typeof b += c in d }" should throw undefined
102 FAIL Invalid: "typeof a &= typeof b" should throw undefined
103 FAIL Invalid: "function f() { typeof a &= typeof b }" should throw undefined
104 PASS Valid: "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"
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]"
109 PASS Valid: "function f() { -void+x['y'].l == x.l != 5 - f[7] }"
110 Function calls (and new with arguments)
111 PASS Valid: "a()()()"
112 PASS Valid: "function f() { a()()() }"
113 PASS Valid: "s: l: a[2](4 == 6, 5 = 6)(f[4], 6)"
114 PASS Valid: "function f() { s: l: a[2](4 == 6, 5 = 6)(f[4], 6) }"
115 PASS Valid: "s: eval(a.apply(), b.call(c[5] - f[7]))"
116 PASS Valid: "function f() { s: eval(a.apply(), b.call(c[5] - f[7])) }"
117 PASS Invalid: "a("
118 PASS Invalid: "function f() { a( }"
119 PASS Invalid: "a(5"
120 PASS Invalid: "function f() { a(5 }"
121 PASS Invalid: "a(5,"
122 PASS Invalid: "function f() { a(5, }"
123 PASS Invalid: "a(5,)"
124 PASS Invalid: "function f() { a(5,) }"
125 PASS Invalid: "a(5,6"
126 PASS Invalid: "function f() { a(5,6 }"
127 PASS Valid: "a(b[7], c <d> e.l, new a() > b)"
128 PASS Valid: "function f() { a(b[7], c <d> e.l, new a() > b) }"
129 PASS Invalid: "a(b[5)"
130 PASS Invalid: "function f() { a(b[5) }"
131 PASS Invalid: "a(b.)"
132 PASS Invalid: "function f() { a(b.) }"
133 PASS Valid: "~new new a(1)(i++)(c[l])"
134 PASS Valid: "function f() { ~new new a(1)(i++)(c[l]) }"
135 PASS Invalid: "a(*a)"
136 PASS Invalid: "function f() { a(*a) }"
137 PASS Valid: "((((a))((b)()).l))()"
138 PASS Valid: "function f() { ((((a))((b)()).l))() }"
139 PASS Valid: "(a)[b + (c) / (d())].l--"
140 PASS Valid: "function f() { (a)[b + (c) / (d())].l-- }"
141 PASS Valid: "new (5)"
142 PASS Valid: "function f() { new (5) }"
143 PASS Invalid: "new a(5"
144 PASS Invalid: "function f() { new a(5 }"
145 PASS Valid: "new (f + 5)(6, (g)() - 'l'() - true(false))"
146 PASS Valid: "function f() { new (f + 5)(6, (g)() - 'l'() - true(false)) }"
147 PASS Invalid: "a(.length)"
148 PASS Invalid: "function f() { a(.length) }"
149 function declaration and expression
150 PASS Valid: "function f() {}"
151 PASS Valid: "function f() { function f() {} }"
152 PASS Valid: "function f(a,b) {}"
153 PASS Valid: "function f() { function f(a,b) {} }"
154 PASS Invalid: "function () {}"
155 PASS Invalid: "function f() { function () {} }"
156 PASS Invalid: "function f(a b) {}"
157 PASS Invalid: "function f() { function f(a b) {} }"
158 PASS Invalid: "function f(a,) {}"
159 PASS Invalid: "function f() { function f(a,) {} }"
160 PASS Invalid: "function f(a,"
161 PASS Invalid: "function f() { function f(a, }"
162 PASS Invalid: "function f(a, 1) {}"
163 PASS Invalid: "function f() { function f(a, 1) {} }"
164 PASS Valid: "function g(arguments, eval) {}"
165 PASS Valid: "function f() { function g(arguments, eval) {} }"
166 PASS Valid: "function f() {} + function g() {}"
167 PASS Valid: "function f() { function f() {} + function g() {} }"
168 PASS Invalid: "(function a{})"
169 PASS Invalid: "function f() { (function a{}) }"
170 PASS Invalid: "(function this(){})"
171 PASS Invalid: "function f() { (function this(){}) }"
172 PASS Valid: "(delete new function f(){} + function(a,b){}(5)(6))"
173 PASS Valid: "function f() { (delete new function f(){} + function(a,b){}(5)(6) ) }"
174 PASS Valid: "6 - function (m) { function g() {} }"
175 PASS Valid: "function f() { 6 - function (m) { function g() {} } }"
176 PASS Invalid: "function l() {"
177 PASS Invalid: "function f() { function l() { }"
178 PASS Invalid: "function l++(){}"
179 PASS Invalid: "function f() { function l++(){} }"
180 Array and object literal, comma operator
181 PASS Valid: "[] in [5,6] * [,5,] / [,,5,,] || [a,] && new [,b] % [,,]"
182 PASS Valid: "function f() { [] in [5,6] * [,5,] / [,,5,,] || [a,] && new [,b] % [,,] }"
183 PASS Invalid: "[5,"
184 PASS Invalid: "function f() { [5, }"
185 PASS Invalid: "[,"
186 PASS Invalid: "function f() { [, }"
187 PASS Invalid: "(a,)"
188 PASS Invalid: "function f() { (a,) }"
189 PASS Valid: "1 + {get get(){}, set set(a){}, get1:4, set1:get-set, }"
190 PASS Valid: "function f() { 1 + {get get(){}, set set(a){}, get1:4, set1:get-s et, } }"
191 PASS Invalid: "1 + {a"
192 PASS Invalid: "function f() { 1 + {a }"
193 PASS Invalid: "1 + {a:"
194 PASS Invalid: "function f() { 1 + {a: }"
195 PASS Invalid: "1 + {get l("
196 PASS Invalid: "function f() { 1 + {get l( }"
197 PASS Invalid: ",a"
198 PASS Invalid: "function f() { ,a }"
199 PASS Valid: "(4,(5,a(3,4))),f[4,a-6]"
200 PASS Valid: "function f() { (4,(5,a(3,4))),f[4,a-6] }"
201 PASS Invalid: "(,f)"
202 PASS Invalid: "function f() { (,f) }"
203 PASS Invalid: "a,,b"
204 PASS Invalid: "function f() { a,,b }"
205 PASS Invalid: "a ? b, c : d"
206 PASS Invalid: "function f() { a ? b, c : d }"
207 simple statements
208 PASS Valid: "{ }"
209 PASS Valid: "function f() { { } }"
210 PASS Invalid: "{ { }"
211 PASS Invalid: "function f() { { { } }"
212 PASS Valid: "{ ; ; ; }"
213 PASS Valid: "function f() { { ; ; ; } }"
214 PASS Valid: "a: { ; }"
215 PASS Valid: "function f() { a: { ; } }"
216 PASS Invalid: "{ a: }"
217 PASS Invalid: "function f() { { a: } }"
218 PASS Valid: "{} f; { 6 + f() }"
219 PASS Valid: "function f() { {} f; { 6 + f() } }"
220 PASS Valid: "{ a[5],6; {} ++b-new (-5)() } c().l++"
221 PASS Valid: "function f() { { a[5],6; {} ++b-new (-5)() } c().l++ }"
222 PASS Valid: "{ l1: l2: l3: { this } a = 32 ; { i++ ; { { { } } ++i } } }"
223 PASS Valid: "function f() { { l1: l2: l3: { this } a = 32 ; { i++ ; { { { } } ++i } } } }"
224 PASS Valid: "if (a) ;"
225 PASS Valid: "function f() { if (a) ; }"
226 PASS Invalid: "{ if (a) }"
227 PASS Invalid: "function f() { { if (a) } }"
228 PASS Invalid: "if a {}"
229 PASS Invalid: "function f() { if a {} }"
230 PASS Invalid: "if (a"
231 PASS Invalid: "function f() { if (a }"
232 PASS Invalid: "if (a { }"
233 PASS Invalid: "function f() { if (a { } }"
234 PASS Valid: "x: s: if (a) ; else b"
235 PASS Valid: "function f() { x: s: if (a) ; else b }"
236 PASS Invalid: "else {}"
237 PASS Invalid: "function f() { else {} }"
238 PASS Valid: "if (a) if (b) y; else {} else ;"
239 PASS Valid: "function f() { if (a) if (b) y; else {} else ; }"
240 PASS Invalid: "if (a) {} else x; else"
241 PASS Invalid: "function f() { if (a) {} else x; else }"
242 PASS Invalid: "if (a) { else }"
243 PASS Invalid: "function f() { if (a) { else } }"
244 PASS Valid: "if (a.l + new b()) 4 + 5 - f()"
245 PASS Valid: "function f() { if (a.l + new b()) 4 + 5 - f() }"
246 PASS Valid: "if (a) with (x) ; else with (y) ;"
247 PASS Valid: "function f() { if (a) with (x) ; else with (y) ; }"
248 PASS Invalid: "with a.b { }"
249 PASS Invalid: "function f() { with a.b { } }"
250 PASS Valid: "while (a() - new b) ;"
251 PASS Valid: "function f() { while (a() - new b) ; }"
252 PASS Invalid: "while a {}"
253 PASS Invalid: "function f() { while a {} }"
254 PASS Valid: "do ; while(0) i++"
255 PASS Valid: "function f() { do ; while(0) i++ }"
256 PASS Valid: "do if (a) x; else y; while(z)"
257 PASS Valid: "function f() { do if (a) x; else y; while(z) }"
258 PASS Invalid: "do g; while 4"
259 PASS Invalid: "function f() { do g; while 4 }"
260 PASS Invalid: "do g; while ((4)"
261 PASS Invalid: "function f() { do g; while ((4) }"
262 PASS Valid: "{ { do do do ; while(0) while(0) while(0) } }"
263 PASS Valid: "function f() { { { do do do ; while(0) while(0) while(0) } } }"
264 PASS Valid: "do while (0) if (a) {} else y; while(0)"
265 PASS Valid: "function f() { do while (0) if (a) {} else y; while(0) }"
266 PASS Valid: "if (a) while (b) if (c) with(d) {} else e; else f"
267 PASS Valid: "function f() { if (a) while (b) if (c) with(d) {} else e; else f }"
268 PASS Invalid: "break ; break your_limits ; continue ; continue living ; debugger "
269 PASS Invalid: "function f() { break ; break your_limits ; continue ; continue li ving ; debugger }"
270 PASS Invalid: "debugger X"
271 PASS Invalid: "function f() { debugger X }"
272 PASS Invalid: "break 0.2"
273 PASS Invalid: "function f() { break 0.2 }"
274 PASS Invalid: "continue a++"
275 PASS Invalid: "function f() { continue a++ }"
276 PASS Invalid: "continue (my_friend)"
277 PASS Invalid: "function f() { continue (my_friend) }"
278 PASS Valid: "while (1) break"
279 PASS Valid: "function f() { while (1) break }"
280 PASS Valid: "do if (a) with (b) continue; else debugger; while (false)"
281 PASS Valid: "function f() { do if (a) with (b) continue; else debugger; while (false) }"
282 PASS Invalid: "do if (a) while (false) else debugger"
283 PASS Invalid: "function f() { do if (a) while (false) else debugger }"
284 PASS Invalid: "while if (a) ;"
285 PASS Invalid: "function f() { while if (a) ; }"
286 PASS Valid: "if (a) function f() {} else function g() {}"
287 PASS Valid: "function f() { if (a) function f() {} else function g() {} }"
288 PASS Valid: "if (a()) while(0) function f() {} else function g() {}"
289 PASS Valid: "function f() { if (a()) while(0) function f() {} else function g( ) {} }"
290 PASS Invalid: "if (a()) function f() { else function g() }"
291 PASS Invalid: "function f() { if (a()) function f() { else function g() } }"
292 PASS Invalid: "if (a) if (b) ; else function f {}"
293 PASS Invalid: "function f() { if (a) if (b) ; else function f {} }"
294 PASS Invalid: "if (a) if (b) ; else function (){}"
295 PASS Invalid: "function f() { if (a) if (b) ; else function (){} }"
296 PASS Valid: "throw a"
297 PASS Valid: "function f() { throw a }"
298 PASS Valid: "throw a + b in void c"
299 PASS Valid: "function f() { throw a + b in void c }"
300 PASS Invalid: "throw"
301 PASS Invalid: "function f() { throw }"
302 var and const statements
303 PASS Valid: "var a, b = null"
304 PASS Valid: "function f() { var a, b = null }"
305 PASS Valid: "const a = 5, b, c"
306 PASS Valid: "function f() { const a = 5, b, c }"
307 PASS Invalid: "var"
308 PASS Invalid: "function f() { var }"
309 PASS Invalid: "var = 7"
310 PASS Invalid: "function f() { var = 7 }"
311 PASS Invalid: "var c (6)"
312 PASS Invalid: "function f() { var c (6) }"
313 PASS Valid: "if (a) var a,b; else const b, c"
314 PASS Valid: "function f() { if (a) var a,b; else const b, c }"
315 PASS Invalid: "var 5 = 6"
316 PASS Invalid: "function f() { var 5 = 6 }"
317 PASS Valid: "while (0) var a, b, c=6, d, e, f=5*6, g=f*h, h"
318 PASS Valid: "function f() { while (0) var a, b, c=6, d, e, f=5*6, g=f*h, h }"
319 PASS Invalid: "var a = if (b) { c }"
320 PASS Invalid: "function f() { var a = if (b) { c } }"
321 PASS Invalid: "var a = var b"
322 PASS Invalid: "function f() { var a = var b }"
323 PASS Valid: "const a = b += c, a, a, a = (b - f())"
324 PASS Valid: "function f() { const a = b += c, a, a, a = (b - f()) }"
325 PASS Invalid: "var a %= b | 5"
326 PASS Invalid: "function f() { var a %= b | 5 }"
327 PASS Invalid: "var (a) = 5"
328 PASS Invalid: "function f() { var (a) = 5 }"
329 PASS Invalid: "var a = (4, b = 6"
330 PASS Invalid: "function f() { var a = (4, b = 6 }"
331 PASS Invalid: "const 'l' = 3"
332 PASS Invalid: "function f() { const 'l' = 3 }"
333 PASS Invalid: "var var = 3"
334 PASS Invalid: "function f() { var var = 3 }"
335 PASS Valid: "var varr = 3 in 1"
336 PASS Valid: "function f() { var varr = 3 in 1 }"
337 PASS Valid: "const a, a, a = void 7 - typeof 8, a = 8"
338 PASS Valid: "function f() { const a, a, a = void 7 - typeof 8, a = 8 }"
339 PASS Valid: "const x_x = 6 /= 7 ? e : f"
340 PASS Valid: "function f() { const x_x = 6 /= 7 ? e : f }"
341 PASS Invalid: "var a = ?"
342 PASS Invalid: "function f() { var a = ? }"
343 PASS Invalid: "const a = *7"
344 PASS Invalid: "function f() { const a = *7 }"
345 PASS Invalid: "var a = :)"
346 PASS Invalid: "function f() { var a = :) }"
347 PASS Valid: "var a = a in b in c instanceof d"
348 PASS Valid: "function f() { var a = a in b in c instanceof d }"
349 PASS Invalid: "var a = b ? c, b"
350 PASS Invalid: "function f() { var a = b ? c, b }"
351 PASS Invalid: "const a = b : c"
352 PASS Invalid: "function f() { const a = b : c }"
353 for statement
354 PASS Valid: "for ( ; ; ) { break }"
355 PASS Valid: "function f() { for ( ; ; ) { break } }"
356 PASS Valid: "for ( a ; ; ) { break }"
357 PASS Valid: "function f() { for ( a ; ; ) { break } }"
358 PASS Valid: "for ( ; a ; ) { break }"
359 PASS Valid: "function f() { for ( ; a ; ) { break } }"
360 PASS Valid: "for ( ; ; a ) { break }"
361 PASS Valid: "function f() { for ( ; ; a ) { break } }"
362 PASS Valid: "for ( a ; a ; ) break"
363 PASS Valid: "function f() { for ( a ; a ; ) break }"
364 PASS Valid: "for ( a ; ; a ) break"
365 PASS Valid: "function f() { for ( a ; ; a ) break }"
366 PASS Valid: "for ( ; a ; a ) break"
367 PASS Valid: "function f() { for ( ; a ; a ) break }"
368 PASS Invalid: "for () { }"
369 PASS Invalid: "function f() { for () { } }"
370 PASS Invalid: "for ( a ) { }"
371 PASS Invalid: "function f() { for ( a ) { } }"
372 PASS Invalid: "for ( ; ) ;"
373 PASS Invalid: "function f() { for ( ; ) ; }"
374 PASS Invalid: "for a ; b ; c { }"
375 PASS Invalid: "function f() { for a ; b ; c { } }"
376 PASS Invalid: "for (a ; { }"
377 PASS Invalid: "function f() { for (a ; { } }"
378 PASS Invalid: "for ( a ; ) ;"
379 PASS Invalid: "function f() { for ( a ; ) ; }"
380 PASS Invalid: "for ( ; a ) break"
381 PASS Invalid: "function f() { for ( ; a ) break }"
382 PASS Valid: "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"
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 }"
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"
389 PASS Valid: "function f() { for (var a = b, c, d ; ; 1 in a()) break }"
390 PASS Invalid: "for ( ; var a ; ) break"
391 PASS Invalid: "function f() { for ( ; var a ; ) break }"
392 FAIL Invalid: "for (const a; ; ) break" should throw undefined
393 FAIL Invalid: "function f() { for (const a; ; ) break }" should throw undefined
394 PASS Invalid: "for ( %a ; ; ) { }"
395 PASS Invalid: "function f() { for ( %a ; ; ) { } }"
396 PASS Valid: "for (a in b) break"
397 PASS Valid: "function f() { for (a in b) break }"
398 PASS Valid: "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"
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"
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"
405 PASS Valid: "function f() { for (new new new a in b) break }"
406 FAIL Invalid: "for (delete new a() in b) break" should throw undefined
407 FAIL Invalid: "function f() { for (delete new a() in b) break }" should throw un defined
408 FAIL Invalid: "for (a * a in b) break" should throw undefined
409 FAIL Invalid: "function f() { for (a * a in b) break }" should throw undefined
410 PASS Valid: "for ((a * a) in b) break"
411 PASS Valid: "function f() { for ((a * a) in b) break }"
412 FAIL Invalid: "for (a++ in b) break" should throw undefined
413 FAIL Invalid: "function f() { for (a++ in b) break }" should throw undefined
414 PASS Valid: "for ((a++) in b) break"
415 PASS Valid: "function f() { for ((a++) in b) break }"
416 FAIL Invalid: "for (++a in b) break" should throw undefined
417 FAIL Invalid: "function f() { for (++a in b) break }" should throw undefined
418 PASS Valid: "for ((++a) in b) break"
419 PASS Valid: "function f() { for ((++a) in b) break }"
420 FAIL Invalid: "for (a, b in c) break" should throw undefined
421 FAIL Invalid: "function f() { for (a, b in c) break }" should throw undefined
422 PASS Invalid: "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"
425 PASS Valid: "function f() { 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 }"
428 FAIL Invalid: "for (a ? b : c in c) break" should throw undefined
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"
431 PASS Valid: "function f() { for ((a ? b : c) 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 }"
434 PASS Valid: "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"
437 PASS Invalid: "function f() { for (var a += 5 in b) break }"
438 PASS Invalid: "for (var a = in b) break"
439 PASS Invalid: "function f() { for (var a = in b) break }"
440 PASS Invalid: "for (var a, b in b) break"
441 PASS Invalid: "function f() { for (var a, b in b) break }"
442 PASS Invalid: "for (var a = -6, b in b) break"
443 PASS Invalid: "function f() { for (var a = -6, b in b) break }"
444 PASS Invalid: "for (var a, b = 8 in b) break"
445 PASS Invalid: "function f() { for (var a, b = 8 in b) break }"
446 PASS Valid: "for (var a = (b in c) in d) break"
447 PASS Valid: "function f() { for (var a = (b in c) in d) break }"
448 PASS Invalid: "for (var a = (b in c in d) break"
449 PASS Invalid: "function f() { for (var a = (b in c in d) break }"
450 PASS Invalid: "for (var (a) in b) { }"
451 PASS Invalid: "function f() { for (var (a) in b) { } }"
452 PASS Valid: "for (var a = 7, b = c < d >= d ; f()[6]++ ; --i()[1]++ ) {}"
453 PASS Valid: "function f() { for (var a = 7, b = c < d >= d ; f()[6]++ ; --i()[ 1]++ ) {} }"
454 try statement
455 PASS Invalid: "try { break } catch(e) {}"
456 PASS Invalid: "function f() { try { break } catch(e) {} }"
457 PASS Valid: "try {} finally { c++ }"
458 PASS Valid: "function f() { try {} finally { c++ } }"
459 PASS Valid: "try { with (x) { } } catch(e) {} finally { if (a) ; }"
460 PASS Valid: "function f() { try { with (x) { } } catch(e) {} finally { if (a) ; } }"
461 PASS Invalid: "try {}"
462 PASS Invalid: "function f() { try {} }"
463 PASS Invalid: "catch(e) {}"
464 PASS Invalid: "function f() { catch(e) {} }"
465 PASS Invalid: "finally {}"
466 PASS Invalid: "function f() { finally {} }"
467 PASS Invalid: "try a; catch(e) {}"
468 PASS Invalid: "function f() { try a; catch(e) {} }"
469 PASS Invalid: "try {} catch(e) a()"
470 PASS Invalid: "function f() { try {} catch(e) a() }"
471 PASS Invalid: "try {} finally a()"
472 PASS Invalid: "function f() { try {} finally a() }"
473 PASS Invalid: "try {} catch(e)"
474 PASS Invalid: "function f() { try {} catch(e) }"
475 PASS Invalid: "try {} finally"
476 PASS Invalid: "function f() { try {} finally }"
477 PASS Invalid: "try {} finally {} catch(e) {}"
478 PASS Invalid: "function f() { try {} finally {} catch(e) {} }"
479 PASS Invalid: "try {} catch (...) {}"
480 PASS Invalid: "function f() { try {} catch (...) {} }"
481 PASS Invalid: "try {} catch {}"
482 PASS Invalid: "function f() { try {} catch {} }"
483 PASS Valid: "if (a) try {} finally {} else b;"
484 PASS Valid: "function f() { if (a) try {} finally {} else b; }"
485 PASS Valid: "if (--a()) do with(1) try {} catch(ke) { f() ; g() } while (a in b) else {}"
486 PASS Valid: "function f() { if (--a()) do with(1) try {} catch(ke) { f() ; g() } while (a in b) else {} }"
487 PASS Invalid: "if (a) try {} else b; catch (e) { }"
488 PASS Invalid: "function f() { if (a) try {} else b; catch (e) { } }"
489 PASS Invalid: "try { finally {}"
490 PASS Invalid: "function f() { try { finally {} }"
491 switch statement
492 PASS Valid: "switch (a) {}"
493 PASS Valid: "function f() { switch (a) {} }"
494 PASS Invalid: "switch () {}"
495 PASS Invalid: "function f() { switch () {} }"
496 PASS Invalid: "case 5:"
497 PASS Invalid: "function f() { case 5: }"
498 PASS Invalid: "default:"
499 PASS Invalid: "function f() { default: }"
500 PASS Invalid: "switch (a) b;"
501 PASS Invalid: "function f() { switch (a) b; }"
502 PASS Invalid: "switch (a) case 3: b;"
503 PASS Invalid: "function f() { switch (a) case 3: b; }"
504 PASS Valid: "switch (f()) { case 5 * f(): default: case '6' - 9: ++i }"
505 PASS Valid: "function f() { switch (f()) { case 5 * f(): default: case '6' - 9 : ++i } }"
506 PASS Invalid: "switch (true) { default: case 6: default: }"
507 PASS Invalid: "function f() { switch (true) { default: case 6: default: } }"
508 PASS Invalid: "switch (l) { f(); }"
509 PASS Invalid: "function f() { switch (l) { f(); } }"
510 PASS Invalid: "switch (l) { case 1: ; a: case 5: }"
511 PASS Invalid: "function f() { switch (l) { case 1: ; a: case 5: } }"
512 PASS Valid: "switch (g() - h[5].l) { case 1 + 6: a: b: c: ++f }"
513 PASS Valid: "function f() { switch (g() - h[5].l) { case 1 + 6: a: b: c: ++f } }"
514 PASS Invalid: "switch (g) { case 1: a: }"
515 PASS Invalid: "function f() { switch (g) { case 1: a: } }"
516 PASS Invalid: "switch (g) { case 1: a: default: }"
517 PASS Invalid: "function f() { switch (g) { case 1: a: default: } }"
518 PASS Invalid: "switch g { case 1: l() }"
519 PASS Invalid: "function f() { switch g { case 1: l() } }"
520 PASS Invalid: "switch (g) { case 1:"
521 PASS Invalid: "function f() { switch (g) { case 1: }"
522 PASS Valid: "switch (l) { case a = b ? c : d : }"
523 PASS Valid: "function f() { switch (l) { case a = b ? c : d : } }"
524 PASS Valid: "switch (sw) { case a ? b - 7[1] ? [c,,] : d = 6 : { } : }"
525 PASS Valid: "function f() { switch (sw) { case a ? b - 7[1] ? [c,,] : d = 6 : { } : } }"
526 PASS Invalid: "switch (l) { case b ? c : }"
527 PASS Invalid: "function f() { switch (l) { case b ? c : } }"
528 PASS Valid: "switch (l) { case 1: a: with(g) switch (g) { case 2: default: } d efault: }"
529 PASS Valid: "function f() { switch (l) { case 1: a: with(g) switch (g) { case 2: default: } default: } }"
530 PASS Invalid: "switch (4 - ) { }"
531 PASS Invalid: "function f() { switch (4 - ) { } }"
532 PASS Invalid: "switch (l) { default case: 5; }"
533 PASS Invalid: "function f() { switch (l) { default case: 5; } }"
534 PASS Invalid: "L: L: ;"
535 PASS Invalid: "function f() { L: L: ; }"
536 PASS Invalid: "L: L1: L: ;"
537 PASS Invalid: "function f() { L: L1: L: ; }"
538 PASS Invalid: "L: L1: L2: L3: L4: L: ;"
539 PASS Invalid: "function f() { L: L1: L2: L3: L4: L: ; }"
540 PASS Invalid: "for(var a,b 'this shouldn't be allowed' false ; ) ;"
541 PASS Invalid: "function f() { for(var a,b 'this shouldn't be allowed' false ; ) ; }"
542 PASS Invalid: "for(var a,b '"
543 PASS Invalid: "function f() { for(var a,b ' }"
544 PASS Valid: "function __proto__(){}"
545 PASS Valid: "function f() { function __proto__(){} }"
546 PASS Valid: "(function __proto__(){})"
547 PASS Valid: "function f() { (function __proto__(){}) }"
548 PASS Valid: "'use strict'; function __proto__(){}"
549 PASS Valid: "function f() { 'use strict'; function __proto__(){} }"
550 PASS Valid: "'use strict'; (function __proto__(){})"
551 PASS Valid: "function f() { 'use strict'; (function __proto__(){}) }"
552 PASS Valid: "if (0) $foo; "
553 PASS Valid: "function f() { if (0) $foo; }"
554 PASS Valid: "if (0) _foo; "
555 PASS Valid: "function f() { if (0) _foo; }"
556 PASS Valid: "if (0) foo$; "
557 PASS Valid: "function f() { if (0) foo$; }"
558 PASS Valid: "if (0) foo_; "
559 PASS Valid: "function f() { if (0) foo_; }"
560 PASS Valid: "if (0) obj.$foo; "
561 PASS Valid: "function f() { if (0) obj.$foo; }"
562 PASS Valid: "if (0) obj._foo; "
563 PASS Valid: "function f() { if (0) obj._foo; }"
564 PASS Valid: "if (0) obj.foo$; "
565 PASS Valid: "function f() { if (0) obj.foo$; }"
566 PASS Valid: "if (0) obj.foo_; "
567 PASS Valid: "function f() { if (0) obj.foo_; }"
568 PASS Valid: "if (0) obj.foo\u03bb; "
569 PASS Valid: "function f() { if (0) obj.foo\u03bb; }"
570 PASS Valid: "if (0) new a(b+c).d = 5"
571 PASS Valid: "function f() { if (0) new a(b+c).d = 5 }"
572 PASS Valid: "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)"
575 PASS Valid: "function f() { ([1 || 1].a = 1) }"
576 PASS Valid: "({a: 1 || 1}.a = 1)"
577 PASS Valid: "function f() { ({a: 1 || 1}.a = 1) }"
578 PASS Invalid: "var a.b = c"
579 PASS Invalid: "function f() { var a.b = c }"
580 PASS Invalid: "var a.b;"
581 PASS Invalid: "function f() { var a.b; }"
582 FAIL e.line should be 1 (of type number). Was undefined (of type undefined).
583 PASS foo is 'PASS'
584 PASS bar is 'PASS'
585 PASS successfullyParsed is true
586
587 TEST COMPLETE
588
OLDNEW
« no previous file with comments | « LayoutTests/fast/js/parser-syntax-check.html ('k') | LayoutTests/fast/js/primitive-property-access-edge-cases.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698