tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

for-await-expr-new-expr.js (3472B)


      1 // |reftest| module
      2 // This file was procedurally generated from the following sources:
      3 // - src/top-level-await/await-expr-new-expr.case
      4 // - src/top-level-await/syntax/for-expr.template
      5 /*---
      6 description: AwaitExpression new MemberExpression (Valid syntax for top level await in for statements.)
      7 esid: prod-AwaitExpression
      8 features: [top-level-await]
      9 flags: [generated, module]
     10 info: |
     11    ModuleItem:
     12      StatementListItem[~Yield, +Await, ~Return]
     13 
     14    ...
     15 
     16    IterationStatement[Yield, Await, Return]:
     17      ...
     18      for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
     19      for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
     20      for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
     21      for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     22      for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     23      for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     24      for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     25      for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     26      for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     27      ...
     28 
     29    ...
     30 
     31    UnaryExpression[Yield, Await]
     32      [+Await]AwaitExpression[?Yield]
     33 
     34    AwaitExpression[Yield]:
     35      await UnaryExpression[?Yield, +Await]
     36 
     37    ...
     38 
     39 
     40    LeftHandSideExpression[Yield, Await]:
     41      NewExpression[?Yield, ?Await]
     42      CallExpression[?Yield, ?Await]
     43 
     44    NewExpression[Yield, Await]:
     45      MemberExpression[?Yield, ?Await]
     46      new NewExpression[?Yield, ?Await]
     47 
     48    MemberExpression[Yield, Await]:
     49      ...
     50      new MemberExpression[?Yield, ?Await] Arguments[?Yield, ?Await]
     51 
     52 ---*/
     53 
     54 
     55 // for ( [ lookahead ≠ let [] Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
     56 for ( await new Promise(function(res, rej) { res(1); }) ; await new Promise(function(res, rej) { res(1); }); await new Promise(function(res, rej) { res(1); }) ) {
     57  await new Promise(function(res, rej) { res(1); });
     58  break;
     59 }
     60 
     61 // for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
     62 for ( var binding; await new Promise(function(res, rej) { res(1); }); await new Promise(function(res, rej) { res(1); }) ) {
     63  await new Promise(function(res, rej) { res(1); });
     64  break;
     65 }
     66 
     67 // for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
     68 for ( let binding; await new Promise(function(res, rej) { res(1); }); await new Promise(function(res, rej) { res(1); }) ) {
     69  await new Promise(function(res, rej) { res(1); });
     70  break;
     71 }
     72 
     73 reportCompare(0, 0);