text: // This file was procedurally generated from the following sources:
  // - src/dstr-binding/ary-ptrn-elem-id-init-throws.case
  // - src/dstr-binding/error/async-gen-func-named-expr.template
  /*---
  description: Destructuring initializer returns an abrupt completion (async generator named function expression)
  esid: sec-asyncgenerator-definitions-evaluation
  features: [async-iteration]
  flags: [generated]
  info: |
      AsyncGeneratorExpression : async [no LineTerminator here] function * BindingIdentifier
          ( FormalParameters ) { AsyncGeneratorBody }
  
          [...]
          7. Let closure be ! AsyncGeneratorFunctionCreate(Normal, FormalParameters,
             AsyncGeneratorBody, funcEnv, strict).
          [...]
  
      13.3.3.6 Runtime Semantics: IteratorBindingInitialization
  
      SingleNameBinding : BindingIdentifier Initializeropt
  
      [...]
      6. 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).
  ---*/
  
  
  var f;
  f = async function* g([x = (function() { throw new Test262Error(); })()]) {
    
  };
  
  assert.throws(Test262Error, function() {
    f([undefined]);
  });
  