test262/test/language/arguments-object/gen-func-decl-args-trailing...

46 lines
1.3 KiB
JavaScript
Raw Normal View History

2017-03-14 21:30:12 +01:00
// This file was procedurally generated from the following sources:
2017-04-20 18:31:29 +02:00
// - src/arguments/args-trailing-comma-multiple.case
2017-03-14 21:30:12 +01:00
// - src/arguments/default/gen-func-decl.template
/*---
description: A trailing comma should not increase the arguments.length, using multiple args (generator function declaration)
esid: sec-arguments-exotic-objects
features: [generators]
2017-03-14 21:30:12 +01:00
flags: [generated]
info: |
9.4.4 Arguments Exotic Objects
Most ECMAScript functions make an arguments object available to their code. Depending upon the
characteristics of the function definition, its arguments object is either an ordinary object
or an arguments exotic object.
2017-03-14 21:30:12 +01:00
Trailing comma in the arguments list
2018-09-04 23:09:41 +02:00
Left-Hand-Side Expressions
Arguments :
( )
( ArgumentList )
( ArgumentList , )
ArgumentList :
AssignmentExpression
... AssignmentExpression
ArgumentList , AssignmentExpression
ArgumentList , ... AssignmentExpression
2017-03-14 21:30:12 +01:00
---*/
var callCount = 0;
// Stores a reference `ref` for case evaluation
function* ref() {
assert.sameValue(arguments.length, 2);
assert.sameValue(arguments[0], 42);
assert.sameValue(arguments[1], 'TC39');
callCount = callCount + 1;
}
ref(42, 'TC39',).next();
assert.sameValue(callCount, 1, 'generator function invoked exactly once');