eval-block-array-literal.js (1093B)
1 // This file was procedurally generated from the following sources: 2 // - src/statementList/array-literal.case 3 // - src/statementList/default/eval-block.template 4 /*--- 5 description: Array Literal (Eval production of StatementList starting with a BlockStatement) 6 esid: prod-StatementList 7 flags: [generated] 8 info: | 9 StatementList: 10 StatementListItem 11 StatementList StatementListItem 12 13 StatementListItem: 14 Statement 15 Declaration 16 17 Statement: 18 BlockStatement 19 20 BlockStatement: 21 Block 22 23 Block: 24 { StatementList_opt } 25 26 Statement: 27 BlockStatement 28 VariableStatement 29 EmptyStatement 30 ExpressionStatement 31 ... 32 33 ExpressionStatement: 34 [lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }] 35 Expression ; 36 37 ArrayLiteral[Yield, Await]: 38 [ Elision_opt ] 39 [ ElementList ] 40 [ ElementList , Elision_opt ] 41 ---*/ 42 43 44 var result = eval('{}[];'); 45 46 assert.sameValue(Object.getPrototypeOf(result), Array.prototype); 47 assert.sameValue(result.length, 0); 48 49 reportCompare(0, 0);