try-await-expr-nested.js (2198B)
1 // |reftest| module 2 // This file was procedurally generated from the following sources: 3 // - src/top-level-await/await-expr-nested.case 4 // - src/top-level-await/syntax/try.template 5 /*--- 6 description: Nested AwaitExpressions (Valid syntax for top level await in try-catch-finally blocks.) 7 esid: prod-AwaitExpression 8 features: [top-level-await] 9 flags: [generated, module] 10 info: | 11 ModuleItem: 12 StatementListItem[~Yield, +Await, ~Return] 13 14 ... 15 16 TryStatement[Yield, Await, Return]: 17 try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] 18 try Block[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return] 19 try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return] 20 21 ... 22 23 UnaryExpression[Yield, Await] 24 [+Await]AwaitExpression[?Yield] 25 26 AwaitExpression[Yield]: 27 await UnaryExpression[?Yield, +Await] 28 29 ... 30 31 32 TryStatement[Yield, Await, Return]: 33 try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] 34 try Block[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return] 35 try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return] 36 37 ... 38 39 ExpressionStatement[Yield, Await]: 40 [lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }] 41 Expression[+In, ?Yield, ?Await]; 42 43 ---*/ 44 45 46 try { 47 await await await await await await await await await await await await await await await 'await'; 48 } catch(e) { 49 await await await await await await await await await await await await await await await 'await'; 50 } 51 52 try { 53 await await await await await await await await await await await await await await await 'await'; 54 } finally { 55 await await await await await await await await await await await await await await await 'await'; 56 } 57 58 try { 59 await await await await await await await await await await await await await await await 'await'; 60 } catch(e) { 61 await await await await await await await await await await await await await await await 'await'; 62 } finally { 63 await await await await await await await await await await await await await await await 'await'; 64 } 65 66 reportCompare(0, 0);