diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-init-iter-close.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-init-iter-close.js index c9b56db4b6..7295a3e9da 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-init-iter-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-init-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-close.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-init-iter-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Iterator is closed when not exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: false }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-init-iter-get-err.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-init-iter-get-err.js index 7f74d1b272..fe4066561b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-init-iter-get-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-init-iter-get-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-get-err.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-init-iter-get-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Abrupt completion returned by GetIterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -39,8 +39,7 @@ info: | BindingPattern : ArrayBindingPattern - 1. Let iterator be GetIterator(value). - 2. ReturnIfAbrupt(iterator). + 1. Let iterator be ? GetIterator(value). ---*/ var iter = {}; @@ -55,6 +54,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-init-iter-no-close.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-init-iter-no-close.js index cc61e9a191..1d59880139 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-init-iter-no-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-init-iter-no-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-no-close.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-init-iter-no-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Iterator is not closed when exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: true }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-name-iter-val.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-name-iter-val.js index 5ecfc3def1..a7e2641ea9 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-name-iter-val.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-name-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-name-iter-val.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-name-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding with normal value iteration (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elem-init.js index ebb2390f9b..26d410f7a7 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elem-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elem-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-init.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elem-iter.js index 804b6f009f..3abc7c7f75 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elem-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elem-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-iter.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elision-init.js index 50c630be79..6ba7b80435 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elision-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elision-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-init.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elision-iter.js index 6e38728548..39763683bf 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elision-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-elision-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-iter.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-empty-init.js index 2ad358d4fd..a5f98b2dce 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-empty-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-empty-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-init.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-empty-iter.js index 9944b961b9..7bd670b4f0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-empty-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-empty-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-iter.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-rest-init.js index 54921b6a80..1ed5e5dce3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-rest-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-rest-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-init.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-rest-iter.js index 924fd122b0..a7d875e5b6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-rest-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-rest-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-iter.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-val-null.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-val-null.js index 219497ed10..d9ae1b657b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-val-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-ary-val-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-val-null.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-val-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Nested array destructuring with a null value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -51,8 +51,7 @@ info: | BindingPattern : ArrayBindingPattern - 1. Let iterator be GetIterator(value). - 2. ReturnIfAbrupt(iterator). + 1. Let iterator be ? GetIterator(value). ---*/ async function fn() { @@ -62,6 +61,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-exhausted.js index 3bce739aa7..bb30ac0513 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Destructuring initializer with an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,16 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. - 6. If Initializer is present and v is undefined, then + 4. If iteratorRecord.[[done]] is true, let v be undefined. + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-arrow.js index f738e43e5e..5b95e079d3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding does assign name to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-class.js index 6b4dc0b82f..600e12d80d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-cover.js index 84527569eb..b9d65faebc 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding does assign name to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-fn.js index 9d41ba05ec..30d7575aaf 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-gen.js index 79fa43eaf6..cea862e75d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-hole.js index b7de310bd1..b6eb13567d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-hole.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-hole.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-hole.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-hole.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Destructuring initializer with a "hole" (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -36,12 +36,12 @@ info: | [...] 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt - [...] 6. If Initializer is present and v is undefined, then + SingleNameBinding : BindingIdentifier Initializer_opt + [...] 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-skipped.js index 7fff360bc0..facf7379eb 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,13 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then [...] 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var initCount = 0; function counter() { diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-throws.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-throws.js index 18831cbb6b..ab94b0e7d8 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-throws.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Destructuring initializer returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,12 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). ---*/ async function fn() { @@ -53,6 +52,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-undef.js index 47379aacaf..c01f1fa09c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-undef.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-undef.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-undef.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Destructuring initializer with an undefined value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,15 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-unresolvable.js index 958f04ee32..a39603b323 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,6 +59,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-complete.js index 33acb8e557..abc29dea7e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-complete.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-complete.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-complete.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-complete.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding when value iteration completes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,19 +37,19 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-done.js index c66b20bc01..67bd79217e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-done.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-done.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-done.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-done.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,14 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-step-err.js index 5c390f79c9..db266b4e1b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-step-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-step-err.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Error forwarding when IteratorStep returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). @@ -48,7 +48,7 @@ info: | var g = {}; g[Symbol.iterator] = function() { return { - next: function() { + next() { throw new Test262Error(); } }; @@ -61,6 +61,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-val-err.js index d87b1a3bf4..e8a35760a8 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-val-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-val-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val-err.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Error forwarding when IteratorValue returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). @@ -59,7 +59,7 @@ var poisonedValue = Object.defineProperty({}, 'value', { var g = {}; g[Symbol.iterator] = function() { return { - next: function() { + next() { return poisonedValue; } }; @@ -72,6 +72,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-val.js index 4cdfa5781b..b25fabf685 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-val.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-id-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-id-init.js index 9bf1a7af9d..44b5d51e61 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-id.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-id.js index ed039bb39c..248af59fff 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-prop-id-init.js index 16cf0b1efc..381cbfa756 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-prop-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-prop-id.js index 321f84675a..c7a38ec802 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-val-null.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-val-null.js index 1e7c84aaeb..b92d340312 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-val-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-val-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-val-null.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-val-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Nested object destructuring with a null value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -62,6 +62,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-val-undef.js index 33e86e68a1..3d8d1770fa 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-val-undef.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elem-obj-val-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-val-undef.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-val-undef.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Nested object destructuring with a value of `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -62,6 +62,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision-exhausted.js index 94cb3c42f9..fcf6703d85 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Elision accepts exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision-iter-close.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision-iter-close.js index bd274136bf..db6bb2a2d0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision-iter-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-iter-close.case -// - src/dstr-binding/iter-close/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elision-iter-close.case +// - src/dstr-binding-for-await/iter-close/for-await-of-async-func-const.template /*--- description: The iterator is properly consumed by the destructuring pattern (for-await-of statement in an async function) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision-step-err.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision-step-err.js index b249fd2eef..e331b1f4c7 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision-step-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-step-err.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elision-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Elision advances iterator and forwards abrupt completions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -54,7 +54,7 @@ info: | ---*/ var following = 0; -var iter =function* () { +var iter = function* () { throw new Test262Error(); following += 1; }(); @@ -66,9 +66,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + assert.sameValue(following, 0, "iterator is properly closed"); + }) .then($DONE, $DONE); - -iter.next(); -assert.sameValue(following, 0, 'Iterator was properly closed.'); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision.js index 0e4ec8f220..22d928d0cb 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Elision advances iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-empty.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-empty.js index 53c659572e..59e07bcfbb 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: No iteration occurs for an "empty" array binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-elem.js index 7a7589ec6d..5773970bc7 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-elem.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-elem.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elem.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elem.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest element containing an array BindingElementList pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -50,23 +50,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-elision.js index 159a8b5317..de0a2b97e8 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elision.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest element containing an elision (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-empty.js index 4a913c5967..8756778470 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-empty.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest element containing an "empty" array pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-rest.js index 9216fda1da..f16645e63c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-rest.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-ary-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-rest.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest element containing a rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-elision-next-err.js index d73910b70a..0b20e4e31c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-elision-next-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-elision-next-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision-next-err.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision-next-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,6 +55,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-elision.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-elision.js index 751b17f437..d5f0c50ee8 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-exhausted.js index 19526cf630..93af5a5883 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: RestElement applied to an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-iter-close.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-iter-close.js index 4056efeb46..1b97581d1c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-iter-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-close.case -// - src/dstr-binding/iter-close/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-close.case +// - src/dstr-binding-for-await/iter-close/for-await-of-async-func-const.template /*--- description: The iterator is properly consumed by the destructuring pattern (for-await-of statement in an async function) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-iter-step-err.js index c29c514b9f..5cd8a163c5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-iter-step-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-iter-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-step-err.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Error forwarding when IteratorStep returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -62,10 +62,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -iter.next(); -assert.sameValue(first, 1); -assert.sameValue(second, 0, 'Iterator is closed following abrupt completion.'); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-iter-val-err.js index 1392aa2984..4403384521 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-iter-val-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id-iter-val-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-val-err.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-val-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Error forwarding when IteratorValue returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,7 +55,7 @@ var poisonedValue = Object.defineProperty({}, 'value', { var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return poisonedValue; } }; @@ -68,6 +68,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id.js index 159258c241..70a84895de 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Lone rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-init-ary.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-init-ary.js index 98910ad613..7fbc379f16 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-init-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-init-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-ary.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Reset element (nested array pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-init-id.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-init-id.js index 8a532a9cbb..1ba7fc2875 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-init-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-init-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-id.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Reset element (identifier) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-init-obj.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-init-obj.js index 66e49cf83f..01e4f12410 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-init-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-init-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-obj.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Reset element (nested object pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-not-final-ary.js index a6affef838..2bbb58986c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-not-final-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-not-final-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-ary.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest element (array binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-not-final-id.js index e32d81521d..2c9b11373b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-not-final-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-not-final-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-id.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest element (identifier) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-not-final-obj.js index 1360ad4ecf..eeeee2da95 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-not-final-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-not-final-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-obj.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest element (object binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-obj-id.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-obj-id.js index d6abf9d219..aa6bc98b5d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-obj-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-id.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-obj-prop-id.js index d85c53967e..a2de0e7e00 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-ary-ptrn-rest-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-init-iter-close.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-init-iter-close.js index eba337271a..1e456ce270 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-init-iter-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-init-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-close.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-init-iter-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Iterator is closed when not exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: false }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-init-iter-no-close.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-init-iter-no-close.js index 0dfc920caa..3ab60e87c2 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-init-iter-no-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-init-iter-no-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-no-close.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-init-iter-no-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Iterator is not closed when exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: true }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-name-iter-val.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-name-iter-val.js index c6e4588bb9..eebd6e2f3e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-name-iter-val.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-name-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-name-iter-val.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-name-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding with normal value iteration (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elem-init.js index 21be8c7662..b9a994ef3c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elem-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elem-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-init.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elem-iter.js index 64d1e65efb..5315bb0047 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elem-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elem-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-iter.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elision-init.js index b008d06ec6..381ec91488 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elision-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elision-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-init.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elision-iter.js index 7b8ad2fccf..697837000e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elision-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-elision-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-iter.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-empty-init.js index a7814dc91b..6ad9cf139a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-empty-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-empty-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-init.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-empty-iter.js index 5abf021c64..20c6f0cec6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-empty-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-empty-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-iter.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-rest-init.js index f16b0775dd..193251527f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-rest-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-rest-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-init.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-rest-iter.js index 7b85064694..13e95cee77 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-rest-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-ary-rest-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-iter.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-exhausted.js index 744201c51f..174eadc945 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Destructuring initializer with an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,16 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. - 6. If Initializer is present and v is undefined, then + 4. If iteratorRecord.[[done]] is true, let v be undefined. + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-arrow.js index 073900accd..9c7e20a482 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding does assign name to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-class.js index e544004cdb..7c5db4e9df 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-cover.js index 8ec716384b..65258e7d01 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding does assign name to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-fn.js index 954196eb9f..0fbde77fa4 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-gen.js index de40d651b8..1d7ad09392 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-hole.js index 794fa0a8e5..68ed2be7de 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-hole.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-hole.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-hole.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-hole.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Destructuring initializer with a "hole" (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -36,12 +36,12 @@ info: | [...] 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt - [...] 6. If Initializer is present and v is undefined, then + SingleNameBinding : BindingIdentifier Initializer_opt + [...] 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-skipped.js index 9130c6a693..9484649170 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,13 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then [...] 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var initCount = 0; function counter() { diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-undef.js index e9484712de..2771715740 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-undef.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-init-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-undef.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-undef.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Destructuring initializer with an undefined value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,15 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-iter-complete.js index 302e91c7f6..703b5fb122 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-iter-complete.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-iter-complete.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-complete.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-complete.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding when value iteration completes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,19 +37,19 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-iter-done.js index 8120d00a8a..31eda65923 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-iter-done.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-iter-done.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-done.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-done.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,14 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-iter-val.js index 7c3dca13ab..f6016fb3d7 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-iter-val.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-id-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-id-init.js index 8a56b7f00f..c643f6918e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-id.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-id.js index 7adfce8eed..0b711e8b86 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-prop-id-init.js index ded1f42337..d7206e8e81 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-prop-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-prop-id.js index 8f4be17b7f..59ba00ac9d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elem-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elision-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elision-exhausted.js index 8c1fe66550..217d730d41 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elision-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elision-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Elision accepts exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elision.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elision.js index 4b39ae3729..fa2c4c81a8 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Elision advances iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-empty.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-empty.js index 6ec277ac01..09d6e819f6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: No iteration occurs for an "empty" array binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-elem.js index 1b07b18968..7142a54dc5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-elem.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-elem.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elem.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elem.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest element containing an array BindingElementList pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -50,23 +50,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-elision.js index 2b31699dcb..062556d0aa 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elision.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest element containing an elision (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-empty.js index 52510433ea..7b67a28f97 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-empty.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest element containing an "empty" array pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-rest.js index c4ba453373..67b3d6d787 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-rest.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-ary-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-rest.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest element containing a rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-id-elision.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-id-elision.js index afb1252516..00004d9747 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-id-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-id-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-id-exhausted.js index effcfc3622..400b8147bf 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-id-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-id-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: RestElement applied to an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-id.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-id.js index b0cce464af..b85c487406 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Lone rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-init-ary.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-init-ary.js index 5bdfcb5502..ad85679de9 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-init-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-init-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-ary.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Reset element (nested array pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-init-id.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-init-id.js index 7b028d2279..1b0875f040 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-init-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-init-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-id.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Reset element (identifier) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-init-obj.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-init-obj.js index 865bbf365d..b5043aa0bc 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-init-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-init-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-obj.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Reset element (nested object pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-not-final-ary.js index 4110ded90f..f8b9e341df 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-not-final-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-not-final-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-ary.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest element (array binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-not-final-id.js index 8f5dea0e33..92cb0493dd 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-not-final-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-not-final-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-id.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest element (identifier) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-not-final-obj.js index f68ecb5124..6d2fab978c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-not-final-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-not-final-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-obj.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest element (object binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-obj-id.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-obj-id.js index e37b6f53be..e1b99509b5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-obj-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-id.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-obj-prop-id.js index 9fe2e241b3..0cbe1c7f12 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-ary-ptrn-rest-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-empty.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-empty.js index ea327b594d..30c54872d7 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: No property access occurs for an "empty" object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-arrow.js index 9312b58ed3..d1407a661c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding assigns `name` to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-class.js index 57abee7c53..942649eca4 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-cover.js index 07cd9b241f..a06c12771c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-fn.js index 1842788fdb..2be4d848d7 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-gen.js index c5587df7ff..1cbe88c162 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-skipped.js index d72111b6ca..43dc45b297 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-trailing-comma.js index 032eaa430e..0be58f42f3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary-init.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary-init.js index b4b8f6f56e..d57b783cc5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-init.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Object binding pattern with "nested" array binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary-trailing-comma.js index 2901548ce4..ab0159e9c0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary.js index 1fc91a8d7d..e5fb57a858 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Object binding pattern with "nested" array binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id-init-skipped.js index 0d3c412c1b..49bd81b042 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] 3. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id-init.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id-init.js index 4b12eca9a3..4926a6d63d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Binding as specified via property name, identifier, and initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id-trailing-comma.js index 314757b15e..c2b1f62be0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id.js index 33278b9480..cbd0f519b1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Binding as specified via property name and identifier (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-obj-init.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-obj-init.js index 3695afc8f3..330479ba68 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-obj-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-obj-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-init.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Object binding pattern with "nested" object binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-obj.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-obj.js index 6a4b31edb8..85c6aaf474 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-prop-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Object binding pattern with "nested" object binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-getter.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-getter.js index 522972b6e1..a55e98df7c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-getter.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-getter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-getter.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-getter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Getter is called when obj is being deconstructed to a rest Object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-nested-obj.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-nested-obj.js index b67f6bd417..5b79371dea 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-nested-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-nested-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-nested-obj.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-nested-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-obj-nested-rest.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-obj-nested-rest.js index 6e671982d6..e960685b11 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-obj-nested-rest.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-obj-nested-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-nested-rest.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-nested-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment and object rest desconstruction is allowed in that case. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-obj-own-property.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-obj-own-property.js index 224963260e..95394838f6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-obj-own-property.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-obj-own-property.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-own-property.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-own-property.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest object contains just soruce object's own properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-skip-non-enumerable.js index 218409b566..5c21293502 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-skip-non-enumerable.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-skip-non-enumerable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-skip-non-enumerable.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-skip-non-enumerable.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest object doesn't contain non-enumerable properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-val-obj.js b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-val-obj.js index 25bfc0ae85..e4c95c22b3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-val-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-async-obj-ptrn-rest-val-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-val-obj.case -// - src/dstr-binding/default/for-await-of-async-func-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-val-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const-async.template /*--- description: Rest object contains just unextracted data (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-init-null.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-init-null.js index 8b0a89b79c..fb45aee39a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-init-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-init-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-init-null.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-init-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Value specifed for object binding pattern must be object coercible (null) (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,6 +49,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-init-undefined.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-init-undefined.js index 4fb0ea48bf..c54ae70724 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-init-undefined.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-init-undefined.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-init-undefined.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-init-undefined.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Value specifed for object binding pattern must be object coercible (undefined) (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,6 +49,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-empty.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-empty.js index 3bc5dd2ed8..ead75b9715 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: No property access occurs for an "empty" object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-get-value-err.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-get-value-err.js index 0a50226a40..29bde1a8ff 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-get-value-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-get-value-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-get-value-err.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-get-value-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Error thrown when accessing the corresponding property of the value object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 4. Let v be GetV(value, propertyName). @@ -56,6 +56,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-arrow.js index 5e3ecd27fd..a92908d16f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding assigns `name` to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-class.js index 9353a4ee97..f3b3067374 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-cover.js index 49704c4f3f..8b52db48b0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding assigns `name` to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-fn.js index 47c8bc2ba7..28a302e17f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-gen.js index 97074e7e40..8acacee74a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-skipped.js index fb1c5158ed..1b36270b0f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-throws.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-throws.js index 829dffe76d..573df23103 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-throws.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Error thrown when evaluating the initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then @@ -56,6 +56,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-unresolvable.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-unresolvable.js index d98d28f2c6..abcf7b0bf6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,6 +59,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-trailing-comma.js index 02fb88d16e..b1779106a7 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-list-err.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-list-err.js index e37bcbdfc2..a6ec15f162 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-list-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-list-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-list-err.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-list-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Binding property list evaluation is interrupted by an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,8 +55,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -assert.sameValue(initCount, 0); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary-init.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary-init.js index a0477e965b..478fe16fb6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-init.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Object binding pattern with "nested" array binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary-trailing-comma.js index 001aab5e32..51b3adc674 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary-value-null.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary-value-null.js index 5f4e98d128..e6c8be2827 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary-value-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary-value-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-value-null.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-value-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Object binding pattern with "nested" array binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,6 +51,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary.js index 9cb463ffd0..27e4075244 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Object binding pattern with "nested" array binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-eval-err.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-eval-err.js index 3bdd7c6fd1..229b3fd1d7 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-eval-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-eval-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-eval-err.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-eval-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Evaluation of property name returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -53,6 +53,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-get-value-err.js index ab2ef7c461..2246269a2e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-get-value-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-get-value-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-get-value-err.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-get-value-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Error thrown when accessing the corresponding property of the value object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. Let v be GetV(value, propertyName). 2. ReturnIfAbrupt(v). @@ -56,8 +56,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -assert.sameValue(initEvalCount, 0); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init-skipped.js index c7c6920daa..8c908cc940 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] 3. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init-throws.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init-throws.js index 9a9fffe76a..136e505dfb 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init-throws.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Error thrown when evaluating the initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,12 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). ---*/ function thrower() { throw new Test262Error(); @@ -56,6 +55,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init-unresolvable.js index 2ec54e3ce9..928600acb9 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,6 +59,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init.js index 914807a35b..d38dab6293 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Binding as specified via property name, identifier, and initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-trailing-comma.js index adbe01fd01..9d5dbe33f5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id.js index d1940c75af..892ea59150 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Binding as specified via property name and identifier (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj-init.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj-init.js index 779ff62325..73553b46ca 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-init.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Object binding pattern with "nested" object binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj-value-null.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj-value-null.js index 899e6709ca..99ac754196 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj-value-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj-value-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-value-null.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-value-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Object binding pattern with "nested" object binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,6 +51,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj-value-undef.js index a0d082d80c..b78d7d781c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj-value-undef.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj-value-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-value-undef.case -// - src/dstr-binding/error/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-value-undef.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-const.template /*--- description: Object binding pattern with "nested" object binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,6 +51,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj.js index f5a3fed3f2..c612385c76 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-prop-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Object binding pattern with "nested" object binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-getter.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-getter.js index 6b5a443a47..4bbb88b0ff 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-getter.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-getter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-getter.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-rest-getter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Getter is called when obj is being deconstructed to a rest Object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-nested-obj.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-nested-obj.js index 37427d0585..39cafc08f5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-nested-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-nested-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-nested-obj.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-rest-nested-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-obj-nested-rest.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-obj-nested-rest.js index 450c85fa15..2df7a1847a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-obj-nested-rest.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-obj-nested-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-nested-rest.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-nested-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment and object rest desconstruction is allowed in that case. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-obj-own-property.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-obj-own-property.js index d98c6ea676..404f73be52 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-obj-own-property.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-obj-own-property.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-own-property.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-own-property.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest object contains just soruce object's own properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-skip-non-enumerable.js index b28c1d9513..b619c4ab87 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-skip-non-enumerable.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-skip-non-enumerable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-skip-non-enumerable.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-rest-skip-non-enumerable.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest object doesn't contain non-enumerable properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-val-obj.js b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-val-obj.js index 45bbbdf6b7..e1eeb5dfdc 100644 --- a/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-val-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-const-obj-ptrn-rest-val-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-val-obj.case -// - src/dstr-binding/default/for-await-of-async-func-const.template +// - src/dstr-binding-for-await/obj-ptrn-rest-val-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-const.template /*--- description: Rest object contains just unextracted data (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-init-iter-close.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-init-iter-close.js index ee04b176a1..2a327cd305 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-init-iter-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-init-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-close.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-init-iter-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Iterator is closed when not exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: false }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-init-iter-get-err.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-init-iter-get-err.js index 53356d8e58..cd3d4c5bd3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-init-iter-get-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-init-iter-get-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-get-err.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-init-iter-get-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Abrupt completion returned by GetIterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -39,8 +39,7 @@ info: | BindingPattern : ArrayBindingPattern - 1. Let iterator be GetIterator(value). - 2. ReturnIfAbrupt(iterator). + 1. Let iterator be ? GetIterator(value). ---*/ var iter = {}; @@ -55,6 +54,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-init-iter-no-close.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-init-iter-no-close.js index 699d61086c..bb69bb6e36 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-init-iter-no-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-init-iter-no-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-no-close.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-init-iter-no-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Iterator is not closed when exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: true }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-name-iter-val.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-name-iter-val.js index 9a77672859..7479086465 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-name-iter-val.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-name-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-name-iter-val.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-name-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding with normal value iteration (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elem-init.js index a69ed9edec..73a1e1e35b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elem-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elem-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-init.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elem-iter.js index dc4d5fa3f2..b55dff3b62 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elem-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elem-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-iter.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elision-init.js index d84b82d381..8353b4eda3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elision-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elision-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-init.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elision-iter.js index f6bf5adcd8..3cf41e50ed 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elision-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-elision-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-iter.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-empty-init.js index 8dc810bcb6..0e4e595cc0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-empty-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-empty-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-init.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-empty-iter.js index b04a49fee6..4170dc60fe 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-empty-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-empty-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-iter.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-rest-init.js index 77b76eab44..3174b1d18f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-rest-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-rest-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-init.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-rest-iter.js index 5ef582799f..0b5dcd28a1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-rest-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-rest-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-iter.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-val-null.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-val-null.js index c4e8a5b56a..21230e963e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-val-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-ary-val-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-val-null.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-val-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Nested array destructuring with a null value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -51,8 +51,7 @@ info: | BindingPattern : ArrayBindingPattern - 1. Let iterator be GetIterator(value). - 2. ReturnIfAbrupt(iterator). + 1. Let iterator be ? GetIterator(value). ---*/ async function fn() { @@ -62,6 +61,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-exhausted.js index 554ff21c37..fbf731e135 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Destructuring initializer with an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,16 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. - 6. If Initializer is present and v is undefined, then + 4. If iteratorRecord.[[done]] is true, let v be undefined. + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-arrow.js index 7628c2f87f..c379105cf3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding does assign name to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-class.js index 7f020866e2..ee8540b2bc 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js index 9077d6dedd..0b6aaedbc5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding does assign name to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-fn.js index 92751b857f..fcda7fc0c6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-gen.js index 17b25482b2..b510798933 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-hole.js index a09c5bab72..b7b92e4be9 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-hole.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-hole.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-hole.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-hole.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Destructuring initializer with a "hole" (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -36,12 +36,12 @@ info: | [...] 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt - [...] 6. If Initializer is present and v is undefined, then + SingleNameBinding : BindingIdentifier Initializer_opt + [...] 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-skipped.js index 0f899edf09..7d1194d659 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,13 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then [...] 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var initCount = 0; function counter() { diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-throws.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-throws.js index 88da5ae807..981d370dfd 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-throws.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Destructuring initializer returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,12 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). ---*/ async function fn() { @@ -53,6 +52,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-undef.js index 9423b8cda4..88db698700 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-undef.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-undef.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-undef.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Destructuring initializer with an undefined value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,15 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-unresolvable.js index 4dd930c037..04c7da70f8 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,6 +59,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-complete.js index ec56f90531..249d996bfe 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-complete.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-complete.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-complete.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-complete.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding when value iteration completes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,19 +37,19 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-done.js index 290d80b304..b1270529b5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-done.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-done.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-done.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-done.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,14 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-step-err.js index 383d37d27a..234accf758 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-step-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-step-err.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Error forwarding when IteratorStep returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). @@ -48,7 +48,7 @@ info: | var g = {}; g[Symbol.iterator] = function() { return { - next: function() { + next() { throw new Test262Error(); } }; @@ -61,6 +61,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-val-err.js index 8473eb939f..a9bbb4e5e5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-val-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-val-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val-err.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Error forwarding when IteratorValue returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). @@ -59,7 +59,7 @@ var poisonedValue = Object.defineProperty({}, 'value', { var g = {}; g[Symbol.iterator] = function() { return { - next: function() { + next() { return poisonedValue; } }; @@ -72,6 +72,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-val.js index bc4eec7f18..6ac04bab7b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-val.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-id-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-id-init.js index 68385226b7..a48da5cdbd 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-id.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-id.js index aac482acf5..f46bea0532 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-prop-id-init.js index 5544813025..b8ed93139d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-prop-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-prop-id.js index f40915bec5..d91461aa7d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-val-null.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-val-null.js index ce125433de..4e3f81fd1a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-val-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-val-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-val-null.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-val-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Nested object destructuring with a null value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -62,6 +62,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-val-undef.js index 262a572a4a..a150a7c613 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-val-undef.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elem-obj-val-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-val-undef.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-val-undef.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Nested object destructuring with a value of `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -62,6 +62,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision-exhausted.js index bcc6088cfe..2e52270791 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Elision accepts exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision-iter-close.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision-iter-close.js index b92c8a4fd2..d156ff2b8f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision-iter-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-iter-close.case -// - src/dstr-binding/iter-close/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elision-iter-close.case +// - src/dstr-binding-for-await/iter-close/for-await-of-async-func-let.template /*--- description: The iterator is properly consumed by the destructuring pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision-step-err.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision-step-err.js index 7abaa288e6..a49aaefa13 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision-step-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-step-err.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elision-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Elision advances iterator and forwards abrupt completions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -54,7 +54,7 @@ info: | ---*/ var following = 0; -var iter =function* () { +var iter = function* () { throw new Test262Error(); following += 1; }(); @@ -66,9 +66,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + assert.sameValue(following, 0, "iterator is properly closed"); + }) .then($DONE, $DONE); - -iter.next(); -assert.sameValue(following, 0, 'Iterator was properly closed.'); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision.js index 4dffb5daca..2e27366924 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Elision advances iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-empty.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-empty.js index cdb54202a2..151088698f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: No iteration occurs for an "empty" array binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-elem.js index 4c8c1a2e40..f1000b904f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-elem.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-elem.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elem.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elem.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest element containing an array BindingElementList pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -50,23 +50,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-elision.js index 38e2ef4f6b..3b8195bc27 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elision.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest element containing an elision (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-empty.js index 43b425c793..088fdb9588 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-empty.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest element containing an "empty" array pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-rest.js index b31b345157..2e8dc1a6e9 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-rest.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-ary-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-rest.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest element containing a rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-elision-next-err.js index 32bad54f2a..8be17ad5ba 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-elision-next-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-elision-next-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision-next-err.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision-next-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,6 +55,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-elision.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-elision.js index 7ed735db2c..67ea422a46 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-exhausted.js index 8f3f7dc9d1..20b96f6c0a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: RestElement applied to an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-iter-close.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-iter-close.js index 797ef147f8..8eb33fdb41 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-iter-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-close.case -// - src/dstr-binding/iter-close/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-close.case +// - src/dstr-binding-for-await/iter-close/for-await-of-async-func-let.template /*--- description: The iterator is properly consumed by the destructuring pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-iter-step-err.js index 3d8c480999..440785123c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-iter-step-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-iter-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-step-err.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Error forwarding when IteratorStep returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -62,10 +62,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -iter.next(); -assert.sameValue(first, 1); -assert.sameValue(second, 0, 'Iterator is closed following abrupt completion.'); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-iter-val-err.js index a45531ed32..bfe84544ef 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-iter-val-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id-iter-val-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-val-err.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-val-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Error forwarding when IteratorValue returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,7 +55,7 @@ var poisonedValue = Object.defineProperty({}, 'value', { var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return poisonedValue; } }; @@ -68,6 +68,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id.js index 459c351a2a..4a9813d142 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Lone rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-init-ary.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-init-ary.js index 8b05b78a38..f5b44922ce 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-init-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-init-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-ary.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Reset element (nested array pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-init-id.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-init-id.js index 61de2df4e0..ceb1411189 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-init-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-init-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-id.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Reset element (identifier) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-init-obj.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-init-obj.js index 1b885ec818..658b963a8a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-init-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-init-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-obj.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Reset element (nested object pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-not-final-ary.js index 8584d0ce38..57c5abf501 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-not-final-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-not-final-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-ary.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest element (array binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-not-final-id.js index 74f92029ae..f8e3c48e0f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-not-final-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-not-final-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-id.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest element (identifier) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-not-final-obj.js index 65783cfbc0..71fb2b646c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-not-final-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-not-final-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-obj.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest element (object binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-obj-id.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-obj-id.js index 692810ac98..7a54a56e36 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-obj-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-id.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-obj-prop-id.js index a3929d0e70..4f21924cdc 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-ary-ptrn-rest-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-init-iter-close.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-init-iter-close.js index 89ca96204d..a1b31e14ef 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-init-iter-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-init-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-close.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-init-iter-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Iterator is closed when not exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: false }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-init-iter-no-close.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-init-iter-no-close.js index 6f4c9e35dd..6b59095af1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-init-iter-no-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-init-iter-no-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-no-close.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-init-iter-no-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Iterator is not closed when exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: true }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-name-iter-val.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-name-iter-val.js index 150b2b6fa5..05218d9081 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-name-iter-val.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-name-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-name-iter-val.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-name-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding with normal value iteration (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elem-init.js index 0c373c5f60..7b4cb71c55 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elem-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elem-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-init.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elem-iter.js index 67a3720ac1..2203b6d41c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elem-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elem-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-iter.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elision-init.js index e350d5e42f..7f0a6849de 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elision-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elision-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-init.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elision-iter.js index f76dcc5f9f..a9fc3ad0c5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elision-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-elision-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-iter.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-empty-init.js index 235714cf65..a19aa261f5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-empty-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-empty-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-init.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-empty-iter.js index 35bcf39b05..8f6f1cfcb1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-empty-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-empty-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-iter.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-rest-init.js index ea51a1d30d..bd107a097b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-rest-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-rest-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-init.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-rest-iter.js index 87d89dec16..cd4d06cfba 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-rest-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-ary-rest-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-iter.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-exhausted.js index cc6bfb62fd..afabc4bd27 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Destructuring initializer with an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,16 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. - 6. If Initializer is present and v is undefined, then + 4. If iteratorRecord.[[done]] is true, let v be undefined. + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-arrow.js index fddee0a259..e4db6777b9 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding does assign name to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-class.js index 40e89f2876..31c5c335bd 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-cover.js index 779318b324..61b5471f96 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding does assign name to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-fn.js index b66557b77c..8433831960 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-gen.js index f9753954e8..62394147b4 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-hole.js index cc468edee0..f413d33d5c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-hole.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-hole.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-hole.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-hole.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Destructuring initializer with a "hole" (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -36,12 +36,12 @@ info: | [...] 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt - [...] 6. If Initializer is present and v is undefined, then + SingleNameBinding : BindingIdentifier Initializer_opt + [...] 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-skipped.js index 40f5a7096a..9630fc9884 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,13 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then [...] 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var initCount = 0; function counter() { diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-undef.js index aeb52b58a0..7c7cf2fa68 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-undef.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-init-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-undef.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-undef.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Destructuring initializer with an undefined value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,15 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-iter-complete.js index cab1bbf67f..a4764ad8f2 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-iter-complete.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-iter-complete.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-complete.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-complete.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding when value iteration completes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,19 +37,19 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-iter-done.js index 12e0d09c62..ee2cbd6b85 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-iter-done.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-iter-done.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-done.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-done.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,14 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-iter-val.js index f035c1d090..e926da2c68 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-iter-val.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-id-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-id-init.js index 9bb94ca087..5b89ddc4c5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-id.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-id.js index da37fef834..d6cc12bc8e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-prop-id-init.js index 0fadab5912..f17195bd74 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-prop-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-prop-id.js index 00ab0f076b..7ce0a9ac65 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elem-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elision-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elision-exhausted.js index b3ed5edbd4..427695e835 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elision-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elision-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Elision accepts exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elision.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elision.js index c78aa50717..8c52cf0409 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Elision advances iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-empty.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-empty.js index b6cc6912e8..0c8bd96915 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: No iteration occurs for an "empty" array binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-elem.js index 5a4c816619..20c4cdcb06 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-elem.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-elem.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elem.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elem.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest element containing an array BindingElementList pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -50,23 +50,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-elision.js index 29fb962c88..8303f7f708 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elision.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest element containing an elision (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-empty.js index dbcc88af2c..be2fb21423 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-empty.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest element containing an "empty" array pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-rest.js index 0faa4dbf16..880f5fd678 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-rest.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-ary-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-rest.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest element containing a rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-id-elision.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-id-elision.js index e111cb1811..a6ddb66c77 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-id-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-id-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-id-exhausted.js index fddf10d574..fdd3f5092b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-id-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-id-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: RestElement applied to an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-id.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-id.js index 5eaa9e14d3..450ef508b4 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Lone rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-init-ary.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-init-ary.js index 88a93910ef..e36c46691a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-init-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-init-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-ary.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Reset element (nested array pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-init-id.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-init-id.js index b9b64dd4ca..6ddd9d4746 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-init-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-init-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-id.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Reset element (identifier) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-init-obj.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-init-obj.js index 9c40a15f9f..cce62fe3b6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-init-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-init-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-obj.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Reset element (nested object pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-not-final-ary.js index f13533ca8d..a8ecd434b0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-not-final-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-not-final-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-ary.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest element (array binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-not-final-id.js index 4c09dd7f46..3288685a43 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-not-final-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-not-final-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-id.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest element (identifier) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-not-final-obj.js index 6255f00fdb..6a704463c1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-not-final-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-not-final-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-obj.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest element (object binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-obj-id.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-obj-id.js index cfb6caef8c..374f794583 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-obj-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-id.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-obj-prop-id.js index a3686b5658..1504c29dbd 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-ary-ptrn-rest-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-empty.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-empty.js index 442b59f9ce..d612401b44 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: No property access occurs for an "empty" object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-arrow.js index 1deabbc454..50d4df98fd 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding assigns `name` to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-class.js index 0af1abc181..a54f2b2201 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-cover.js index 3a0a9a4f85..af76f38b8c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-fn.js index 80f255e45a..d78c45b53b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-gen.js index 4d122d3e98..33374b5733 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-skipped.js index 31ca7171af..bd06b95c57 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-trailing-comma.js index 9f32a86d26..c4e455f6b4 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-ary-init.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-ary-init.js index 8983357d36..bd77d1bddd 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-ary-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-ary-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-init.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Object binding pattern with "nested" array binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-ary-trailing-comma.js index f4c09486c3..b334f8b8cd 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-ary-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-ary-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-ary.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-ary.js index 6ee201d9e4..2a5307c7b0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Object binding pattern with "nested" array binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id-init-skipped.js index be2c745522..45fd703da2 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] 3. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id-init.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id-init.js index 83c5f68f56..d41060961c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Binding as specified via property name, identifier, and initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id-trailing-comma.js index 6bc04fa8ff..05dcc2eef8 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id.js index 801755c156..2dda39f456 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Binding as specified via property name and identifier (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-obj-init.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-obj-init.js index 37f0e1107a..14e2cfca43 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-obj-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-obj-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-init.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Object binding pattern with "nested" object binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-obj.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-obj.js index 60f704eefd..adf5f284c7 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-prop-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Object binding pattern with "nested" object binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-getter.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-getter.js index 857d7101c2..c1ea7beb2b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-getter.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-getter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-getter.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-getter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Getter is called when obj is being deconstructed to a rest Object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-nested-obj.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-nested-obj.js index e43f13c8a8..077519e9d3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-nested-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-nested-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-nested-obj.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-nested-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-obj-nested-rest.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-obj-nested-rest.js index cc2cfc885a..7906c8d668 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-obj-nested-rest.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-obj-nested-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-nested-rest.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-nested-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment and object rest desconstruction is allowed in that case. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-obj-own-property.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-obj-own-property.js index ff715eb126..1eccbf33dc 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-obj-own-property.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-obj-own-property.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-own-property.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-own-property.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest object contains just soruce object's own properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-skip-non-enumerable.js index 2fc39d1c09..d36b5fb8b3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-skip-non-enumerable.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-skip-non-enumerable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-skip-non-enumerable.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-skip-non-enumerable.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest object doesn't contain non-enumerable properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-val-obj.js b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-val-obj.js index c1a732dc2c..e5e3d99db1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-val-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-async-obj-ptrn-rest-val-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-val-obj.case -// - src/dstr-binding/default/for-await-of-async-func-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-val-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let-async.template /*--- description: Rest object contains just unextracted data (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-init-null.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-init-null.js index dbdab0a47d..43f93a0e41 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-init-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-init-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-init-null.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-init-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Value specifed for object binding pattern must be object coercible (null) (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,6 +49,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-init-undefined.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-init-undefined.js index 0ecf2b2ffb..43a05efc58 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-init-undefined.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-init-undefined.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-init-undefined.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-init-undefined.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Value specifed for object binding pattern must be object coercible (undefined) (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,6 +49,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-empty.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-empty.js index 222d34f5f6..47b49456d2 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: No property access occurs for an "empty" object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-get-value-err.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-get-value-err.js index be24e507c0..6b242e3036 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-get-value-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-get-value-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-get-value-err.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-get-value-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Error thrown when accessing the corresponding property of the value object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 4. Let v be GetV(value, propertyName). @@ -56,6 +56,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-arrow.js index 74d62a1379..c8e49c23e5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding assigns `name` to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-class.js index dd1a28d8ed..fb5c253310 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-cover.js index d83e4695a5..e6ebb44596 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding assigns `name` to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-fn.js index 7f24ce02ee..0b0eef5469 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-gen.js index f9841fd862..8e378bdb9b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-skipped.js index 87d5047438..fd73d5c948 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-throws.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-throws.js index b0afd151cd..0f7c478bd1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-throws.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Error thrown when evaluating the initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then @@ -56,6 +56,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-unresolvable.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-unresolvable.js index f64640d0e0..fc617d2191 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,6 +59,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-trailing-comma.js index 0899ad8da5..8cbd7cbca9 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-list-err.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-list-err.js index 43ebe82541..284b8f2822 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-list-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-list-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-list-err.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-list-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Binding property list evaluation is interrupted by an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,8 +55,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -assert.sameValue(initCount, 0); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary-init.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary-init.js index fb006a1af2..9838ad0309 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-init.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Object binding pattern with "nested" array binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary-trailing-comma.js index 8e77a7d329..931a0567d3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary-value-null.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary-value-null.js index 65e7fc5a5c..d11eddaf69 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary-value-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary-value-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-value-null.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-value-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Object binding pattern with "nested" array binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,6 +51,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary.js index 22dc0a9409..70775e4098 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Object binding pattern with "nested" array binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-eval-err.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-eval-err.js index 2c0586bfaf..fced0b0860 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-eval-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-eval-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-eval-err.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-eval-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Evaluation of property name returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -53,6 +53,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-get-value-err.js index 3c538f1690..b14aad0499 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-get-value-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-get-value-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-get-value-err.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-get-value-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Error thrown when accessing the corresponding property of the value object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. Let v be GetV(value, propertyName). 2. ReturnIfAbrupt(v). @@ -56,8 +56,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -assert.sameValue(initEvalCount, 0); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init-skipped.js index 6f003d7f1e..79039234b5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] 3. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init-throws.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init-throws.js index 825458c4e2..7956c2638e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init-throws.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Error thrown when evaluating the initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,12 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). ---*/ function thrower() { throw new Test262Error(); @@ -56,6 +55,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init-unresolvable.js index cf8464d69d..b0af4fba62 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,6 +59,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init.js index ae8eb8de7f..ba840bd7ac 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Binding as specified via property name, identifier, and initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-trailing-comma.js index 1adcbf79d7..3a8111fd41 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id.js index 66be749d53..b38ed5aa18 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Binding as specified via property name and identifier (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj-init.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj-init.js index 5089380706..663cd8e8f6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-init.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Object binding pattern with "nested" object binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj-value-null.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj-value-null.js index 144919852e..37c11d0761 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj-value-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj-value-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-value-null.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-value-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Object binding pattern with "nested" object binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,6 +51,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj-value-undef.js index 81f3209837..1100d272ed 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj-value-undef.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj-value-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-value-undef.case -// - src/dstr-binding/error/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-value-undef.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-let.template /*--- description: Object binding pattern with "nested" object binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,6 +51,11 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj.js index 0c108d1fd5..74ec43242e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-prop-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Object binding pattern with "nested" object binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-getter.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-getter.js index 2fc78747ff..891538b3f5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-getter.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-getter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-getter.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-rest-getter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Getter is called when obj is being deconstructed to a rest Object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-nested-obj.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-nested-obj.js index e5725c3e4f..6bdd1c3f9c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-nested-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-nested-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-nested-obj.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-rest-nested-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-obj-nested-rest.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-obj-nested-rest.js index 3e3a88deb5..5d7dc9bb07 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-obj-nested-rest.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-obj-nested-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-nested-rest.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-nested-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment and object rest desconstruction is allowed in that case. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-obj-own-property.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-obj-own-property.js index 5379209b11..33981973e2 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-obj-own-property.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-obj-own-property.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-own-property.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-own-property.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest object contains just soruce object's own properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-skip-non-enumerable.js index 1d74c3aafc..840ba6cc9c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-skip-non-enumerable.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-skip-non-enumerable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-skip-non-enumerable.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-rest-skip-non-enumerable.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest object doesn't contain non-enumerable properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-val-obj.js b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-val-obj.js index 9eb47d4c77..c5410f346f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-val-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-let-obj-ptrn-rest-val-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-val-obj.case -// - src/dstr-binding/default/for-await-of-async-func-let.template +// - src/dstr-binding-for-await/obj-ptrn-rest-val-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-let.template /*--- description: Rest object contains just unextracted data (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-close.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-close.js index 27b31e6181..47d0799336 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-close.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-init-iter-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Iterator is closed when not exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -46,10 +46,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: false }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-get-err.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-get-err.js index c09e0e152c..18cd722211 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-get-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-get-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-get-err.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-init-iter-get-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Abrupt completion returned by GetIterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -39,8 +39,7 @@ info: | BindingPattern : ArrayBindingPattern - 1. Let iterator be GetIterator(value). - 2. ReturnIfAbrupt(iterator). + 1. Let iterator be ? GetIterator(value). ---*/ var iter = {}; @@ -55,5 +54,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-no-close.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-no-close.js index df031acf1d..1d3d2f16b1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-no-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-init-iter-no-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-no-close.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-init-iter-no-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Iterator is not closed when exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -46,10 +46,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: true }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-name-iter-val.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-name-iter-val.js index 6eb6bd849d..57ddce4eb1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-name-iter-val.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-name-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-name-iter-val.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-name-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding with normal value iteration (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,23 +34,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elem-init.js index 0ed5d56ff1..26bf8f0dcf 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elem-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elem-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-init.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elem-iter.js index 65951baaa8..b43ff3a6c9 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elem-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elem-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-iter.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elision-init.js index 625dadd9ed..9bee0d95f9 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elision-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elision-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-init.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elision-iter.js index aa43eb95f8..329761eaee 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elision-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-elision-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-iter.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-empty-init.js index cf52eb7722..148b900f88 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-empty-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-empty-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-init.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-empty-iter.js index eb10259862..e36c1295b5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-empty-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-empty-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-iter.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-rest-init.js index cf7c9135af..bedf260853 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-rest-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-rest-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-init.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-rest-iter.js index 07cd286bf5..5f22e83500 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-rest-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-rest-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-iter.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-val-null.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-val-null.js index 251c81466a..9521b2e4b3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-val-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-ary-val-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-val-null.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-val-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Nested array destructuring with a null value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -51,8 +51,7 @@ info: | BindingPattern : ArrayBindingPattern - 1. Let iterator be GetIterator(value). - 2. ReturnIfAbrupt(iterator). + 1. Let iterator be ? GetIterator(value). ---*/ async function fn() { @@ -62,5 +61,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-exhausted.js index c31b35584b..832128ec20 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Destructuring initializer with an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,16 +34,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. - 6. If Initializer is present and v is undefined, then + 4. If iteratorRecord.[[done]] is true, let v be undefined. + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-arrow.js index 400f502f78..e70ecfba9a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding does assign name to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,17 +34,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-class.js index 5682379720..3f6f004bf1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,17 +34,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-cover.js index 87c1e95e88..c3353d3c11 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding does assign name to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,17 +34,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-fn.js index 47cd2f68c1..2e170afc33 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,17 +34,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-gen.js index 28263d1e0d..38c2e7c6f8 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,17 +34,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-hole.js index 9084a691d0..bf6e44573e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-hole.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-hole.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-hole.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-hole.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Destructuring initializer with a "hole" (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -33,12 +33,12 @@ info: | [...] 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt - [...] 6. If Initializer is present and v is undefined, then + SingleNameBinding : BindingIdentifier Initializer_opt + [...] 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-skipped.js index 7586cce729..272db39b4c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,13 +34,13 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then [...] 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var initCount = 0; function counter() { diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-throws.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-throws.js index 0a15bf6c94..339293907f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-throws.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Destructuring initializer returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,12 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). ---*/ async function fn() { @@ -53,5 +52,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-undef.js index c26a66e1df..68bb91d46f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-undef.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-undef.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-undef.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Destructuring initializer with an undefined value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,15 +34,15 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-unresolvable.js index 4d90195ec8..bbd279162a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,5 +59,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-complete.js index 90aa918637..668ce3952c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-complete.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-complete.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-complete.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-complete.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding when value iteration completes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,19 +34,19 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-done.js index 936d89bac3..3b95726763 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-done.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-done.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-done.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-done.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,14 +34,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-step-err.js index 7a7e676931..39159deab2 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-step-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-step-err.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Error forwarding when IteratorStep returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). @@ -48,7 +48,7 @@ info: | var g = {}; g[Symbol.iterator] = function() { return { - next: function() { + next() { throw new Test262Error(); } }; @@ -61,5 +61,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-val-err.js index a80a43a4d7..e5ce20f525 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-val-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-val-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val-err.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Error forwarding when IteratorValue returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). @@ -59,7 +59,7 @@ var poisonedValue = Object.defineProperty({}, 'value', { var g = {}; g[Symbol.iterator] = function() { return { - next: function() { + next() { return poisonedValue; } }; @@ -72,5 +72,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-val.js index baf1ab3417..f58ec1b32b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-val.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-id-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,23 +34,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-id-init.js index ec7dfbdd39..4a051632b5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-id.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-id.js index 73797fbcf1..53f0e920ef 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-prop-id-init.js index c1bf5caf93..4fd25a375c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-prop-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-prop-id.js index 24bf014624..28ebb2ab09 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-val-null.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-val-null.js index b0c0d748c5..59b6b5b94a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-val-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-val-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-val-null.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-val-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Nested object destructuring with a null value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -62,5 +62,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-val-undef.js index 63dde3d756..0381260077 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-val-undef.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elem-obj-val-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-val-undef.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-val-undef.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Nested object destructuring with a value of `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -62,5 +62,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision-exhausted.js index e0a1d85eb0..4c2c2b890a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Elision accepts exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision-iter-close.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision-iter-close.js index 1c1fe12e3a..fb6fc16823 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision-iter-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-iter-close.case -// - src/dstr-binding/iter-close/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elision-iter-close.case +// - src/dstr-binding-for-await/iter-close/for-await-of-async-func-var.template /*--- description: The iterator is properly consumed by the destructuring pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision-step-err.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision-step-err.js index 838aafc87c..489f1881c9 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision-step-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-step-err.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elision-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Elision advances iterator and forwards abrupt completions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -54,7 +54,7 @@ info: | ---*/ var following = 0; -var iter =function* () { +var iter = function* () { throw new Test262Error(); following += 1; }(); @@ -66,8 +66,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + assert.sameValue(following, 0, "iterator is properly closed"); + }) .then($DONE, $DONE); - -iter.next(); -assert.sameValue(following, 0, 'Iterator was properly closed.'); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision.js index 64c07e8719..df265c9f83 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Elision advances iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-empty.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-empty.js index c43287a640..05c7a8b7f0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: No iteration occurs for an "empty" array binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-elem.js index afa58a81a3..c340dea34a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-elem.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-elem.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elem.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elem.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest element containing an array BindingElementList pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -47,23 +47,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-elision.js index e29f682722..2175f0bb4f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elision.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest element containing an elision (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-empty.js index f022e2877b..fbb554ca1e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-empty.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest element containing an "empty" array pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-rest.js index 7210eb1e51..537070c14f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-rest.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-ary-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-rest.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest element containing a rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-elision-next-err.js index 27a1c063fa..f7ed0ef28d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-elision-next-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-elision-next-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision-next-err.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision-next-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,5 +55,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-elision.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-elision.js index 7911863e79..7300b65618 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-exhausted.js index 5cf395ff6c..69d8d71c1f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: RestElement applied to an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-iter-close.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-iter-close.js index e58ce4b28b..c21307123b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-iter-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-close.case -// - src/dstr-binding/iter-close/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-close.case +// - src/dstr-binding-for-await/iter-close/for-await-of-async-func-var.template /*--- description: The iterator is properly consumed by the destructuring pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-iter-step-err.js index fcf8a39f44..a191b3f795 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-iter-step-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-iter-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-step-err.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Error forwarding when IteratorStep returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -62,9 +62,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -iter.next(); -assert.sameValue(first, 1); -assert.sameValue(second, 0, 'Iterator is closed following abrupt completion.'); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-iter-val-err.js index 48332e26bb..8f478b47e0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-iter-val-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id-iter-val-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-val-err.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-val-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Error forwarding when IteratorValue returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,7 +55,7 @@ var poisonedValue = Object.defineProperty({}, 'value', { var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return poisonedValue; } }; @@ -68,5 +68,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id.js index 69d0065bd7..cc3fe426cb 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Lone rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-init-ary.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-init-ary.js index b08c8cc90a..43c419a29d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-init-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-init-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-ary.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Reset element (nested array pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-init-id.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-init-id.js index 0725f89b6b..72ccd14585 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-init-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-init-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-id.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Reset element (identifier) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-init-obj.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-init-obj.js index e6b50cd1c9..3900ed2d63 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-init-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-init-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-obj.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Reset element (nested object pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-not-final-ary.js index c990ecf539..aacf641545 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-not-final-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-not-final-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-ary.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest element (array binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-not-final-id.js index db176495ae..8ea77ba47c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-not-final-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-not-final-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-id.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest element (identifier) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-not-final-obj.js index e6602b2a00..6865a4e05b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-not-final-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-not-final-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-obj.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest element (object binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-obj-id.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-obj-id.js index db45d7e2e5..ee673552c3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-obj-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-id.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-obj-prop-id.js index 4803214e57..b908735de9 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-ary-ptrn-rest-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-init-iter-close.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-init-iter-close.js index 3d64352fa2..a46bb256f5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-init-iter-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-init-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-close.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-init-iter-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Iterator is closed when not exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: false }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-init-iter-no-close.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-init-iter-no-close.js index 2a8b27f6d0..bbe81b8ed6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-init-iter-no-close.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-init-iter-no-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-no-close.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-init-iter-no-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Iterator is not closed when exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: true }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-name-iter-val.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-name-iter-val.js index ffb4c03723..bcde52cab1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-name-iter-val.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-name-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-name-iter-val.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-name-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding with normal value iteration (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elem-init.js index b6f692f23b..ecdde48130 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elem-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elem-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-init.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elem-iter.js index 3118d453f3..b2297f9892 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elem-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elem-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-iter.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elision-init.js index 935fbe20b8..1636ea82cd 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elision-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elision-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-init.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elision-iter.js index 279603fa7f..9de35a45ae 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elision-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-elision-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-iter.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-empty-init.js index 32f0130df2..24c8ca7b44 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-empty-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-empty-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-init.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-empty-iter.js index 5893efc900..fab1ca716f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-empty-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-empty-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-iter.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-rest-init.js index 1748701596..98147bc00c 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-rest-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-rest-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-init.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-rest-iter.js index e56dde9f13..be774f8547 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-rest-iter.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-ary-rest-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-iter.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-exhausted.js index 1607455627..4fc8a9ba1f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Destructuring initializer with an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,16 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. - 6. If Initializer is present and v is undefined, then + 4. If iteratorRecord.[[done]] is true, let v be undefined. + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-arrow.js index 966b522507..748c355575 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding does assign name to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-class.js index 3b594b8d76..09ece47eeb 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-cover.js index a04e3fe5a6..6d7f97105f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding does assign name to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-fn.js index 030f4a7beb..29d455e14d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-gen.js index a9ef7113e1..8e4a43b2aa 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-hole.js index 9dc0844557..8a999e323a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-hole.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-hole.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-hole.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-hole.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Destructuring initializer with a "hole" (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -36,12 +36,12 @@ info: | [...] 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt - [...] 6. If Initializer is present and v is undefined, then + SingleNameBinding : BindingIdentifier Initializer_opt + [...] 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-skipped.js index 2e054ddd28..a6fe5c6791 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,13 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then [...] 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var initCount = 0; function counter() { diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-undef.js index 119b954088..09d1e54827 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-undef.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-init-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-undef.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-undef.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Destructuring initializer with an undefined value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,15 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-iter-complete.js index bdf6257fc6..b562fe1127 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-iter-complete.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-iter-complete.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-complete.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-complete.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding when value iteration completes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,19 +37,19 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-iter-done.js index 36f1612d96..d8749af5be 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-iter-done.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-iter-done.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-done.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-done.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,14 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-iter-val.js index b1991f50da..f8b4a2f461 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-iter-val.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-id-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-id-init.js index 3a5c0567b7..5533242f74 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-id.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-id.js index 77989c0c5f..848b47e87b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-prop-id-init.js index 7b2bdf870f..b85770dbec 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-prop-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-prop-id.js index 3b3205f6ac..3449215ff7 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elem-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elision-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elision-exhausted.js index c2a92d6b19..a2adcebcc1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elision-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elision-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Elision accepts exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elision.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elision.js index b214ab9540..c006949e5f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Elision advances iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-empty.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-empty.js index 6eb948798f..d35ffbbfae 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: No iteration occurs for an "empty" array binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-elem.js index cb8f1355f1..e861a2b17a 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-elem.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-elem.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elem.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elem.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest element containing an array BindingElementList pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -50,23 +50,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-elision.js index fc9285fc58..45b829cb17 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elision.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest element containing an elision (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-empty.js index d4523026b0..2e406b6050 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-empty.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest element containing an "empty" array pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-rest.js index 676d705266..4e6d5e1c7d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-rest.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-ary-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-rest.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest element containing a rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-id-elision.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-id-elision.js index 671542740d..17fa0285fc 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-id-elision.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-id-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-id-exhausted.js index 29dab2740e..59f5b16b4b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-id-exhausted.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-id-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-exhausted.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: RestElement applied to an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-id.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-id.js index 34e1663c23..e12f29b907 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Lone rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-init-ary.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-init-ary.js index c6999d3578..f8a840b798 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-init-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-init-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-ary.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Reset element (nested array pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-init-id.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-init-id.js index e9aafea0ef..5e67a8d904 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-init-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-init-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-id.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Reset element (identifier) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-init-obj.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-init-obj.js index fb517fa378..4d201cf5b4 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-init-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-init-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-obj.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Reset element (nested object pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-not-final-ary.js index ffe7b062dc..d1263e0d14 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-not-final-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-not-final-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-ary.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest element (array binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-not-final-id.js index 539c7701ac..4c1f44ccf4 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-not-final-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-not-final-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-id.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest element (identifier) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-not-final-obj.js index 87e714cee0..50ae14fc12 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-not-final-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-not-final-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-obj.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest element (object binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-obj-id.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-obj-id.js index 616cac3882..d014682604 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-obj-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-id.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-obj-prop-id.js index f224e00219..bcfd217805 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-ary-ptrn-rest-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-empty.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-empty.js index 50635bff9f..13722fc1de 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: No property access occurs for an "empty" object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-arrow.js index 12cec7f4ec..c2ca047875 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding assigns `name` to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-class.js index aee417404b..98078587f2 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-cover.js index a09c6b646d..1f15d93204 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-fn.js index 96a25c8d93..2b8c5b9c19 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-gen.js index a7747873cc..776d591db6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-skipped.js index f92c695c1f..3d8ea4b738 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-trailing-comma.js index 35d763515f..94e8194920 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-ary-init.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-ary-init.js index 835b4ac563..b0e17df0fe 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-ary-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-ary-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-init.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Object binding pattern with "nested" array binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-ary-trailing-comma.js index 7afeb0dcdf..321da15b86 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-ary-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-ary-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-ary.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-ary.js index 719d73f6a6..b3843756e6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Object binding pattern with "nested" array binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id-init-skipped.js index 118c1d010a..2e1affe313 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] 3. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id-init.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id-init.js index eee0d11bb4..0e8376cc86 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Binding as specified via property name, identifier, and initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id-trailing-comma.js index ff706f64f3..3195ed5801 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id.js index d060f1b30f..63bf50dda0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Binding as specified via property name and identifier (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-obj-init.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-obj-init.js index a62f5955c2..fb3c945719 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-obj-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-obj-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-init.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Object binding pattern with "nested" object binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-obj.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-obj.js index f531e0e7f3..1bb5bce733 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-prop-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Object binding pattern with "nested" object binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-getter.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-getter.js index 0e3f879f3a..b66863ad6b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-getter.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-getter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-getter.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-getter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Getter is called when obj is being deconstructed to a rest Object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-nested-obj.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-nested-obj.js index 2741c5fc7d..da562ea3b1 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-nested-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-nested-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-nested-obj.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-nested-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-obj-nested-rest.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-obj-nested-rest.js index f675813c1b..9b4002a25f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-obj-nested-rest.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-obj-nested-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-nested-rest.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-nested-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment and object rest desconstruction is allowed in that case. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-obj-own-property.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-obj-own-property.js index c02173fbca..68c6c4ad42 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-obj-own-property.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-obj-own-property.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-own-property.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-own-property.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest object contains just soruce object's own properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-skip-non-enumerable.js index 2f914454a9..5d5dba0d06 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-skip-non-enumerable.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-skip-non-enumerable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-skip-non-enumerable.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-skip-non-enumerable.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest object doesn't contain non-enumerable properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-val-obj.js b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-val-obj.js index 87edd0d287..d52a1b6697 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-val-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-async-obj-ptrn-rest-val-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-val-obj.case -// - src/dstr-binding/default/for-await-of-async-func-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-val-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var-async.template /*--- description: Rest object contains just unextracted data (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-init-null.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-init-null.js index ab9469b3d5..5325842c6b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-init-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-init-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-init-null.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-init-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Value specifed for object binding pattern must be object coercible (null) (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,5 +49,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-init-undefined.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-init-undefined.js index d2026d788d..572ea5d50e 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-init-undefined.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-init-undefined.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-init-undefined.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-init-undefined.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Value specifed for object binding pattern must be object coercible (undefined) (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,5 +49,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-empty.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-empty.js index 802d869fdd..24bb90c5e5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: No property access occurs for an "empty" object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-get-value-err.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-get-value-err.js index 59a250c047..78dcbfa939 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-get-value-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-get-value-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-get-value-err.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-get-value-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Error thrown when accessing the corresponding property of the value object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 4. Let v be GetV(value, propertyName). @@ -56,5 +56,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-arrow.js index 9b3f1da3f6..a4b83541da 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding assigns `name` to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-class.js index 99367ee72d..376637fdd0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-cover.js index 60cec3cf04..e8b4e5c41b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding assigns `name` to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-fn.js index 79c22534b9..cdd2bcf296 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-gen.js index 0c2b31302a..f0f05a1ab5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-skipped.js index ae150b10ca..dfa6faa527 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-throws.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-throws.js index 546834c49a..87a6b2dbae 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-throws.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Error thrown when evaluating the initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then @@ -56,5 +56,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-unresolvable.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-unresolvable.js index c502db5658..b918b2f350 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,5 +59,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-trailing-comma.js index 2ad826dfe1..21c3b2906b 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-list-err.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-list-err.js index f8c8473f5f..7eccde28d8 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-list-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-list-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-list-err.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-list-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Binding property list evaluation is interrupted by an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,7 +55,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -assert.sameValue(initCount, 0); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary-init.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary-init.js index c96936a632..1d80b153b3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-init.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Object binding pattern with "nested" array binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -35,10 +35,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary-trailing-comma.js index 090f991e6d..7aac48f205 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary-value-null.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary-value-null.js index c28b7f0f38..2129067bff 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary-value-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary-value-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-value-null.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-value-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Object binding pattern with "nested" array binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,5 +51,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary.js index 9ca95e6d43..ee616eb044 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Object binding pattern with "nested" array binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-eval-err.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-eval-err.js index 6163b5943b..5dfaec59be 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-eval-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-eval-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-eval-err.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-eval-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Evaluation of property name returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -53,5 +53,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-get-value-err.js index efd46c54a4..0d9f3bd2c5 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-get-value-err.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-get-value-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-get-value-err.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-get-value-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Error thrown when accessing the corresponding property of the value object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. Let v be GetV(value, propertyName). 2. ReturnIfAbrupt(v). @@ -56,7 +56,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -assert.sameValue(initEvalCount, 0); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init-skipped.js index 0fa429ed50..4b6ff735d6 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] 3. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init-throws.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init-throws.js index fdbba6ad72..bb65484058 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init-throws.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Error thrown when evaluating the initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,12 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). ---*/ function thrower() { throw new Test262Error(); @@ -56,5 +55,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init-unresolvable.js index 3992c982de..757bf5574f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,5 +59,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init.js index 378d4cbac1..73707c1ab3 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Binding as specified via property name, identifier, and initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,10 +34,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-trailing-comma.js index e7f454f5de..9f5b13e422 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id.js index 9de2f864f0..cae2c206c7 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Binding as specified via property name and identifier (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,10 +34,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj-init.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj-init.js index fa0b3cf577..3cfedb1345 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj-init.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-init.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Object binding pattern with "nested" object binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -35,10 +35,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj-value-null.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj-value-null.js index ac04f8bbe7..d6230154ef 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj-value-null.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj-value-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-value-null.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-value-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Object binding pattern with "nested" object binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,5 +51,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj-value-undef.js index 0938b44550..d3d8a562ce 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj-value-undef.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj-value-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-value-undef.case -// - src/dstr-binding/error/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-value-undef.case +// - src/dstr-binding-for-await/error/for-await-of-async-func-var.template /*--- description: Object binding pattern with "nested" object binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,5 +51,10 @@ async function fn() { } fn() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj.js index 6079eea226..e66158e634 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-prop-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Object binding pattern with "nested" object binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-getter.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-getter.js index 2dad6f9c20..0216926657 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-getter.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-getter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-getter.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-rest-getter.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Getter is called when obj is being deconstructed to a rest Object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-nested-obj.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-nested-obj.js index 9e94f053c9..f7db9989bd 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-nested-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-nested-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-nested-obj.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-rest-nested-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-obj-nested-rest.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-obj-nested-rest.js index 76e247f6bc..9ff701111d 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-obj-nested-rest.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-obj-nested-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-nested-rest.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-nested-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment and object rest desconstruction is allowed in that case. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-obj-own-property.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-obj-own-property.js index dc4b7135b0..c90cae8de0 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-obj-own-property.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-obj-own-property.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-own-property.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-own-property.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest object contains just soruce object's own properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-skip-non-enumerable.js index c5404d2160..ddbf1c1e3f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-skip-non-enumerable.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-skip-non-enumerable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-skip-non-enumerable.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-rest-skip-non-enumerable.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest object doesn't contain non-enumerable properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-val-obj.js b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-val-obj.js index e6397f6d45..943fa84a7f 100644 --- a/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-val-obj.js +++ b/test/language/statements/for-await-of/async-func-dstr-var-obj-ptrn-rest-val-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-val-obj.case -// - src/dstr-binding/default/for-await-of-async-func-var.template +// - src/dstr-binding-for-await/obj-ptrn-rest-val-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-func-var.template /*--- description: Rest object contains just unextracted data (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-init-iter-close.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-init-iter-close.js index 26eb8f2905..5701efd107 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-init-iter-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-init-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-close.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-init-iter-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Iterator is closed when not exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: false }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-init-iter-get-err.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-init-iter-get-err.js index d9409274ff..17705fef9e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-init-iter-get-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-init-iter-get-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-get-err.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-init-iter-get-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Abrupt completion returned by GetIterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -39,8 +39,7 @@ info: | BindingPattern : ArrayBindingPattern - 1. Let iterator be GetIterator(value). - 2. ReturnIfAbrupt(iterator). + 1. Let iterator be ? GetIterator(value). ---*/ var iter = {}; @@ -55,6 +54,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-init-iter-no-close.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-init-iter-no-close.js index 03e3299dda..ce3016a146 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-init-iter-no-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-init-iter-no-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-no-close.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-init-iter-no-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Iterator is not closed when exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: true }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-name-iter-val.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-name-iter-val.js index f8ed8249f1..31fce01924 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-name-iter-val.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-name-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-name-iter-val.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-name-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding with normal value iteration (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elem-init.js index af0eaac662..0a643bd4b7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elem-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elem-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elem-iter.js index cc85c0612e..c8436c65d6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elem-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elem-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elision-init.js index 5f95a9399d..42176a7f51 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elision-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elision-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elision-iter.js index 26d3265821..2fedcc4c6e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elision-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-elision-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-empty-init.js index 63699ca516..a5c5cd3a6d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-empty-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-empty-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-empty-iter.js index afeee856b3..afdb853f4a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-empty-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-empty-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-rest-init.js index 6778f3a109..fdf8687d6c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-rest-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-rest-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-rest-iter.js index 6fc3f1e7bc..7384d46dbc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-rest-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-rest-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-val-null.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-val-null.js index 08b0984ce5..5d39ebda70 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-val-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-ary-val-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-val-null.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-val-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Nested array destructuring with a null value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -51,8 +51,7 @@ info: | BindingPattern : ArrayBindingPattern - 1. Let iterator be GetIterator(value). - 2. ReturnIfAbrupt(iterator). + 1. Let iterator be ? GetIterator(value). ---*/ async function * gen() { @@ -62,6 +61,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-exhausted.js index 4292a2d2aa..d160dd90cf 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Destructuring initializer with an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,16 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. - 6. If Initializer is present and v is undefined, then + 4. If iteratorRecord.[[done]] is true, let v be undefined. + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-arrow.js index 925db70782..1f37260175 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding does assign name to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-class.js index f0822486da..97dbe80a8f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-cover.js index 1aaf9d3a33..d4119ad7bf 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding does assign name to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-fn.js index e1ea08f359..e1e7af3d46 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-gen.js index 297ee9f624..890fc70ff2 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-hole.js index cd05aad97b..0db5f797cc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-hole.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-hole.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-hole.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-hole.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Destructuring initializer with a "hole" (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -36,12 +36,12 @@ info: | [...] 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt - [...] 6. If Initializer is present and v is undefined, then + SingleNameBinding : BindingIdentifier Initializer_opt + [...] 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-skipped.js index 86afe4ac80..99ad19eaf0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,13 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then [...] 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var initCount = 0; function counter() { diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-throws.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-throws.js index 06bb647b07..7c1aa69447 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-throws.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Destructuring initializer returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,12 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). ---*/ async function * gen() { @@ -53,6 +52,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-undef.js index ef427fdd29..71ca6618d3 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-undef.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-undef.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-undef.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Destructuring initializer with an undefined value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,15 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-unresolvable.js index 49ebff0aec..b75b74cf5c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,6 +59,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-complete.js index 2a9395086d..51b4810271 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-complete.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-complete.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-complete.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-complete.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding when value iteration completes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,19 +37,19 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-done.js index 7aed0b37cb..a886651ddf 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-done.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-done.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-done.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-done.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,14 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-step-err.js index 56503b9946..fe1b8b5021 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-step-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-step-err.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Error forwarding when IteratorStep returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). @@ -48,7 +48,7 @@ info: | var g = {}; g[Symbol.iterator] = function() { return { - next: function() { + next() { throw new Test262Error(); } }; @@ -61,6 +61,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-val-err.js index 8be2a16a10..ee179c99f7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-val-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-val-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val-err.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Error forwarding when IteratorValue returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). @@ -59,7 +59,7 @@ var poisonedValue = Object.defineProperty({}, 'value', { var g = {}; g[Symbol.iterator] = function() { return { - next: function() { + next() { return poisonedValue; } }; @@ -72,6 +72,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-val.js index bf6ec309ac..c6c46c93c2 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-val.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-id-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-id-init.js index e0d1a04385..dccf38fc37 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-id.js index d7c93891f3..2d3c6d2823 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-prop-id-init.js index 36f0e288c6..053fb3d752 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-prop-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-prop-id.js index 85b6d95985..f8a8f520c7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-val-null.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-val-null.js index ebda36b6a7..b2ccc4fffa 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-val-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-val-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-val-null.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-val-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Nested object destructuring with a null value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -62,6 +62,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-val-undef.js index 7f30dcac7a..35ac5d8928 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-val-undef.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elem-obj-val-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-val-undef.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-val-undef.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Nested object destructuring with a value of `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -62,6 +62,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision-exhausted.js index 196fa8c856..3fb2a0cd32 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Elision accepts exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision-iter-close.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision-iter-close.js index 80abd7a031..fd8d14770b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision-iter-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-iter-close.case -// - src/dstr-binding/iter-close/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elision-iter-close.case +// - src/dstr-binding-for-await/iter-close/for-await-of-async-gen-const.template /*--- description: The iterator is properly consumed by the destructuring pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision-step-err.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision-step-err.js index cea351065b..c20cb981a7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision-step-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-step-err.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elision-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Elision advances iterator and forwards abrupt completions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -54,7 +54,7 @@ info: | ---*/ var following = 0; -var iter =function* () { +var iter = function* () { throw new Test262Error(); following += 1; }(); @@ -66,9 +66,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + assert.sameValue(following, 0, "iterator is properly closed"); + }) .then($DONE, $DONE); - - -iter.next(); -assert.sameValue(following, 0, 'Iterator was properly closed.'); diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision.js index b6bc1c31d0..903528725b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Elision advances iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-empty.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-empty.js index dd8987b298..5f3d2528e6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: No iteration occurs for an "empty" array binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-elem.js index 7fd4c0465b..42b56396ba 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-elem.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-elem.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elem.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elem.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest element containing an array BindingElementList pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -50,23 +50,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-elision.js index 0c6fea0228..fb78bf0e5e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest element containing an elision (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-empty.js index 1c800b9ac3..81bc2cbdd0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest element containing an "empty" array pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-rest.js index 371265d1f9..a5837f4700 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-rest.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-ary-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-rest.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest element containing a rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-elision-next-err.js index ed6ab32edb..b7afb57a24 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-elision-next-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-elision-next-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision-next-err.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision-next-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,6 +55,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-elision.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-elision.js index 05d1ed7e9b..f42c20af9c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-exhausted.js index e8a49e6611..9c76f2a5bc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: RestElement applied to an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-iter-close.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-iter-close.js index 45c51309f9..af61e2889a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-iter-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-close.case -// - src/dstr-binding/iter-close/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-close.case +// - src/dstr-binding-for-await/iter-close/for-await-of-async-gen-const.template /*--- description: The iterator is properly consumed by the destructuring pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-iter-step-err.js index a8d4e2584d..7d2f240606 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-iter-step-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-iter-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-step-err.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Error forwarding when IteratorStep returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -62,10 +62,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - - -iter.next(); -assert.sameValue(first, 1); -assert.sameValue(second, 0, 'Iterator is closed following abrupt completion.'); diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-iter-val-err.js index deb85fcb54..a7f05d4c17 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-iter-val-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id-iter-val-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-val-err.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-val-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Error forwarding when IteratorValue returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,7 +55,7 @@ var poisonedValue = Object.defineProperty({}, 'value', { var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return poisonedValue; } }; @@ -68,6 +68,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id.js index 7fab5dee4a..fe9baa8bd6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Lone rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-init-ary.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-init-ary.js index a95b0cf301..7d1ad86a76 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-init-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-init-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Reset element (nested array pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-init-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-init-id.js index 634b007b19..646e7ec996 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-init-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-init-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Reset element (identifier) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-init-obj.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-init-obj.js index bca2b3034d..17bb60da94 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-init-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-init-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Reset element (nested object pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-not-final-ary.js index 83eb75df96..506977174d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-not-final-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-not-final-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest element (array binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-not-final-id.js index 3edb3c6db1..1e575fa418 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-not-final-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-not-final-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest element (identifier) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-not-final-obj.js index 7ff192df0b..143a5e26bc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-not-final-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-not-final-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest element (object binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-obj-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-obj-id.js index 9e09997860..e2e998e58e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-obj-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-obj-prop-id.js index 78f06cd961..2624a59d20 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-ary-ptrn-rest-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-init-iter-close.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-init-iter-close.js index 94d5b939ea..988d61c578 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-init-iter-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-init-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-close.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-init-iter-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Iterator is closed when not exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: false }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-init-iter-no-close.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-init-iter-no-close.js index 6fa1d2c066..4a8a2be3a4 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-init-iter-no-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-init-iter-no-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-no-close.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-init-iter-no-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Iterator is not closed when exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: true }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-name-iter-val.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-name-iter-val.js index 73d3a0b51a..7547f41b87 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-name-iter-val.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-name-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-name-iter-val.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-name-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding with normal value iteration (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elem-init.js index a3a5fc455c..a48a6a17dd 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elem-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elem-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elem-iter.js index d35829005e..3f7aba2e39 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elem-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elem-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elision-init.js index 82ced4fd9f..dffa7bc867 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elision-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elision-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elision-iter.js index 76e27d6642..b040879c67 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elision-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-elision-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-empty-init.js index a32f0d12f0..90dd99c29b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-empty-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-empty-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-empty-iter.js index 5952154252..979825ed0e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-empty-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-empty-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-rest-init.js index 1c2c909982..fd6d66196a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-rest-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-rest-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-rest-iter.js index bee246f414..c46731351a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-rest-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-ary-rest-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-exhausted.js index 8c17b68f41..d1afd52044 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Destructuring initializer with an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,16 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. - 6. If Initializer is present and v is undefined, then + 4. If iteratorRecord.[[done]] is true, let v be undefined. + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-arrow.js index 1977874a42..749d88463a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding does assign name to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-class.js index d60c465b2b..390c3d71cc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-cover.js index 586ee276ad..6e786ee30f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding does assign name to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-fn.js index bf6f1e2b7c..637c55a961 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-gen.js index 3ca26a31e0..82bddc49fb 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-hole.js index b8211c42bf..1dbe43d192 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-hole.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-hole.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-hole.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-hole.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Destructuring initializer with a "hole" (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -36,12 +36,12 @@ info: | [...] 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt - [...] 6. If Initializer is present and v is undefined, then + SingleNameBinding : BindingIdentifier Initializer_opt + [...] 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-skipped.js index bd3ab2b97b..80eab158bf 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,13 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then [...] 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var initCount = 0; function counter() { diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-undef.js index 3c2e209c9b..bf9dd65cf9 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-undef.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-init-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-undef.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-undef.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Destructuring initializer with an undefined value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,15 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-iter-complete.js index 3f7ff1017c..438d816490 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-iter-complete.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-iter-complete.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-complete.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-complete.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding when value iteration completes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,19 +37,19 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-iter-done.js index 96730f7f3d..4e26237f86 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-iter-done.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-iter-done.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-done.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-done.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,14 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-iter-val.js index 0192acef77..48cfa883a1 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-iter-val.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-id-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-id-init.js index 17b6913d49..eb30e258a4 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-id.js index e495d3ecb7..942bc6df1b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-prop-id-init.js index 7257b001d0..1f9b23d541 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-prop-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-prop-id.js index c19221c92c..d7cc7f16a5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elem-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elision-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elision-exhausted.js index 2af9650914..3cb9c38207 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elision-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elision-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Elision accepts exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elision.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elision.js index b6d981909a..d30e65524a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Elision advances iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-empty.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-empty.js index c562e057ac..ccd3bab303 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: No iteration occurs for an "empty" array binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-elem.js index 45086a2ec1..cd76ff486a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-elem.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-elem.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elem.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elem.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest element containing an array BindingElementList pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -50,23 +50,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-elision.js index 661c0a4c8b..c04f5c1ede 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest element containing an elision (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-empty.js index be4dac13fc..896a7a2e72 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest element containing an "empty" array pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-rest.js index 2b44ec30e0..ee353a253c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-rest.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-ary-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-rest.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest element containing a rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-id-elision.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-id-elision.js index 7fdcd7119a..1ea937b560 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-id-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-id-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-id-exhausted.js index e8417f5ad0..3e66922bab 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-id-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-id-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: RestElement applied to an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-id.js index 0d991672b4..ddad5ca97f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Lone rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-init-ary.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-init-ary.js index 685341687c..82d92099c4 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-init-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-init-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Reset element (nested array pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-init-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-init-id.js index b4e256e6a7..ef29973517 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-init-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-init-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Reset element (identifier) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-init-obj.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-init-obj.js index 405d946ee3..eab2400372 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-init-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-init-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Reset element (nested object pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-not-final-ary.js index 2a62d2e5a4..54a2d9b468 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-not-final-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-not-final-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest element (array binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-not-final-id.js index fb0fff162d..b87b8bdcc2 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-not-final-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-not-final-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest element (identifier) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-not-final-obj.js index 3791b544f7..54bb1d3662 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-not-final-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-not-final-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest element (object binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-obj-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-obj-id.js index 993b15abb8..d89902ee82 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-obj-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-obj-prop-id.js index 028a44af38..cc970bf2cb 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-ary-ptrn-rest-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-empty.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-empty.js index 08320a99e5..0875f719ed 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: No property access occurs for an "empty" object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-arrow.js index e1598d40e8..8b525dca41 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding assigns `name` to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-class.js index 137bd77343..4fe3a745d5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-cover.js index 484d3f4fe2..f8a69db36c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-fn.js index ce632b77e9..02b7e3c6f1 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-gen.js index 575b7a0dfb..9d1f48d453 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-skipped.js index 3497ef78c9..f332e06017 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-trailing-comma.js index 5ace88ecf7..53717f0e43 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-ary-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-ary-init.js index d6c5976d5e..b403cc55a8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-ary-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-ary-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Object binding pattern with "nested" array binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-ary-trailing-comma.js index 1f3e852fbc..a9fa356135 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-ary-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-ary-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-ary.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-ary.js index 898d446146..0c7915f1d4 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Object binding pattern with "nested" array binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id-init-skipped.js index 009100990b..e54e793be0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] 3. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id-init.js index 2d65396991..cf677cf738 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Binding as specified via property name, identifier, and initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id-trailing-comma.js index a6fcec9926..65ec325709 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id.js index 99e56ea379..decbac6ac2 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Binding as specified via property name and identifier (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-obj-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-obj-init.js index 095118c761..2220694886 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-obj-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-obj-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Object binding pattern with "nested" object binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-obj.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-obj.js index 404cff1d40..ad767c3837 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-prop-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Object binding pattern with "nested" object binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-getter.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-getter.js index f7a85a7590..4cbc6f46e6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-getter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-getter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-getter.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-getter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Getter is called when obj is being deconstructed to a rest Object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-nested-obj.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-nested-obj.js index e490e3d192..8bb992f7c0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-nested-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-nested-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-nested-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-nested-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-obj-nested-rest.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-obj-nested-rest.js index 78bbe16d3e..9282e01d4e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-obj-nested-rest.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-obj-nested-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-nested-rest.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-nested-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment and object rest desconstruction is allowed in that case. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-obj-own-property.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-obj-own-property.js index c5089cda6e..b287d8119e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-obj-own-property.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-obj-own-property.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-own-property.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-own-property.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest object contains just soruce object's own properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-skip-non-enumerable.js index 074bc0f0c3..0c6882f2a6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-skip-non-enumerable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-skip-non-enumerable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-skip-non-enumerable.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-skip-non-enumerable.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest object doesn't contain non-enumerable properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-val-obj.js b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-val-obj.js index 09a31e9c45..f1eb5f5abd 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-val-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-async-obj-ptrn-rest-val-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-val-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-const-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-val-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const-async.template /*--- description: Rest object contains just unextracted data (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-init-null.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-init-null.js index 6f1aaf9fec..b202e2f7be 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-init-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-init-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-init-null.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-init-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Value specifed for object binding pattern must be object coercible (null) (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,6 +49,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-init-undefined.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-init-undefined.js index 911c21a523..537d3e655b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-init-undefined.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-init-undefined.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-init-undefined.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-init-undefined.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Value specifed for object binding pattern must be object coercible (undefined) (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,6 +49,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-empty.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-empty.js index 056f8c4713..e85219d9bb 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: No property access occurs for an "empty" object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-get-value-err.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-get-value-err.js index 2e158d68c8..6ee0fd4860 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-get-value-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-get-value-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-get-value-err.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-get-value-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Error thrown when accessing the corresponding property of the value object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 4. Let v be GetV(value, propertyName). @@ -56,6 +56,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-arrow.js index f39cc654af..f63ed252c9 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding assigns `name` to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-class.js index 12387e7f10..23300bf423 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-cover.js index 8c8dcfb5a1..903ee6ca54 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding assigns `name` to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-fn.js index 60753e35b7..31b15e2091 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-gen.js index 3c314bfeb0..2f82a8fe1f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-skipped.js index 45bd195da3..7d6fdeac6f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-throws.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-throws.js index 7ce139cb16..59cdd4493c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-throws.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Error thrown when evaluating the initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then @@ -56,6 +56,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-unresolvable.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-unresolvable.js index 14839e6f1c..5e630561aa 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,6 +59,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-trailing-comma.js index 2e0c5b739f..39a4ac9643 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-list-err.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-list-err.js index b1390a8e52..e43b30cba9 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-list-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-list-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-list-err.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-list-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Binding property list evaluation is interrupted by an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,8 +55,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - - -assert.sameValue(initCount, 0); diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary-init.js index 31e080138f..16089ba9e2 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Object binding pattern with "nested" array binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary-trailing-comma.js index 3fda2d6833..0a8710b8dc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary-value-null.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary-value-null.js index dd0be9ae33..2911d4cb85 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary-value-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary-value-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-value-null.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-value-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Object binding pattern with "nested" array binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,6 +51,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary.js index 2870f17913..12127f395e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Object binding pattern with "nested" array binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-eval-err.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-eval-err.js index 05bd8c2f75..4756fea455 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-eval-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-eval-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-eval-err.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-eval-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Evaluation of property name returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -53,6 +53,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-get-value-err.js index fe9f3e29fb..6ef2f58b4e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-get-value-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-get-value-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-get-value-err.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-get-value-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Error thrown when accessing the corresponding property of the value object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. Let v be GetV(value, propertyName). 2. ReturnIfAbrupt(v). @@ -56,8 +56,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - - -assert.sameValue(initEvalCount, 0); diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init-skipped.js index 9bcec7b156..2b6c7a97e9 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] 3. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init-throws.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init-throws.js index 6b3e5569d4..c742ffb7d2 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init-throws.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Error thrown when evaluating the initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,12 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). ---*/ function thrower() { throw new Test262Error(); @@ -56,6 +55,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init-unresolvable.js index 60b8d6f3e2..5d5fded794 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,6 +59,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init.js index e67c67c396..019c7a5376 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Binding as specified via property name, identifier, and initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-trailing-comma.js index b69fa747fc..c68a7116a0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id.js index 4f874cf317..e256317b59 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Binding as specified via property name and identifier (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj-init.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj-init.js index ac3097d1ac..fa4f9f5ec6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-init.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Object binding pattern with "nested" object binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj-value-null.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj-value-null.js index 8d06d6c94c..16a6db2977 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj-value-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj-value-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-value-null.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-value-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Object binding pattern with "nested" object binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,6 +51,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj-value-undef.js index f255baac25..12aa1d43bc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj-value-undef.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj-value-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-value-undef.case -// - src/dstr-binding/error/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-value-undef.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-const.template /*--- description: Object binding pattern with "nested" object binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,6 +51,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); - diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj.js index a280d6deeb..685afb2311 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-prop-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Object binding pattern with "nested" object binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-getter.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-getter.js index ebc5eb16c0..3285763ffb 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-getter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-getter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-getter.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-rest-getter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Getter is called when obj is being deconstructed to a rest Object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-nested-obj.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-nested-obj.js index 07004dea4f..8f8f338c56 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-nested-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-nested-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-nested-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-rest-nested-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-obj-nested-rest.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-obj-nested-rest.js index b70de9e475..cefb9ba33c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-obj-nested-rest.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-obj-nested-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-nested-rest.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-nested-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment and object rest desconstruction is allowed in that case. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-obj-own-property.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-obj-own-property.js index 874d6abd44..e9ac410a5a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-obj-own-property.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-obj-own-property.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-own-property.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-own-property.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest object contains just soruce object's own properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-skip-non-enumerable.js index 7d76cf75d9..fc238c55c6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-skip-non-enumerable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-skip-non-enumerable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-skip-non-enumerable.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-rest-skip-non-enumerable.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest object doesn't contain non-enumerable properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-val-obj.js b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-val-obj.js index f45b3c2952..a43c7411b1 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-val-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-const-obj-ptrn-rest-val-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-val-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-const.template +// - src/dstr-binding-for-await/obj-ptrn-rest-val-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-const.template /*--- description: Rest object contains just unextracted data (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-init-iter-close.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-init-iter-close.js index 7f2ce824d3..41d78b1077 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-init-iter-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-init-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-close.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-init-iter-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Iterator is closed when not exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: false }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-init-iter-get-err.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-init-iter-get-err.js index b5430dee8c..4904a73882 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-init-iter-get-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-init-iter-get-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-get-err.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-init-iter-get-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Abrupt completion returned by GetIterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -39,8 +39,7 @@ info: | BindingPattern : ArrayBindingPattern - 1. Let iterator be GetIterator(value). - 2. ReturnIfAbrupt(iterator). + 1. Let iterator be ? GetIterator(value). ---*/ var iter = {}; @@ -55,5 +54,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-init-iter-no-close.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-init-iter-no-close.js index 24931586ab..4b9bff7913 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-init-iter-no-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-init-iter-no-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-no-close.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-init-iter-no-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Iterator is not closed when exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: true }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-name-iter-val.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-name-iter-val.js index 81a3c72896..6da083bfaa 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-name-iter-val.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-name-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-name-iter-val.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-name-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding with normal value iteration (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elem-init.js index f6f15d1c3e..a2983cd8ba 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elem-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elem-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elem-iter.js index 637607a06c..73cbc8a9bb 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elem-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elem-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elision-init.js index 66de3a27df..bfef9fd3e5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elision-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elision-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elision-iter.js index 88bdb7b933..251680f04e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elision-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-elision-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-empty-init.js index d8b0a43ac7..1ebbc56325 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-empty-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-empty-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-empty-iter.js index da355666af..ad5c805e46 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-empty-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-empty-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-rest-init.js index a46b20a9ef..dfbe84b1e4 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-rest-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-rest-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-rest-iter.js index 3f8d5d837a..1d87383393 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-rest-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-rest-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-val-null.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-val-null.js index 58eef04c7f..1436e66469 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-val-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-ary-val-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-val-null.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-val-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Nested array destructuring with a null value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -51,8 +51,7 @@ info: | BindingPattern : ArrayBindingPattern - 1. Let iterator be GetIterator(value). - 2. ReturnIfAbrupt(iterator). + 1. Let iterator be ? GetIterator(value). ---*/ async function * gen() { @@ -62,5 +61,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-exhausted.js index 4608fe25c9..20c5e52a7d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Destructuring initializer with an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,16 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. - 6. If Initializer is present and v is undefined, then + 4. If iteratorRecord.[[done]] is true, let v be undefined. + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-arrow.js index eea3724be2..cddbb8d5b1 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding does assign name to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-class.js index 296fe71fbc..3b3988fb1e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js index c155f58a9d..86b8c6b2c5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding does assign name to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-fn.js index b9048334ea..8e04c770a0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-gen.js index 33b9451bbc..937825c24b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-hole.js index a02b27a0d6..e4c86e2f48 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-hole.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-hole.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-hole.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-hole.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Destructuring initializer with a "hole" (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -36,12 +36,12 @@ info: | [...] 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt - [...] 6. If Initializer is present and v is undefined, then + SingleNameBinding : BindingIdentifier Initializer_opt + [...] 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-skipped.js index 26fa7ba869..cdd537836f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,13 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then [...] 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var initCount = 0; function counter() { diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-throws.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-throws.js index 9d186db3cc..751d1bf2fe 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-throws.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Destructuring initializer returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,12 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). ---*/ async function * gen() { @@ -53,5 +52,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-undef.js index 816f0cce02..4732b66d72 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-undef.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-undef.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-undef.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Destructuring initializer with an undefined value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,15 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-unresolvable.js index ad09d560f4..33aca3f6cd 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,5 +59,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-complete.js index 9a98dcaf3c..a9862f4397 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-complete.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-complete.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-complete.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-complete.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding when value iteration completes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,19 +37,19 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-done.js index 4b3f91a4cc..d6d5d83bb8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-done.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-done.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-done.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-done.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,14 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-step-err.js index 54920fc280..e6a31a611c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-step-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-step-err.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Error forwarding when IteratorStep returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). @@ -48,7 +48,7 @@ info: | var g = {}; g[Symbol.iterator] = function() { return { - next: function() { + next() { throw new Test262Error(); } }; @@ -61,5 +61,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-val-err.js index f953460b6e..e96774cfc7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-val-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-val-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val-err.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Error forwarding when IteratorValue returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). @@ -59,7 +59,7 @@ var poisonedValue = Object.defineProperty({}, 'value', { var g = {}; g[Symbol.iterator] = function() { return { - next: function() { + next() { return poisonedValue; } }; @@ -72,5 +72,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-val.js index 854f9a38fa..5aca6af1e0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-val.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-id-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-id-init.js index 25f87afe59..445f09924b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-id.js index 030fc748c5..51a7992597 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-prop-id-init.js index 9ea084e18d..6b5b30c291 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-prop-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-prop-id.js index d7ada5cd1d..8af127470d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-val-null.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-val-null.js index 99e52283e1..dcc8626666 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-val-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-val-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-val-null.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-val-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Nested object destructuring with a null value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -62,5 +62,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-val-undef.js index b3d2ecbd67..e865f9692b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-val-undef.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elem-obj-val-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-val-undef.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-val-undef.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Nested object destructuring with a value of `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -62,5 +62,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision-exhausted.js index 438cbf18ba..27aca3cdf8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Elision accepts exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision-iter-close.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision-iter-close.js index bec872509a..58306e76b8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision-iter-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-iter-close.case -// - src/dstr-binding/iter-close/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elision-iter-close.case +// - src/dstr-binding-for-await/iter-close/for-await-of-async-gen-let.template /*--- description: The iterator is properly consumed by the destructuring pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision-step-err.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision-step-err.js index ef7ee36861..5a7ce09722 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision-step-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-step-err.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elision-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Elision advances iterator and forwards abrupt completions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -54,7 +54,7 @@ info: | ---*/ var following = 0; -var iter =function* () { +var iter = function* () { throw new Test262Error(); following += 1; }(); @@ -66,8 +66,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + assert.sameValue(following, 0, "iterator is properly closed"); + }) .then($DONE, $DONE); - -iter.next(); -assert.sameValue(following, 0, 'Iterator was properly closed.'); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision.js index b5e4bc53c6..1a70969e18 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Elision advances iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-empty.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-empty.js index 9e5f2785ae..04e9a70cb8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: No iteration occurs for an "empty" array binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-elem.js index ae7d7560d0..70bc7fd158 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-elem.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-elem.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elem.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elem.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest element containing an array BindingElementList pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -50,23 +50,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-elision.js index 810feed77d..03d0aa50ea 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest element containing an elision (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-empty.js index 193c6a765d..c8205348be 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest element containing an "empty" array pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-rest.js index 070106dd6c..7fbd9c56ae 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-rest.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-ary-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-rest.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest element containing a rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-elision-next-err.js index be6b5fd3ca..4f89b55a15 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-elision-next-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-elision-next-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision-next-err.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision-next-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,5 +55,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-elision.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-elision.js index f82bd2af95..199e53651f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-exhausted.js index bb405c2f7d..8a1fc26d39 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: RestElement applied to an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-iter-close.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-iter-close.js index ba369dde4c..8cd3f727f8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-iter-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-close.case -// - src/dstr-binding/iter-close/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-close.case +// - src/dstr-binding-for-await/iter-close/for-await-of-async-gen-let.template /*--- description: The iterator is properly consumed by the destructuring pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-iter-step-err.js index 1c4fa51cd7..9be4234a2a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-iter-step-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-iter-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-step-err.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Error forwarding when IteratorStep returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -62,9 +62,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -iter.next(); -assert.sameValue(first, 1); -assert.sameValue(second, 0, 'Iterator is closed following abrupt completion.'); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-iter-val-err.js index 634306e0c8..40a3cecf20 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-iter-val-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id-iter-val-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-val-err.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-val-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Error forwarding when IteratorValue returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,7 +55,7 @@ var poisonedValue = Object.defineProperty({}, 'value', { var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return poisonedValue; } }; @@ -68,5 +68,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id.js index 1561b01d39..1a6526df1f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Lone rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-init-ary.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-init-ary.js index 0c2c9de210..b1c6a70c57 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-init-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-init-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Reset element (nested array pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-init-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-init-id.js index 0a7410e643..79bf21ef7e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-init-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-init-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Reset element (identifier) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-init-obj.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-init-obj.js index e25751802f..9563a8d111 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-init-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-init-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Reset element (nested object pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-not-final-ary.js index acc348f312..a7a37017d9 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-not-final-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-not-final-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest element (array binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-not-final-id.js index 5598b78327..e17ad0b1f2 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-not-final-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-not-final-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest element (identifier) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-not-final-obj.js index a883cce35e..dcc9284da1 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-not-final-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-not-final-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest element (object binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-obj-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-obj-id.js index e0511618b4..c0b02bec7d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-obj-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-obj-prop-id.js index 688d5a5314..0bc1867c34 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-ary-ptrn-rest-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-init-iter-close.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-init-iter-close.js index 105b085dc1..fa5d8addbc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-init-iter-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-init-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-close.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-init-iter-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Iterator is closed when not exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: false }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-init-iter-no-close.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-init-iter-no-close.js index ef51abc67d..1c5819f3bd 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-init-iter-no-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-init-iter-no-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-no-close.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-init-iter-no-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Iterator is not closed when exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: true }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-name-iter-val.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-name-iter-val.js index 588330ddb6..e631def198 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-name-iter-val.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-name-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-name-iter-val.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-name-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding with normal value iteration (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elem-init.js index 01d9eb38e1..018a5bfaee 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elem-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elem-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elem-iter.js index 3cd0e902b0..84dead268d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elem-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elem-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elision-init.js index afe206ba12..2f19d481fc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elision-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elision-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elision-iter.js index 647aa4cd04..64ad8a47d3 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elision-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-elision-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-empty-init.js index d83c4312ac..16a9eb3a72 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-empty-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-empty-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-empty-iter.js index 74d126e4f7..f3ef73fc7f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-empty-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-empty-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-rest-init.js index 7cbf95219c..de78f1d039 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-rest-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-rest-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-rest-iter.js index 790e24cc71..333d749626 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-rest-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-ary-rest-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-exhausted.js index c3842c1cdf..7b68ed272b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Destructuring initializer with an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,16 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. - 6. If Initializer is present and v is undefined, then + 4. If iteratorRecord.[[done]] is true, let v be undefined. + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-arrow.js index 3ab8334626..cee17b6c88 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding does assign name to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-class.js index e24437e7a3..5d4190cb16 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-cover.js index a78c9d193d..9c48270503 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding does assign name to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-fn.js index 0603be91c0..408c6cea8d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-gen.js index f9e825dc52..6e319e753d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-hole.js index a9d94cb0b2..46484a884b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-hole.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-hole.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-hole.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-hole.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Destructuring initializer with a "hole" (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -36,12 +36,12 @@ info: | [...] 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt - [...] 6. If Initializer is present and v is undefined, then + SingleNameBinding : BindingIdentifier Initializer_opt + [...] 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-skipped.js index 2c2093fa51..b1acd7a9e4 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,13 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then [...] 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var initCount = 0; function counter() { diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-undef.js index 3b9a6f3410..bdf416115e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-undef.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-init-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-undef.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-undef.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Destructuring initializer with an undefined value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,15 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-iter-complete.js index 122e1c1672..24f782ea76 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-iter-complete.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-iter-complete.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-complete.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-complete.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding when value iteration completes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,19 +37,19 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-iter-done.js index a9fb3f0abb..e44eacafb4 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-iter-done.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-iter-done.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-done.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-done.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,14 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-iter-val.js index d31c94dcb2..ae98f3ab0c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-iter-val.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-id-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-id-init.js index 06f12fa124..8a9b9b72b0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-id.js index 557a31fd68..6f9d6f1e92 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-prop-id-init.js index e984783260..46b9a5c750 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-prop-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-prop-id.js index 71506bbe6a..91479693c9 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elem-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elision-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elision-exhausted.js index 7edd76f6e5..97f6953fd5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elision-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elision-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Elision accepts exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elision.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elision.js index 2871051b4f..250175f264 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Elision advances iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-empty.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-empty.js index 9de73e04e5..1e649dce01 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: No iteration occurs for an "empty" array binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-elem.js index ccb2c1f1a5..3f6e5760b8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-elem.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-elem.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elem.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elem.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest element containing an array BindingElementList pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -50,23 +50,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-elision.js index df112ef2cb..a8d48faa82 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest element containing an elision (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-empty.js index f39b0cdc0c..1f0450dc0c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest element containing an "empty" array pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-rest.js index f5e808c784..c4035df6c5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-rest.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-ary-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-rest.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest element containing a rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-id-elision.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-id-elision.js index 491081feec..09584fcb81 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-id-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-id-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-id-exhausted.js index b267cda1d0..9437daf71a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-id-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-id-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: RestElement applied to an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-id.js index 07fe2e0361..cd48b905a4 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Lone rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-init-ary.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-init-ary.js index 63237664fc..43baa92fab 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-init-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-init-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Reset element (nested array pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-init-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-init-id.js index ebdba4e66e..a771249321 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-init-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-init-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Reset element (identifier) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-init-obj.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-init-obj.js index df2ea0c015..5c9e29d8f6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-init-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-init-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Reset element (nested object pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-not-final-ary.js index b06ced0e10..38b1394534 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-not-final-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-not-final-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest element (array binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-not-final-id.js index 46d33ca952..1f96f5147b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-not-final-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-not-final-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest element (identifier) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-not-final-obj.js index 6e1ac77707..0b0a47369d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-not-final-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-not-final-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest element (object binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-obj-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-obj-id.js index ec4d6b3723..43938aacfc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-obj-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-obj-prop-id.js index f465a8f8d4..17207788c3 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-ary-ptrn-rest-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-empty.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-empty.js index 5c04bbf9d5..5d4ba5dbde 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: No property access occurs for an "empty" object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-arrow.js index 8e95c3d7a1..0b08285d9f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding assigns `name` to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-class.js index d74ecb6984..7a14a27d8f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-cover.js index bfd6096848..1a636e1f20 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-fn.js index e613678b4d..1622b8d740 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-gen.js index f6d474be34..d8a9002f15 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-skipped.js index aebc133d72..f5527a1aa7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-trailing-comma.js index e2554571c9..6a0d347502 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-ary-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-ary-init.js index 8645bf1bdb..35c0d004e0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-ary-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-ary-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Object binding pattern with "nested" array binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-ary-trailing-comma.js index 2b771ad15f..7b57c3a082 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-ary-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-ary-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-ary.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-ary.js index 048d1135f7..5ced064edc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Object binding pattern with "nested" array binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id-init-skipped.js index 76ffc91b03..1ef8f8b010 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] 3. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id-init.js index ab25220a3d..2b81755e77 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Binding as specified via property name, identifier, and initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id-trailing-comma.js index 42942794bb..9ea81dda0e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id.js index b30295d801..87b0587362 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Binding as specified via property name and identifier (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-obj-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-obj-init.js index 66c05e0ce2..f4ef8b0af0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-obj-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-obj-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Object binding pattern with "nested" object binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-obj.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-obj.js index 431b5aa01a..927807d33f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-prop-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Object binding pattern with "nested" object binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-getter.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-getter.js index 7bc9307bb9..497a95c8ed 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-getter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-getter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-getter.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-getter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Getter is called when obj is being deconstructed to a rest Object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-nested-obj.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-nested-obj.js index 03f9d10606..d2539313d5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-nested-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-nested-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-nested-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-nested-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-obj-nested-rest.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-obj-nested-rest.js index 0853db839f..c0f58913f2 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-obj-nested-rest.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-obj-nested-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-nested-rest.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-nested-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment and object rest desconstruction is allowed in that case. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-obj-own-property.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-obj-own-property.js index 77e6c82678..0b54ea246b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-obj-own-property.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-obj-own-property.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-own-property.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-own-property.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest object contains just soruce object's own properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-skip-non-enumerable.js index ead8aa0eb3..03c817114e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-skip-non-enumerable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-skip-non-enumerable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-skip-non-enumerable.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-skip-non-enumerable.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest object doesn't contain non-enumerable properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-val-obj.js b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-val-obj.js index 1d941ef790..72ffe96188 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-val-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-async-obj-ptrn-rest-val-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-val-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-let-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-val-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let-async.template /*--- description: Rest object contains just unextracted data (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-init-null.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-init-null.js index 34dde4ad40..ebeeadc839 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-init-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-init-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-init-null.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-init-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Value specifed for object binding pattern must be object coercible (null) (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,5 +49,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-init-undefined.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-init-undefined.js index fdac18e5cf..5965925c62 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-init-undefined.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-init-undefined.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-init-undefined.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-init-undefined.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Value specifed for object binding pattern must be object coercible (undefined) (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,5 +49,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-empty.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-empty.js index 999c394f8a..3db9f48622 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: No property access occurs for an "empty" object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-get-value-err.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-get-value-err.js index c3a436c71a..b5352aff5a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-get-value-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-get-value-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-get-value-err.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-get-value-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Error thrown when accessing the corresponding property of the value object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 4. Let v be GetV(value, propertyName). @@ -56,5 +56,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-arrow.js index dc4f8f4354..630b98d2d7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding assigns `name` to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-class.js index ea6be8e5e3..bcd2faf491 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-cover.js index 41dd6d9d48..fe011cd94a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding assigns `name` to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-fn.js index 357b0eb1f0..9c69331efc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-gen.js index 5d6d2e8f60..428770a315 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-skipped.js index b2f558310c..9099555ac3 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-throws.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-throws.js index c4c4b667ca..2d1f3ec801 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-throws.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Error thrown when evaluating the initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then @@ -56,5 +56,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-unresolvable.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-unresolvable.js index f8144bc174..60ee189151 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,5 +59,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-trailing-comma.js index 96911f79dd..d2f2dee7a8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-list-err.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-list-err.js index bb9a55a527..845ccdd651 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-list-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-list-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-list-err.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-list-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Binding property list evaluation is interrupted by an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,7 +55,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -assert.sameValue(initCount, 0); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary-init.js index fbb7ae3d5c..51a77613ca 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Object binding pattern with "nested" array binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary-trailing-comma.js index ee83b7150a..431e660ff5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary-value-null.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary-value-null.js index 36873e5b13..204d2efda2 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary-value-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary-value-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-value-null.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-value-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Object binding pattern with "nested" array binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,5 +51,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary.js index bf66995da8..ec3d06a354 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Object binding pattern with "nested" array binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-eval-err.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-eval-err.js index 11b33ff65f..c49ffa8fc7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-eval-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-eval-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-eval-err.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-eval-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Evaluation of property name returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -53,5 +53,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-get-value-err.js index 7ee5d99b6d..8da6bffca7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-get-value-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-get-value-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-get-value-err.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-get-value-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Error thrown when accessing the corresponding property of the value object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. Let v be GetV(value, propertyName). 2. ReturnIfAbrupt(v). @@ -56,7 +56,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -assert.sameValue(initEvalCount, 0); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init-skipped.js index 79caadb22e..58dc504d00 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] 3. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init-throws.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init-throws.js index 7888a773d6..1585043af8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init-throws.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Error thrown when evaluating the initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,12 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). ---*/ function thrower() { throw new Test262Error(); @@ -56,5 +55,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init-unresolvable.js index 2bcbb2f3ab..f50edf3e09 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,5 +59,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init.js index 45c7ae9239..a7c72aeb69 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Binding as specified via property name, identifier, and initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-trailing-comma.js index e2fa16843c..2379be6d4e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id.js index 962877e2f3..bf7c9cc4b8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Binding as specified via property name and identifier (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj-init.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj-init.js index aa4744af8a..1f59a1115b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-init.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Object binding pattern with "nested" object binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj-value-null.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj-value-null.js index ee2d6245d2..b93ed1deb7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj-value-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj-value-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-value-null.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-value-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Object binding pattern with "nested" object binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,5 +51,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj-value-undef.js index 8cf6ea33ae..00fd8bf1b8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj-value-undef.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj-value-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-value-undef.case -// - src/dstr-binding/error/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-value-undef.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-let.template /*--- description: Object binding pattern with "nested" object binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,5 +51,10 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj.js index 4f1c4ce538..3a8ed9ee6a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-prop-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Object binding pattern with "nested" object binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-getter.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-getter.js index f29ee0d310..106588bfe8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-getter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-getter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-getter.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-rest-getter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Getter is called when obj is being deconstructed to a rest Object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-nested-obj.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-nested-obj.js index 8dad546a99..3689765563 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-nested-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-nested-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-nested-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-rest-nested-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-obj-nested-rest.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-obj-nested-rest.js index a8a3db625c..06b449bd3e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-obj-nested-rest.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-obj-nested-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-nested-rest.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-nested-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment and object rest desconstruction is allowed in that case. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-obj-own-property.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-obj-own-property.js index 5bdee94c5e..8c451fc5a7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-obj-own-property.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-obj-own-property.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-own-property.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-own-property.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest object contains just soruce object's own properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-skip-non-enumerable.js index c46f6a267f..92dd4d8c1c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-skip-non-enumerable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-skip-non-enumerable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-skip-non-enumerable.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-rest-skip-non-enumerable.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest object doesn't contain non-enumerable properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-val-obj.js b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-val-obj.js index 12e5e48d45..486a915ac5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-val-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-let-obj-ptrn-rest-val-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-val-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-let.template +// - src/dstr-binding-for-await/obj-ptrn-rest-val-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-let.template /*--- description: Rest object contains just unextracted data (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-init-iter-close.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-init-iter-close.js index 8b3887938d..f422b11b8e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-init-iter-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-init-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-close.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-init-iter-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Iterator is closed when not exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -46,10 +46,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: false }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-init-iter-get-err.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-init-iter-get-err.js index 53f66b170e..2113f66e21 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-init-iter-get-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-init-iter-get-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-get-err.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-init-iter-get-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Abrupt completion returned by GetIterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -39,8 +39,7 @@ info: | BindingPattern : ArrayBindingPattern - 1. Let iterator be GetIterator(value). - 2. ReturnIfAbrupt(iterator). + 1. Let iterator be ? GetIterator(value). ---*/ var iter = {}; @@ -55,6 +54,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-init-iter-no-close.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-init-iter-no-close.js index b75e766d1c..419c0a51f3 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-init-iter-no-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-init-iter-no-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-no-close.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-init-iter-no-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Iterator is not closed when exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -46,10 +46,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: true }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-name-iter-val.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-name-iter-val.js index 7c7e4070e9..10781c9c66 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-name-iter-val.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-name-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-name-iter-val.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-name-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding with normal value iteration (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,23 +34,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elem-init.js index cb65260053..a941c11047 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elem-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elem-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elem-iter.js index ee93351f39..6bcad390be 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elem-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elem-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elision-init.js index 468f3ae51d..8a56edc671 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elision-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elision-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elision-iter.js index d9075265e4..420e6a360c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elision-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-elision-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-empty-init.js index 656c29412a..b579f35429 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-empty-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-empty-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-empty-iter.js index 18267654c6..2692f01fc5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-empty-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-empty-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-rest-init.js index 860188e6ce..187f1aeb36 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-rest-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-rest-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-rest-iter.js index 2f2cd45d65..bd259c156b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-rest-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-rest-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-val-null.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-val-null.js index 0676e7df69..5f2386b970 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-val-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-ary-val-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-val-null.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-val-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Nested array destructuring with a null value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -51,8 +51,7 @@ info: | BindingPattern : ArrayBindingPattern - 1. Let iterator be GetIterator(value). - 2. ReturnIfAbrupt(iterator). + 1. Let iterator be ? GetIterator(value). ---*/ async function * gen() { @@ -62,6 +61,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-exhausted.js index 0aca3d4caa..7860f017dd 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Destructuring initializer with an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,16 +34,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. - 6. If Initializer is present and v is undefined, then + 4. If iteratorRecord.[[done]] is true, let v be undefined. + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-arrow.js index 724965a17e..76ffafb2c9 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding does assign name to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,17 +34,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-class.js index 12887a6e97..48f7f8a938 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,17 +34,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-cover.js index ac67c794ce..6cbf484d71 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding does assign name to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,17 +34,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-fn.js index 4a468f0aa2..58d8eb56fb 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,17 +34,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-gen.js index c5d34a6b68..7d904485e4 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,17 +34,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-hole.js index d6d5a7e2d1..823911204e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-hole.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-hole.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-hole.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-hole.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Destructuring initializer with a "hole" (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -33,12 +33,12 @@ info: | [...] 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt - [...] 6. If Initializer is present and v is undefined, then + SingleNameBinding : BindingIdentifier Initializer_opt + [...] 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-skipped.js index 20260c6407..0b6770d1d7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,13 +34,13 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then [...] 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var initCount = 0; function counter() { diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-throws.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-throws.js index e7c78ecaa5..230f32f0e1 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-throws.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Destructuring initializer returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,12 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). ---*/ async function * gen() { @@ -53,6 +52,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-undef.js index c0cab837b6..7ce243c032 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-undef.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-undef.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-undef.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Destructuring initializer with an undefined value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,15 +34,15 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-unresolvable.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-unresolvable.js index 174882ee59..d9042814da 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,6 +59,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-complete.js index ba79edf715..63ac7d05ff 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-complete.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-complete.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-complete.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-complete.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding when value iteration completes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,19 +34,19 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-done.js index 371554bfc4..7554df592b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-done.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-done.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-done.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-done.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,14 +34,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-step-err.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-step-err.js index 9c0461c2e8..e0088da1c4 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-step-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-step-err.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Error forwarding when IteratorStep returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). @@ -48,7 +48,7 @@ info: | var g = {}; g[Symbol.iterator] = function() { return { - next: function() { + next() { throw new Test262Error(); } }; @@ -61,6 +61,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-val-err.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-val-err.js index 01dfb67cfd..aa60786906 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-val-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-val-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val-err.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Error forwarding when IteratorValue returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). @@ -59,7 +59,7 @@ var poisonedValue = Object.defineProperty({}, 'value', { var g = {}; g[Symbol.iterator] = function() { return { - next: function() { + next() { return poisonedValue; } }; @@ -72,6 +72,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-val.js index 3eb794c7b1..5deb10c628 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-val.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-id-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,23 +34,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-id-init.js index 525d7d247a..373d4c9ada 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-id.js index a38669b2de..6793eb93c6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-prop-id-init.js index 06278958b1..3a6151a5c6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-prop-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-prop-id.js index 53761b1724..f866459500 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-val-null.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-val-null.js index f35a0f6936..d8d05a8c7d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-val-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-val-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-val-null.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-val-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Nested object destructuring with a null value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -62,6 +62,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-val-undef.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-val-undef.js index 81ba2fd0fc..d90d72d5f1 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-val-undef.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elem-obj-val-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-val-undef.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-val-undef.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Nested object destructuring with a value of `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then [...] @@ -62,6 +62,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision-exhausted.js index 51f9c7c64e..2913f372be 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Elision accepts exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision-iter-close.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision-iter-close.js index c73d7f3024..71f956e2eb 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision-iter-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-iter-close.case -// - src/dstr-binding/iter-close/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elision-iter-close.case +// - src/dstr-binding-for-await/iter-close/for-await-of-async-gen-var.template /*--- description: The iterator is properly consumed by the destructuring pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision-step-err.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision-step-err.js index e3853f3bd2..3a97a7e5d9 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision-step-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-step-err.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elision-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Elision advances iterator and forwards abrupt completions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -54,7 +54,7 @@ info: | ---*/ var following = 0; -var iter =function* () { +var iter = function* () { throw new Test262Error(); following += 1; }(); @@ -66,9 +66,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + assert.sameValue(following, 0, "iterator is properly closed"); + }) .then($DONE, $DONE); - -iter.next(); -assert.sameValue(following, 0, 'Iterator was properly closed.'); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision.js index 62927c2c45..b85a18d081 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Elision advances iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-empty.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-empty.js index 0af3dc0534..3b02785133 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: No iteration occurs for an "empty" array binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-elem.js index a61804c91b..9da29fb556 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-elem.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-elem.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elem.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elem.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest element containing an array BindingElementList pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -47,23 +47,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-elision.js index 5fd82a2a3b..97e70ce83e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest element containing an elision (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-empty.js index e087d0c083..5f4333d716 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest element containing an "empty" array pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-rest.js index 6c1965e63b..6329a9e5f5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-rest.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-ary-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-rest.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest element containing a rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-elision-next-err.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-elision-next-err.js index 63a3b6137f..6b2db24e62 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-elision-next-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-elision-next-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision-next-err.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision-next-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,6 +55,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-elision.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-elision.js index 56a55c3308..bfcaeccccd 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-exhausted.js index deeb8a2226..69d7ace52a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: RestElement applied to an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-iter-close.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-iter-close.js index 7366db129e..ff17a59707 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-iter-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-close.case -// - src/dstr-binding/iter-close/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-close.case +// - src/dstr-binding-for-await/iter-close/for-await-of-async-gen-var.template /*--- description: The iterator is properly consumed by the destructuring pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-iter-step-err.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-iter-step-err.js index 3469341af9..587ed3a78a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-iter-step-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-iter-step-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-step-err.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-step-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Error forwarding when IteratorStep returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -62,10 +62,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -iter.next(); -assert.sameValue(first, 1); -assert.sameValue(second, 0, 'Iterator is closed following abrupt completion.'); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-iter-val-err.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-iter-val-err.js index c50287ea69..fa2d701478 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-iter-val-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id-iter-val-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-iter-val-err.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-iter-val-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Error forwarding when IteratorValue returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,7 +55,7 @@ var poisonedValue = Object.defineProperty({}, 'value', { var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return poisonedValue; } }; @@ -68,6 +68,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id.js index 3d6e936f79..2331fd6ab4 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Lone rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-init-ary.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-init-ary.js index 7cab299377..a463b99bd9 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-init-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-init-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Reset element (nested array pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-init-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-init-id.js index 5ea538a369..b785029bf6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-init-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-init-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Reset element (identifier) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-init-obj.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-init-obj.js index 1d84266848..d16ac1786d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-init-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-init-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Reset element (nested object pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-ary.js index bb1079e379..39cdef4c90 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest element (array binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-id.js index b37e2fe0ad..18d6a649d5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest element (identifier) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-obj.js index 5b4397969a..933966fced 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-not-final-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest element (object binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-obj-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-obj-id.js index 81c12aa93a..1a41de3422 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-obj-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-obj-prop-id.js index 3a4cf15360..585e6c2be5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-ary-ptrn-rest-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-init-iter-close.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-init-iter-close.js index 03d9db542e..2aa372b764 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-init-iter-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-init-iter-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-close.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-init-iter-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Iterator is closed when not exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: false }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-init-iter-no-close.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-init-iter-no-close.js index 7c0d60c32b..0a2d27c127 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-init-iter-no-close.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-init-iter-no-close.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-init-iter-no-close.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-init-iter-no-close.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Iterator is not closed when exhausted by pattern evaluation (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,10 +49,10 @@ var doneCallCount = 0; var iter = {}; iter[Symbol.iterator] = function() { return { - next: function() { + next() { return { value: null, done: true }; }, - return: function() { + return() { doneCallCount += 1; return {}; } diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-name-iter-val.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-name-iter-val.js index 8717837466..e04ef78c16 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-name-iter-val.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-name-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-name-iter-val.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-name-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding with normal value iteration (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elem-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elem-init.js index e8d497685a..fde8b01e43 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elem-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elem-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elem-iter.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elem-iter.js index 9443e4ed27..75d890c1f6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elem-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elem-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elem-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elem-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elision-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elision-init.js index 54f8f49ab7..4da03bcf09 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elision-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elision-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elision-iter.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elision-iter.js index 100d6d7870..fcfe3c7312 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elision-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-elision-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-elision-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-elision-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-empty-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-empty-init.js index 9f78cf5ce9..6f5f9ff77e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-empty-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-empty-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-empty-iter.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-empty-iter.js index 64fcc5a287..cfb7e52130 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-empty-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-empty-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-empty-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-empty-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-rest-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-rest-init.js index 70014c0dcb..f416d7fe29 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-rest-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-rest-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: BindingElement with array binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-rest-iter.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-rest-iter.js index 9dbb33316e..19eb582f79 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-rest-iter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-ary-rest-iter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-ary-rest-iter.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-ary-rest-iter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: BindingElement with array binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt 1. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-exhausted.js index 4227bcf652..5c86c381f2 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Destructuring initializer with an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,16 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. - 6. If Initializer is present and v is undefined, then + 4. If iteratorRecord.[[done]] is true, let v be undefined. + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-arrow.js index 03fa653229..379753693f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding does assign name to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-class.js index 52b93a0248..ce7f5eb6df 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-cover.js index 8d42170b6e..8510324d2f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding does assign name to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-fn.js index 99ce34b7f0..8bfe91fc8e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-gen.js index 9fb58367d9..e252e7b779 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,17 +37,16 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). - d. If IsAnonymousFunctionDefinition(Initializer) is true, then + b. Set v to ? GetValue(defaultValue). + c. If IsAnonymousFunctionDefinition(Initializer) is true, then [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-hole.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-hole.js index 49b02c4669..b2f4cf2fce 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-hole.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-hole.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-hole.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-hole.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Destructuring initializer with a "hole" (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -36,12 +36,12 @@ info: | [...] 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt - [...] 6. If Initializer is present and v is undefined, then + SingleNameBinding : BindingIdentifier Initializer_opt + [...] 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-skipped.js index 9cdaaf662e..002797c004 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,13 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then [...] 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var initCount = 0; function counter() { diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-undef.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-undef.js index eb3553930d..3151096b9c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-undef.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-init-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-init-undef.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-init-undef.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Destructuring initializer with an undefined value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,15 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. b. Let v be GetValue(defaultValue). [...] - 7. If environment is undefined, return PutValue(lhs, v). - 8. Return InitializeReferencedBinding(lhs, v). + 6. If environment is undefined, return PutValue(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-iter-complete.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-iter-complete.js index 870d1683d4..c4f117daed 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-iter-complete.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-iter-complete.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-complete.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-complete.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding when value iteration completes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,19 +37,19 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-iter-done.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-iter-done.js index 8cf1f20d60..5e9771f978 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-iter-done.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-iter-done.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-done.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-done.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,14 +37,14 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then [...] - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-iter-val.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-iter-val.js index 563786d6b5..737df81d9f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-iter-val.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-id-iter-val.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-id-iter-val.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-id-iter-val.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding when value iteration was completed previously (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,23 +37,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-id-init.js index 5023e2bf27..952480afa3 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-id.js index 003b341be0..a373236f1a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-prop-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-prop-id-init.js index 3a0c85c2f8..09081347a0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-prop-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: BindingElement with object binding pattern and initializer is used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-prop-id.js index c192aa63c3..eb79271ef7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elem-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elem-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elem-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: BindingElement with object binding pattern and initializer is not used (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - BindingElement : BindingPatternInitializer opt + BindingElement : BindingPattern Initializer_opt [...] 2. If iteratorRecord.[[done]] is true, let v be undefined. diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elision-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elision-exhausted.js index 16ae92a4b6..1dea1435ff 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elision-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elision-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elision-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Elision accepts exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elision.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elision.js index 8a1d796ca4..02cc149bec 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Elision advances iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-empty.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-empty.js index 793cdc441d..6392596f66 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: No iteration occurs for an "empty" array binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-elem.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-elem.js index 75116da7c1..18bcd690f7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-elem.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-elem.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elem.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elem.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest element containing an array BindingElementList pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -50,23 +50,22 @@ info: | 13.3.3.6 Runtime Semantics: IteratorBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 4. If iteratorRecord.[[done]] is false, then + 3. If iteratorRecord.[[done]] is false, then a. Let next be IteratorStep(iteratorRecord.[[iterator]]). b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). d. If next is false, set iteratorRecord.[[done]] to true. e. Else, - [...] i. Let v be IteratorValue(next). ii. If v is an abrupt completion, set iteratorRecord.[[done]] to true. iii. ReturnIfAbrupt(v). - 5. If iteratorRecord.[[done]] is true, let v be undefined. + 4. If iteratorRecord.[[done]] is true, let v be undefined. [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-elision.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-elision.js index db5607c2d6..da8a87178e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest element containing an elision (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-empty.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-empty.js index e1ecf8d8ec..c745692883 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest element containing an "empty" array pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-rest.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-rest.js index 76df2f222c..91329a4f99 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-rest.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-ary-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-ary-rest.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-ary-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest element containing a rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-id-elision.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-id-elision.js index d341b096a5..f5959adbc8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-id-elision.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-id-elision.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-elision.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-elision.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest element following elision elements (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-id-exhausted.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-id-exhausted.js index d6a9d18ee0..4f04aeba7c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-id-exhausted.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-id-exhausted.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id-exhausted.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id-exhausted.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: RestElement applied to an exhausted iterator (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-id.js index f9d74bf06e..4d38a6c5a6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Lone rest element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-init-ary.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-init-ary.js index e30e423fb9..f00c5c9662 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-init-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-init-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Reset element (nested array pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-init-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-init-id.js index 7d90f03364..389477477e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-init-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-init-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Reset element (identifier) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-init-obj.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-init-obj.js index df323d0a8f..967658ac1a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-init-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-init-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-init-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-init-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Reset element (nested object pattern) does not support initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-not-final-ary.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-not-final-ary.js index 5b8668b12f..7c43ad3edd 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-not-final-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-not-final-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest element (array binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-not-final-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-not-final-id.js index c2aec63548..efe610f4f0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-not-final-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-not-final-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest element (identifier) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-not-final-obj.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-not-final-obj.js index 3a095e909c..61678299d0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-not-final-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-not-final-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-not-final-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-not-final-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest element (object binding pattern) may not be followed by any element (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-obj-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-obj-id.js index ab1dc5f5a3..372007da45 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-obj-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-obj-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-obj-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-obj-prop-id.js index aef73a7468..0a8d3eb772 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-obj-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-ary-ptrn-rest-obj-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/ary-ptrn-rest-obj-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/ary-ptrn-rest-obj-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest element containing an object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-empty.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-empty.js index ba538f7776..3c0f9fa06d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: No property access occurs for an "empty" object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-arrow.js index 9ef53e8836..41e160fe85 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding assigns `name` to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-class.js index ba481e7c38..25ab0c5710 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-cover.js index 36d310ab1b..fbba7807e5 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding assigns `name` to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-fn.js index 8f12ee8edf..c16cb1c166 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-gen.js index f3a9bd8545..83ce4bb018 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-skipped.js index 2767600537..1294967c10 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-trailing-comma.js index 8a8a604609..0b92b3d44e 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-ary-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-ary-init.js index d43318b9f9..43bd7e1996 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-ary-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-ary-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Object binding pattern with "nested" array binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-ary-trailing-comma.js index a32d543f92..70f5f4afd8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-ary-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-ary-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-ary.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-ary.js index b741c3e432..e941fa576d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Object binding pattern with "nested" array binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id-init-skipped.js index fd7832b9a6..fdf32b910d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] 3. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id-init.js index 608374835c..076d562180 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Binding as specified via property name, identifier, and initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id-trailing-comma.js index 90e557ab3d..3eb7fad196 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id.js index 90fc74e89e..94550d916f 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Binding as specified via property name and identifier (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,10 +37,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-obj-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-obj-init.js index 3330515154..1f58176f18 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-obj-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-obj-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Object binding pattern with "nested" object binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -38,10 +38,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-obj.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-obj.js index b4b5d99369..3e8ced4dce 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-prop-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Object binding pattern with "nested" object binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-getter.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-getter.js index 5eeb41d48a..c0a8ee6b43 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-getter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-getter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-getter.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-getter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Getter is called when obj is being deconstructed to a rest Object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-nested-obj.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-nested-obj.js index cd9062e905..4c31804ef7 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-nested-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-nested-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-nested-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-nested-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-obj-nested-rest.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-obj-nested-rest.js index b81c71e52a..02f50138f3 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-obj-nested-rest.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-obj-nested-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-nested-rest.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-nested-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment and object rest desconstruction is allowed in that case. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-obj-own-property.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-obj-own-property.js index db8d2a4b4d..f80efb1d2c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-obj-own-property.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-obj-own-property.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-own-property.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-own-property.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest object contains just soruce object's own properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-skip-non-enumerable.js index 0f5545826c..2126cab5df 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-skip-non-enumerable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-skip-non-enumerable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-skip-non-enumerable.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-skip-non-enumerable.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest object doesn't contain non-enumerable properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-val-obj.js b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-val-obj.js index 52dcba15fe..3de3cfe6ca 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-val-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-async-obj-ptrn-rest-val-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-val-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-var-async.template +// - src/dstr-binding-for-await/obj-ptrn-rest-val-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var-async.template /*--- description: Rest object contains just unextracted data (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-init-null.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-init-null.js index fc7ba6fd7b..5c794a7604 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-init-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-init-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-init-null.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-init-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Value specifed for object binding pattern must be object coercible (null) (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,6 +49,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-init-undefined.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-init-undefined.js index 6dbb142f45..a4bd48d925 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-init-undefined.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-init-undefined.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-init-undefined.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-init-undefined.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Value specifed for object binding pattern must be object coercible (undefined) (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -49,6 +49,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-empty.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-empty.js index 734deb8799..1e1bcc42b3 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-empty.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-empty.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-empty.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-empty.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: No property access occurs for an "empty" object binding pattern (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-get-value-err.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-get-value-err.js index 78a5187a4e..a3239d9828 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-get-value-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-get-value-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-get-value-err.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-get-value-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Error thrown when accessing the corresponding property of the value object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 4. Let v be GetV(value, propertyName). @@ -56,6 +56,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-arrow.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-arrow.js index 723823a93f..28c7558763 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-arrow.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-arrow.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-arrow.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-arrow.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding assigns `name` to arrow functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-class.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-class.js index 31161d0336..cfd531f915 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-class.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-class.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-class.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-class.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding assigns `name` to "anonymous" classes (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-cover.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-cover.js index 5b0895b4ac..fd5f5edb65 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-cover.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-cover.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-cover.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-cover.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding assigns `name` to "anonymous" functions "through" cover grammar (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-fn.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-fn.js index 05e666a397..f7e37d0dd4 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-fn.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-fn.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-fn.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-fn.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding assigns name to "anonymous" functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-gen.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-gen.js index e6e5e31a02..429f03b34b 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-gen.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-fn-name-gen.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-fn-name-gen.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-fn-name-gen.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: SingleNameBinding assigns name to "anonymous" generator functions (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-skipped.js index 03c23e5527..fde6600428 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-throws.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-throws.js index be7c673a1f..e1af8aa4ac 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-throws.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Error thrown when evaluating the initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] 6. If Initializer is present and v is undefined, then @@ -56,6 +56,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-unresolvable.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-unresolvable.js index 5d3f986cff..bf120e726c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 6. If Initializer is present and v is undefined, then + 5. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,6 +59,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-trailing-comma.js index 855262f333..fe2b5efac8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-list-err.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-list-err.js index c47cc288c0..719e42e66c 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-list-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-list-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-list-err.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-list-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Binding property list evaluation is interrupted by an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -55,8 +55,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -assert.sameValue(initCount, 0); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary-init.js index 423217c732..c94f124afc 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Object binding pattern with "nested" array binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -35,10 +35,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary-trailing-comma.js index 1e99e48a45..8ba6bff36d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary-value-null.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary-value-null.js index a212dc8673..2abe49b562 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary-value-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary-value-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary-value-null.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary-value-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Object binding pattern with "nested" array binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,6 +51,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary.js index df3745be7f..6ea48d05e6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-ary.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-ary.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-ary.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Object binding pattern with "nested" array binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-eval-err.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-eval-err.js index 58a568c33d..9ef497d8f2 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-eval-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-eval-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-eval-err.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-eval-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Evaluation of property name returns an abrupt completion (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -53,6 +53,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-get-value-err.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-get-value-err.js index 03eb78ef38..6a0f1ebb6d 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-get-value-err.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-get-value-err.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-get-value-err.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-get-value-err.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Error thrown when accessing the corresponding property of the value object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,7 +37,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt 1. Let v be GetV(value, propertyName). 2. ReturnIfAbrupt(v). @@ -56,8 +56,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); - -assert.sameValue(initEvalCount, 0); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init-skipped.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init-skipped.js index 4daf8adebd..66047ac4d0 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init-skipped.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init-skipped.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-skipped.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-skipped.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Destructuring initializer is not evaluated when value is not `undefined` (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,7 +34,7 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] 3. If Initializer is present and v is undefined, then diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init-throws.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init-throws.js index cbdafa9390..d44e5f627a 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init-throws.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init-throws.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-throws.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-throws.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Error thrown when evaluating the initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,13 +37,12 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). ---*/ function thrower() { throw new Test262Error(); @@ -56,6 +55,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, Test262Error)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, Test262Error); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init-unresolvable.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init-unresolvable.js index 5d2f42a843..20494578b8 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init-unresolvable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init-unresolvable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init-unresolvable.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init-unresolvable.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Destructuring initializer is an unresolvable reference (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -37,15 +37,14 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - BindingElement : BindingPattern Initializeropt + BindingElement : BindingPattern Initializer_opt [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). - 6.2.3.1 GetValue (V) + 6.2.4.1 GetValue ( V ) 1. ReturnIfAbrupt(V). 2. If Type(V) is not Reference, return V. @@ -60,6 +59,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, ReferenceError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, ReferenceError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init.js index 3d3d9f9578..f42e023edb 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Binding as specified via property name, identifier, and initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,10 +34,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-trailing-comma.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-trailing-comma.js index 79d99003ba..9eb555b454 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-trailing-comma.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id-trailing-comma.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id-trailing-comma.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id-trailing-comma.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Trailing comma is allowed following BindingPropertyList (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id.js index 85aa8ce866..b8708bcfbb 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-id.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-id.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-id.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Binding as specified via property name and identifier (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -34,10 +34,10 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization - SingleNameBinding : BindingIdentifier Initializeropt + SingleNameBinding : BindingIdentifier Initializer_opt [...] - 8. Return InitializeReferencedBinding(lhs, v). + 7. Return InitializeReferencedBinding(lhs, v). ---*/ var iterCount = 0; diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj-init.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj-init.js index ee23df9cce..11b75f9130 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj-init.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj-init.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-init.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-init.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Object binding pattern with "nested" object binding pattern using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -35,10 +35,9 @@ info: | 13.3.3.7 Runtime Semantics: KeyedBindingInitialization [...] - 3. If Initializer is present and v is undefined, then + 4. If Initializer is present and v is undefined, then a. Let defaultValue be the result of evaluating Initializer. - b. Let v be GetValue(defaultValue). - c. ReturnIfAbrupt(v). + b. Set v to ? GetValue(defaultValue). 4. Return the result of performing BindingInitialization for BindingPattern passing v and environment as arguments. ---*/ diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj-value-null.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj-value-null.js index b273cd5454..9363b678f6 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj-value-null.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj-value-null.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-value-null.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-value-null.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Object binding pattern with "nested" object binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,6 +51,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj-value-undef.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj-value-undef.js index 60ccd93a75..6dadc851e9 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj-value-undef.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj-value-undef.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj-value-undef.case -// - src/dstr-binding/error/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj-value-undef.case +// - src/dstr-binding-for-await/error/for-await-of-async-gen-var.template /*--- description: Object binding pattern with "nested" object binding pattern taking the `null` value (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation @@ -51,6 +51,11 @@ async function * gen() { } gen().next() - .then(_ => { throw new Test262Error("Expected async function to reject, but resolved."); }, ({ constructor }) => assert.sameValue(constructor, TypeError)) + .then(_ => { + throw new Test262Error("Expected async function to reject, but resolved."); + }, ({ constructor }) => { + assert.sameValue(constructor, TypeError); + + }) .then($DONE, $DONE); diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj.js index 53cdc27ebd..868c303f76 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-prop-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-prop-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-prop-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Object binding pattern with "nested" object binding pattern not using initializer (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-getter.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-getter.js index 635c978a2c..2f44b1d8eb 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-getter.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-getter.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-getter.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-rest-getter.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Getter is called when obj is being deconstructed to a rest Object (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-nested-obj.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-nested-obj.js index ae9548a17d..1936e3ffe9 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-nested-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-nested-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-nested-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-rest-nested-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-obj-nested-rest.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-obj-nested-rest.js index 975c568581..a0a0fd71ef 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-obj-nested-rest.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-obj-nested-rest.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-nested-rest.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-nested-rest.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: When DestructuringAssignmentTarget is an object literal, it should be parsed parsed as a DestructuringAssignmentPattern and evaluated as a destructuring assignment and object rest desconstruction is allowed in that case. (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-obj-own-property.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-obj-own-property.js index f592fcec94..204323c1ab 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-obj-own-property.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-obj-own-property.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-obj-own-property.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-rest-obj-own-property.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest object contains just soruce object's own properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-skip-non-enumerable.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-skip-non-enumerable.js index 1fa9d7a50e..86590f05a2 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-skip-non-enumerable.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-skip-non-enumerable.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-skip-non-enumerable.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-rest-skip-non-enumerable.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest object doesn't contain non-enumerable properties (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation diff --git a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-val-obj.js b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-val-obj.js index 49b4c8beee..bc73068432 100644 --- a/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-val-obj.js +++ b/test/language/statements/for-await-of/async-gen-dstr-var-obj-ptrn-rest-val-obj.js @@ -1,6 +1,6 @@ // This file was procedurally generated from the following sources: -// - src/dstr-binding/obj-ptrn-rest-val-obj.case -// - src/dstr-binding/default/for-await-of-async-gen-var.template +// - src/dstr-binding-for-await/obj-ptrn-rest-val-obj.case +// - src/dstr-binding-for-await/default/for-await-of-async-gen-var.template /*--- description: Rest object contains just unextracted data (for-await-of statement) esid: sec-for-in-and-for-of-statements-runtime-semantics-labelledevaluation