blob: 7b9879f06196ebf1eaf9fb9fa469a3e5c37e8628 [file] [log] [blame]
keith_miller@apple.combcc77f22016-07-15 06:03:25 +00001// This file was procedurally generated from the following sources:
2// - src/dstr-binding/ary-ptrn-rest-init-obj.case
3// - src/dstr-binding/default/func-expr-dflt.template
4/*---
5description: Reset element (nested object pattern) does not support initializer (function expression (default parameter))
6esid: sec-function-definitions-runtime-semantics-evaluation
7es6id: 14.1.20
8features: [destructuring-binding, default-parameters]
9flags: [generated]
10negative: SyntaxError
11info: |
12 FunctionExpression : function ( FormalParameters ) { FunctionBody }
13
14 [...]
15 3. Let closure be FunctionCreate(Normal, FormalParameters, FunctionBody,
16 scope, strict).
17 [...]
18
19 9.2.1 [[Call]] ( thisArgument, argumentsList)
20
21 [...]
22 7. Let result be OrdinaryCallEvaluateBody(F, argumentsList).
23 [...]
24
25 9.2.1.3 OrdinaryCallEvaluateBody ( F, argumentsList )
26
27 1. Let status be FunctionDeclarationInstantiation(F, argumentsList).
28 [...]
29
30 9.2.12 FunctionDeclarationInstantiation(func, argumentsList)
31
32 [...]
33 23. Let iteratorRecord be Record {[[iterator]]:
34 CreateListIterator(argumentsList), [[done]]: false}.
35 24. If hasDuplicates is true, then
36 [...]
37 25. Else,
38 b. Let formalStatus be IteratorBindingInitialization for formals with
39 iteratorRecord and env as arguments.
40 [...]
41
42 13.3.3 Destructuring Binding Patterns
43 ArrayBindingPattern[Yield] :
44 [ Elisionopt BindingRestElement[?Yield]opt ]
45 [ BindingElementList[?Yield] ]
46 [ BindingElementList[?Yield] , Elisionopt BindingRestElement[?Yield]opt ]
47---*/
48
49var callCount = 0;
50var f;
51f = function([...{ x } = []] = []) {
52
53 callCount = callCount + 1;
54};
55
56f();
57assert.sameValue(callCount, 1, 'function invoked exactly once');