Invalid flags in a RegExp literal should be an early SyntaxError
[WebKit-https.git] / JSTests / stress / catch-variables-under-tdz.js
1 function test(s) {
2     for (let i = 0; i < 100; i++) {
3         let threw = false;
4         try {
5             let evalString = `try { throw new Error } catch(${s}) { }`;
6             eval(evalString);
7         } catch(e) {
8             threw = e instanceof ReferenceError;
9         }
10         if (!threw)
11             throw new Error("Bad test!");
12     }
13 }
14
15 test("{a = a}");
16 test("{a = eval('a')}");
17 test("{a = eval('a + a')}");
18 test("{a = eval('b'), b}");
19 test("{a = eval('b + b'), b}");
20 test("{a = eval('b + b'), b = 20}");
21 test("{a = b+b, b = 20}");