mirror of https://github.com/tc39/test262.git
46 lines
1.2 KiB
JavaScript
46 lines
1.2 KiB
JavaScript
|
// This file was procedurally generated from the following sources:
|
||
|
// - src/statementList/array-literal-with-item.case
|
||
|
// - src/statementList/default/eval-function-declaration.template
|
||
|
/*---
|
||
|
description: Array Literal with items (Eval production of StatementList starting with a Function Declaration)
|
||
|
esid: prod-StatementList
|
||
|
flags: [generated]
|
||
|
info: |
|
||
|
StatementList:
|
||
|
StatementListItem
|
||
|
StatementList StatementListItem
|
||
|
|
||
|
StatementListItem:
|
||
|
Statement
|
||
|
Declaration
|
||
|
|
||
|
Declaration:
|
||
|
HoistableDeclaration
|
||
|
|
||
|
FunctionDeclaration:
|
||
|
function BindingIdentifier ( FormalParameters ) { FunctionBody }
|
||
|
|
||
|
Statement:
|
||
|
BlockStatement
|
||
|
VariableStatement
|
||
|
EmptyStatement
|
||
|
ExpressionStatement
|
||
|
...
|
||
|
|
||
|
ExpressionStatement:
|
||
|
[lookahead ∉ { {, function, async [no LineTerminator here] function, class, let [ }]
|
||
|
Expression ;
|
||
|
|
||
|
ArrayLiteral[Yield, Await]:
|
||
|
[ Elision_opt ]
|
||
|
[ ElementList ]
|
||
|
[ ElementList , Elision_opt ]
|
||
|
---*/
|
||
|
|
||
|
|
||
|
var result = eval('function fn() {}[42];;');
|
||
|
|
||
|
assert.sameValue(Object.getPrototypeOf(result), Array.prototype);
|
||
|
assert.sameValue(result.length, 1);
|
||
|
assert.sameValue(result[0], 42);
|