tor-browser

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

await-expr-regexp.js (1185B)


      1 // |reftest| module async
      2 // Copyright (C) 2019 Leo Balter. All rights reserved.
      3 // This code is governed by the BSD license found in the LICENSE file.
      4 
      5 /*---
      6 description: >
      7  Verify a RegularExpressionLiteral following an AwaitExpression is
      8  not ambiguous to an Division
      9 info: |
     10  ModuleItem:
     11    StatementListItem[~Yield, +Await, ~Return]
     12 
     13  ...
     14 
     15  UnaryExpression[Yield, Await]
     16    [+Await]AwaitExpression[?Yield]
     17 
     18  AwaitExpression[Yield]:
     19    await UnaryExpression[?Yield, +Await]
     20 
     21  ...
     22 
     23  PrimaryExpression[Yield, Await]:
     24    this
     25    IdentifierReference[?Yield, ?Await]
     26    Literal
     27    ArrayLiteral[?Yield, ?Await]
     28    ObjectLiteral[?Yield, ?Await]
     29    FunctionExpression
     30    ClassExpression[?Yield, ?Await]
     31    GeneratorExpression
     32    AsyncFunctionExpression
     33    AsyncGeneratorExpression
     34    RegularExpressionLiteral
     35    TemplateLiteral[?Yield, ?Await, ~Tagged]
     36    CoverParenthesizedExpressionAndArrowParameterList[?Yield, ?Await]
     37 esid: prod-AwaitExpression
     38 flags: [module, async]
     39 features: [top-level-await]
     40 ---*/
     41 
     42 var lol = false;
     43 var x = {
     44  get y() {
     45    lol = true;
     46  }
     47 };
     48 
     49 var g = 42;
     50 
     51 await /x.y/g;
     52 
     53 if (lol) {
     54  $DONE('It should be a RegExp');
     55 } else {
     56  $DONE();
     57 }