tor-browser

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

try-await-expr-identifier.js (1612B)


      1 // |reftest| module
      2 // This file was procedurally generated from the following sources:
      3 // - src/top-level-await/await-expr-identifier.case
      4 // - src/top-level-await/syntax/try.template
      5 /*---
      6 description: AwaitExpression IdentifierReference (Valid syntax for top level await in try-catch-finally blocks.)
      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    TryStatement[Yield, Await, Return]:
     17      try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return]
     18      try Block[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
     19      try Block[?Yield, ?Await, ?Return] Catch[?Yield, ?Await, ?Return] Finally[?Yield, ?Await, ?Return]
     20 
     21    ...
     22 
     23    UnaryExpression[Yield, Await]
     24      [+Await]AwaitExpression[?Yield]
     25 
     26    AwaitExpression[Yield]:
     27      await UnaryExpression[?Yield, +Await]
     28 
     29    ...
     30 
     31 
     32    PrimaryExpression[Yield, Await]:
     33      this
     34      IdentifierReference[?Yield, ?Await]
     35      Literal
     36      ArrayLiteral[?Yield, ?Await]
     37      ObjectLiteral[?Yield, ?Await]
     38      FunctionExpression
     39      ClassExpression[?Yield, ?Await]
     40      GeneratorExpression
     41      AsyncFunctionExpression
     42      AsyncGeneratorExpression
     43      RegularExpressionLiteral
     44      TemplateLiteral[?Yield, ?Await, ~Tagged]
     45      CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
     46 
     47 ---*/
     48 var foo = 1;
     49 
     50 
     51 try {
     52  await foo;
     53 } catch(e) {
     54  await foo;
     55 }
     56 
     57 try {
     58  await foo;
     59 } finally {
     60  await foo;
     61 }
     62 
     63 try {
     64  await foo;
     65 } catch(e) {
     66  await foo;
     67 } finally {
     68  await foo;
     69 }
     70 
     71 reportCompare(0, 0);