meriyah 4.3.1 → 4.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -13,7 +13,7 @@ var meriyah = (function (exports) {
13
13
  [8]: 'Octal literals are not allowed in strict mode',
14
14
  [7]: 'Decimal integer literals with a leading zero are forbidden in strict mode',
15
15
  [9]: 'Expected number in radix %0',
16
- [145]: 'Invalid left-hand side assignment to a destructible right-hand side',
16
+ [146]: 'Invalid left-hand side assignment to a destructible right-hand side',
17
17
  [10]: 'Non-number found after exponent indicator',
18
18
  [11]: 'Invalid BigIntLiteral',
19
19
  [12]: 'No identifiers allowed directly after numeric literal',
@@ -34,9 +34,9 @@ var meriyah = (function (exports) {
34
34
  [27]: 'Member access on super must be in a method',
35
35
  [29]: 'Await expression not allowed in formal parameter',
36
36
  [30]: 'Yield expression not allowed in formal parameter',
37
- [92]: "Unexpected token: 'escaped keyword'",
37
+ [93]: "Unexpected token: 'escaped keyword'",
38
38
  [31]: 'Unary expressions as the left operand of an exponentiation expression must be disambiguated with parentheses',
39
- [119]: 'Async functions can only be declared at the top level or inside a block',
39
+ [120]: 'Async functions can only be declared at the top level or inside a block',
40
40
  [32]: 'Unterminated regular expression',
41
41
  [33]: 'Unexpected regular expression flag',
42
42
  [34]: "Duplicate regular expression flag '%0'",
@@ -46,125 +46,126 @@ var meriyah = (function (exports) {
46
46
  [38]: 'Function name may not contain any reserved words or be eval or arguments in strict mode',
47
47
  [39]: 'The rest operator is missing an argument',
48
48
  [40]: 'A getter cannot be a generator',
49
- [41]: 'A computed property name must be followed by a colon or paren',
50
- [130]: 'Object literal keys that are strings or numbers must be a method or have a colon',
51
- [43]: 'Found `* async x(){}` but this should be `async * x(){}`',
52
- [42]: 'Getters and setters can not be generators',
53
- [44]: "'%0' can not be generator method",
54
- [45]: "No line break is allowed after '=>'",
55
- [46]: 'The left-hand side of the arrow can only be destructed through assignment',
56
- [47]: 'The binding declaration is not destructible',
57
- [48]: 'Async arrow can not be followed by new expression',
58
- [49]: "Classes may not have a static property named 'prototype'",
59
- [50]: 'Class constructor may not be a %0',
60
- [51]: 'Duplicate constructor method in class',
61
- [52]: 'Invalid increment/decrement operand',
62
- [53]: 'Invalid use of `new` keyword on an increment/decrement expression',
63
- [54]: '`=>` is an invalid assignment target',
64
- [55]: 'Rest element may not have a trailing comma',
65
- [56]: 'Missing initializer in %0 declaration',
66
- [57]: "'for-%0' loop head declarations can not have an initializer",
67
- [58]: 'Invalid left-hand side in for-%0 loop: Must have a single binding',
68
- [59]: 'Invalid shorthand property initializer',
69
- [60]: 'Property name __proto__ appears more than once in object literal',
70
- [61]: 'Let is disallowed as a lexically bound name',
71
- [62]: "Invalid use of '%0' inside new expression",
72
- [63]: "Illegal 'use strict' directive in function with non-simple parameter list",
73
- [64]: 'Identifier "let" disallowed as left-hand side expression in strict mode',
74
- [65]: 'Illegal continue statement',
75
- [66]: 'Illegal break statement',
76
- [67]: 'Cannot have `let[...]` as a var name in strict mode',
77
- [68]: 'Invalid destructuring assignment target',
78
- [69]: 'Rest parameter may not have a default initializer',
79
- [70]: 'The rest argument must the be last parameter',
80
- [71]: 'Invalid rest argument',
81
- [73]: 'In strict mode code, functions can only be declared at top level or inside a block',
82
- [74]: 'In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement',
83
- [75]: 'Without web compatibility enabled functions can not be declared at top level, inside a block, or as the body of an if statement',
84
- [76]: "Class declaration can't appear in single-statement context",
85
- [77]: 'Invalid left-hand side in for-%0',
86
- [78]: 'Invalid assignment in for-%0',
87
- [79]: 'for await (... of ...) is only valid in async functions and async generators',
88
- [80]: 'The first token after the template expression should be a continuation of the template',
89
- [82]: '`let` declaration not allowed here and `let` cannot be a regular var name in strict mode',
90
- [81]: '`let \n [` is a restricted production at the start of a statement',
91
- [83]: 'Catch clause requires exactly one parameter, not more (and no trailing comma)',
92
- [84]: 'Catch clause parameter does not support default values',
93
- [85]: 'Missing catch or finally after try',
94
- [86]: 'More than one default clause in switch statement',
95
- [87]: 'Illegal newline after throw',
96
- [88]: 'Strict mode code may not include a with statement',
97
- [89]: 'Illegal return statement',
98
- [90]: 'The left hand side of the for-header binding declaration is not destructible',
99
- [91]: 'new.target only allowed within functions',
100
- [93]: "'#' not followed by identifier",
101
- [99]: 'Invalid keyword',
102
- [98]: "Can not use 'let' as a class name",
103
- [97]: "'A lexical declaration can't define a 'let' binding",
104
- [96]: 'Can not use `let` as variable name in strict mode',
105
- [94]: "'%0' may not be used as an identifier in this context",
106
- [95]: 'Await is only valid in async functions',
107
- [100]: 'The %0 keyword can only be used with the module goal',
108
- [101]: 'Unicode codepoint must not be greater than 0x10FFFF',
109
- [102]: '%0 source must be string',
110
- [103]: 'Only a identifier can be used to indicate alias',
111
- [104]: "Only '*' or '{...}' can be imported after default",
112
- [105]: 'Trailing decorator may be followed by method',
113
- [106]: "Decorators can't be used with a constructor",
114
- [108]: 'HTML comments are only allowed with web compatibility (Annex B)',
115
- [109]: "The identifier 'let' must not be in expression position in strict mode",
116
- [110]: 'Cannot assign to `eval` and `arguments` in strict mode',
117
- [111]: "The left-hand side of a for-of loop may not start with 'let'",
118
- [112]: 'Block body arrows can not be immediately invoked without a group',
119
- [113]: 'Block body arrows can not be immediately accessed without a group',
120
- [114]: 'Unexpected strict mode reserved word',
121
- [115]: 'Unexpected eval or arguments in strict mode',
122
- [116]: 'Decorators must not be followed by a semicolon',
123
- [117]: 'Calling delete on expression not allowed in strict mode',
124
- [118]: 'Pattern can not have a tail',
125
- [120]: 'Can not have a `yield` expression on the left side of a ternary',
126
- [121]: 'An arrow function can not have a postfix update operator',
127
- [122]: 'Invalid object literal key character after generator star',
128
- [123]: 'Private fields can not be deleted',
129
- [125]: 'Classes may not have a field called constructor',
130
- [124]: 'Classes may not have a private element named constructor',
131
- [126]: 'A class field initializer may not contain arguments',
132
- [127]: 'Generators can only be declared at the top level or inside a block',
133
- [128]: 'Async methods are a restricted production and cannot have a newline following it',
134
- [129]: 'Unexpected character after object literal property name',
135
- [131]: 'Invalid key token',
136
- [132]: "Label '%0' has already been declared",
137
- [133]: 'continue statement must be nested within an iteration statement',
138
- [134]: "Undefined label '%0'",
139
- [135]: 'Trailing comma is disallowed inside import(...) arguments',
140
- [136]: 'import() requires exactly one argument',
141
- [137]: 'Cannot use new with import(...)',
142
- [138]: '... is not allowed in import()',
143
- [139]: "Expected '=>'",
144
- [140]: "Duplicate binding '%0'",
145
- [141]: "Cannot export a duplicate name '%0'",
146
- [144]: 'Duplicate %0 for-binding',
147
- [142]: "Exported binding '%0' needs to refer to a top-level declared variable",
148
- [143]: 'Unexpected private field',
149
- [147]: 'Numeric separators are not allowed at the end of numeric literals',
150
- [146]: 'Only one underscore is allowed as numeric separator',
151
- [148]: 'JSX value should be either an expression or a quoted JSX text',
152
- [149]: 'Expected corresponding JSX closing tag for %0',
153
- [150]: 'Adjacent JSX elements must be wrapped in an enclosing tag',
154
- [151]: "JSX attributes must only be assigned a non-empty 'expression'",
155
- [152]: "'%0' has already been declared",
156
- [153]: "'%0' shadowed a catch clause binding",
157
- [154]: 'Dot property must be an identifier',
158
- [155]: 'Encountered invalid input after spread/rest argument',
159
- [156]: 'Catch without try',
160
- [157]: 'Finally without try',
161
- [158]: 'Expected corresponding closing tag for JSX fragment',
162
- [159]: 'Coalescing and logical operators used together in the same expression must be disambiguated with parentheses',
163
- [160]: 'Invalid tagged template on optional chain',
164
- [161]: 'Invalid optional chain from super property',
165
- [162]: 'Invalid optional chain from new expression',
166
- [163]: 'Cannot use "import.meta" outside a module',
167
- [164]: 'Leading decorators must be attached to a class declaration'
49
+ [41]: 'A setter cannot be a generator',
50
+ [42]: 'A computed property name must be followed by a colon or paren',
51
+ [131]: 'Object literal keys that are strings or numbers must be a method or have a colon',
52
+ [44]: 'Found `* async x(){}` but this should be `async * x(){}`',
53
+ [43]: 'Getters and setters can not be generators',
54
+ [45]: "'%0' can not be generator method",
55
+ [46]: "No line break is allowed after '=>'",
56
+ [47]: 'The left-hand side of the arrow can only be destructed through assignment',
57
+ [48]: 'The binding declaration is not destructible',
58
+ [49]: 'Async arrow can not be followed by new expression',
59
+ [50]: "Classes may not have a static property named 'prototype'",
60
+ [51]: 'Class constructor may not be a %0',
61
+ [52]: 'Duplicate constructor method in class',
62
+ [53]: 'Invalid increment/decrement operand',
63
+ [54]: 'Invalid use of `new` keyword on an increment/decrement expression',
64
+ [55]: '`=>` is an invalid assignment target',
65
+ [56]: 'Rest element may not have a trailing comma',
66
+ [57]: 'Missing initializer in %0 declaration',
67
+ [58]: "'for-%0' loop head declarations can not have an initializer",
68
+ [59]: 'Invalid left-hand side in for-%0 loop: Must have a single binding',
69
+ [60]: 'Invalid shorthand property initializer',
70
+ [61]: 'Property name __proto__ appears more than once in object literal',
71
+ [62]: 'Let is disallowed as a lexically bound name',
72
+ [63]: "Invalid use of '%0' inside new expression",
73
+ [64]: "Illegal 'use strict' directive in function with non-simple parameter list",
74
+ [65]: 'Identifier "let" disallowed as left-hand side expression in strict mode',
75
+ [66]: 'Illegal continue statement',
76
+ [67]: 'Illegal break statement',
77
+ [68]: 'Cannot have `let[...]` as a var name in strict mode',
78
+ [69]: 'Invalid destructuring assignment target',
79
+ [70]: 'Rest parameter may not have a default initializer',
80
+ [71]: 'The rest argument must the be last parameter',
81
+ [72]: 'Invalid rest argument',
82
+ [74]: 'In strict mode code, functions can only be declared at top level or inside a block',
83
+ [75]: 'In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement',
84
+ [76]: 'Without web compatibility enabled functions can not be declared at top level, inside a block, or as the body of an if statement',
85
+ [77]: "Class declaration can't appear in single-statement context",
86
+ [78]: 'Invalid left-hand side in for-%0',
87
+ [79]: 'Invalid assignment in for-%0',
88
+ [80]: 'for await (... of ...) is only valid in async functions and async generators',
89
+ [81]: 'The first token after the template expression should be a continuation of the template',
90
+ [83]: '`let` declaration not allowed here and `let` cannot be a regular var name in strict mode',
91
+ [82]: '`let \n [` is a restricted production at the start of a statement',
92
+ [84]: 'Catch clause requires exactly one parameter, not more (and no trailing comma)',
93
+ [85]: 'Catch clause parameter does not support default values',
94
+ [86]: 'Missing catch or finally after try',
95
+ [87]: 'More than one default clause in switch statement',
96
+ [88]: 'Illegal newline after throw',
97
+ [89]: 'Strict mode code may not include a with statement',
98
+ [90]: 'Illegal return statement',
99
+ [91]: 'The left hand side of the for-header binding declaration is not destructible',
100
+ [92]: 'new.target only allowed within functions',
101
+ [94]: "'#' not followed by identifier",
102
+ [100]: 'Invalid keyword',
103
+ [99]: "Can not use 'let' as a class name",
104
+ [98]: "'A lexical declaration can't define a 'let' binding",
105
+ [97]: 'Can not use `let` as variable name in strict mode',
106
+ [95]: "'%0' may not be used as an identifier in this context",
107
+ [96]: 'Await is only valid in async functions',
108
+ [101]: 'The %0 keyword can only be used with the module goal',
109
+ [102]: 'Unicode codepoint must not be greater than 0x10FFFF',
110
+ [103]: '%0 source must be string',
111
+ [104]: 'Only a identifier can be used to indicate alias',
112
+ [105]: "Only '*' or '{...}' can be imported after default",
113
+ [106]: 'Trailing decorator may be followed by method',
114
+ [107]: "Decorators can't be used with a constructor",
115
+ [109]: 'HTML comments are only allowed with web compatibility (Annex B)',
116
+ [110]: "The identifier 'let' must not be in expression position in strict mode",
117
+ [111]: 'Cannot assign to `eval` and `arguments` in strict mode',
118
+ [112]: "The left-hand side of a for-of loop may not start with 'let'",
119
+ [113]: 'Block body arrows can not be immediately invoked without a group',
120
+ [114]: 'Block body arrows can not be immediately accessed without a group',
121
+ [115]: 'Unexpected strict mode reserved word',
122
+ [116]: 'Unexpected eval or arguments in strict mode',
123
+ [117]: 'Decorators must not be followed by a semicolon',
124
+ [118]: 'Calling delete on expression not allowed in strict mode',
125
+ [119]: 'Pattern can not have a tail',
126
+ [121]: 'Can not have a `yield` expression on the left side of a ternary',
127
+ [122]: 'An arrow function can not have a postfix update operator',
128
+ [123]: 'Invalid object literal key character after generator star',
129
+ [124]: 'Private fields can not be deleted',
130
+ [126]: 'Classes may not have a field called constructor',
131
+ [125]: 'Classes may not have a private element named constructor',
132
+ [127]: 'A class field initializer may not contain arguments',
133
+ [128]: 'Generators can only be declared at the top level or inside a block',
134
+ [129]: 'Async methods are a restricted production and cannot have a newline following it',
135
+ [130]: 'Unexpected character after object literal property name',
136
+ [132]: 'Invalid key token',
137
+ [133]: "Label '%0' has already been declared",
138
+ [134]: 'continue statement must be nested within an iteration statement',
139
+ [135]: "Undefined label '%0'",
140
+ [136]: 'Trailing comma is disallowed inside import(...) arguments',
141
+ [137]: 'import() requires exactly one argument',
142
+ [138]: 'Cannot use new with import(...)',
143
+ [139]: '... is not allowed in import()',
144
+ [140]: "Expected '=>'",
145
+ [141]: "Duplicate binding '%0'",
146
+ [142]: "Cannot export a duplicate name '%0'",
147
+ [145]: 'Duplicate %0 for-binding',
148
+ [143]: "Exported binding '%0' needs to refer to a top-level declared variable",
149
+ [144]: 'Unexpected private field',
150
+ [148]: 'Numeric separators are not allowed at the end of numeric literals',
151
+ [147]: 'Only one underscore is allowed as numeric separator',
152
+ [149]: 'JSX value should be either an expression or a quoted JSX text',
153
+ [150]: 'Expected corresponding JSX closing tag for %0',
154
+ [151]: 'Adjacent JSX elements must be wrapped in an enclosing tag',
155
+ [152]: "JSX attributes must only be assigned a non-empty 'expression'",
156
+ [153]: "'%0' has already been declared",
157
+ [154]: "'%0' shadowed a catch clause binding",
158
+ [155]: 'Dot property must be an identifier',
159
+ [156]: 'Encountered invalid input after spread/rest argument',
160
+ [157]: 'Catch without try',
161
+ [158]: 'Finally without try',
162
+ [159]: 'Expected corresponding closing tag for JSX fragment',
163
+ [160]: 'Coalescing and logical operators used together in the same expression must be disambiguated with parentheses',
164
+ [161]: 'Invalid tagged template on optional chain',
165
+ [162]: 'Invalid optional chain from super property',
166
+ [163]: 'Invalid optional chain from new expression',
167
+ [164]: 'Cannot use "import.meta" outside a module',
168
+ [165]: 'Leading decorators must be attached to a class declaration'
168
169
  };
169
170
  class ParseError extends SyntaxError {
170
171
  constructor(startindex, line, column, type, ...params) {
@@ -1096,7 +1097,7 @@ var meriyah = (function (exports) {
1096
1097
  case -4:
1097
1098
  report(state, 6);
1098
1099
  case -5:
1099
- report(state, 101);
1100
+ report(state, 102);
1100
1101
  }
1101
1102
  }
1102
1103
 
@@ -1209,7 +1210,7 @@ var meriyah = (function (exports) {
1209
1210
  while (CharTypes[char] & (64 | 4096)) {
1210
1211
  if (char === 95) {
1211
1212
  if (!allowSeparator)
1212
- report(parser, 146);
1213
+ report(parser, 147);
1213
1214
  allowSeparator = 0;
1214
1215
  char = advanceChar(parser);
1215
1216
  continue;
@@ -1220,7 +1221,7 @@ var meriyah = (function (exports) {
1220
1221
  char = advanceChar(parser);
1221
1222
  }
1222
1223
  if (digits === 0 || !allowSeparator) {
1223
- report(parser, digits === 0 ? 19 : 147);
1224
+ report(parser, digits === 0 ? 19 : 148);
1224
1225
  }
1225
1226
  }
1226
1227
  else if ((char | 32) === 111) {
@@ -1229,7 +1230,7 @@ var meriyah = (function (exports) {
1229
1230
  while (CharTypes[char] & (32 | 4096)) {
1230
1231
  if (char === 95) {
1231
1232
  if (!allowSeparator) {
1232
- report(parser, 146);
1233
+ report(parser, 147);
1233
1234
  }
1234
1235
  allowSeparator = 0;
1235
1236
  char = advanceChar(parser);
@@ -1241,7 +1242,7 @@ var meriyah = (function (exports) {
1241
1242
  char = advanceChar(parser);
1242
1243
  }
1243
1244
  if (digits === 0 || !allowSeparator) {
1244
- report(parser, digits === 0 ? 0 : 147);
1245
+ report(parser, digits === 0 ? 0 : 148);
1245
1246
  }
1246
1247
  }
1247
1248
  else if ((char | 32) === 98) {
@@ -1250,7 +1251,7 @@ var meriyah = (function (exports) {
1250
1251
  while (CharTypes[char] & (128 | 4096)) {
1251
1252
  if (char === 95) {
1252
1253
  if (!allowSeparator) {
1253
- report(parser, 146);
1254
+ report(parser, 147);
1254
1255
  }
1255
1256
  allowSeparator = 0;
1256
1257
  char = advanceChar(parser);
@@ -1262,7 +1263,7 @@ var meriyah = (function (exports) {
1262
1263
  char = advanceChar(parser);
1263
1264
  }
1264
1265
  if (digits === 0 || !allowSeparator) {
1265
- report(parser, digits === 0 ? 0 : 147);
1266
+ report(parser, digits === 0 ? 0 : 148);
1266
1267
  }
1267
1268
  }
1268
1269
  else if (CharTypes[char] & 32) {
@@ -1295,7 +1296,7 @@ var meriyah = (function (exports) {
1295
1296
  if (char === 95) {
1296
1297
  char = advanceChar(parser);
1297
1298
  if (char === 95 || kind & 32) {
1298
- reportScannerError(parser.index, parser.line, parser.index + 1, 146);
1299
+ reportScannerError(parser.index, parser.line, parser.index + 1, 147);
1299
1300
  }
1300
1301
  allowSeparator = 1;
1301
1302
  continue;
@@ -1306,7 +1307,7 @@ var meriyah = (function (exports) {
1306
1307
  --digit;
1307
1308
  }
1308
1309
  if (allowSeparator) {
1309
- reportScannerError(parser.index, parser.line, parser.index + 1, 147);
1310
+ reportScannerError(parser.index, parser.line, parser.index + 1, 148);
1310
1311
  }
1311
1312
  if (digit >= 0 && !isIdentifierStart(char) && char !== 46) {
1312
1313
  parser.tokenValue = value;
@@ -1371,7 +1372,7 @@ var meriyah = (function (exports) {
1371
1372
  const { index } = parser;
1372
1373
  char = advanceChar(parser);
1373
1374
  if (char === 95) {
1374
- reportScannerError(parser.index, parser.line, parser.index + 1, 146);
1375
+ reportScannerError(parser.index, parser.line, parser.index + 1, 147);
1375
1376
  }
1376
1377
  allowSeparator = 1;
1377
1378
  ret += parser.source.substring(start, index);
@@ -1382,7 +1383,7 @@ var meriyah = (function (exports) {
1382
1383
  char = advanceChar(parser);
1383
1384
  }
1384
1385
  if (allowSeparator) {
1385
- reportScannerError(parser.index, parser.line, parser.index + 1, 147);
1386
+ reportScannerError(parser.index, parser.line, parser.index + 1, 148);
1386
1387
  }
1387
1388
  return ret + parser.source.substring(start, parser.index);
1388
1389
  }
@@ -1471,7 +1472,7 @@ var meriyah = (function (exports) {
1471
1472
  function scanIdentifier(parser, context, isValidAsKeyword) {
1472
1473
  while (isIdPart[advanceChar(parser)]) { }
1473
1474
  parser.tokenValue = parser.source.slice(parser.tokenPos, parser.index);
1474
- return parser.currentChar !== 92 && parser.currentChar < 0x7e
1475
+ return parser.currentChar !== 92 && parser.currentChar <= 0x7e
1475
1476
  ? descKeywordTable[parser.tokenValue] || 208897
1476
1477
  : scanIdentifierSlowCase(parser, context, 0, isValidAsKeyword);
1477
1478
  }
@@ -1558,7 +1559,7 @@ var meriyah = (function (exports) {
1558
1559
  }
1559
1560
  function scanPrivateIdentifier(parser) {
1560
1561
  if (!isIdentifierStart(advanceChar(parser)))
1561
- report(parser, 93);
1562
+ report(parser, 94);
1562
1563
  return 131;
1563
1564
  }
1564
1565
  function scanIdentifierUnicodeEscape(parser) {
@@ -1576,7 +1577,7 @@ var meriyah = (function (exports) {
1576
1577
  while (CharTypes[advanceChar(parser)] & 64) {
1577
1578
  codePoint = (codePoint << 4) | toHex(parser.currentChar);
1578
1579
  if (codePoint > 1114111)
1579
- reportScannerError(begin, parser.line, parser.index + 1, 101);
1580
+ reportScannerError(begin, parser.line, parser.index + 1, 102);
1580
1581
  }
1581
1582
  if (parser.currentChar !== 125) {
1582
1583
  reportScannerError(begin, parser.line, parser.index - 1, 6);
@@ -1917,7 +1918,7 @@ var meriyah = (function (exports) {
1917
1918
  advanceChar(parser);
1918
1919
  if ((state & 1 || isStartOfLine) && parser.currentChar === 62) {
1919
1920
  if ((context & 256) === 0)
1920
- report(parser, 108);
1921
+ report(parser, 109);
1921
1922
  advanceChar(parser);
1922
1923
  state = skipSingleHTMLComment(parser, source, state, context, 3, startPos, startLine, startColumn);
1923
1924
  startPos = parser.tokenPos;
@@ -4413,7 +4414,7 @@ var meriyah = (function (exports) {
4413
4414
  case 'AssignmentExpression':
4414
4415
  node.type = 'AssignmentPattern';
4415
4416
  if (node.operator !== '=')
4416
- report(state, 68);
4417
+ report(state, 69);
4417
4418
  delete node.operator;
4418
4419
  reinterpretToPattern(state, node.left);
4419
4420
  return;
@@ -4428,58 +4429,58 @@ var meriyah = (function (exports) {
4428
4429
  function validateBindingIdentifier(parser, context, kind, t, skipEvalArgCheck) {
4429
4430
  if (context & 1024) {
4430
4431
  if ((t & 36864) === 36864) {
4431
- report(parser, 114);
4432
+ report(parser, 115);
4432
4433
  }
4433
4434
  if (!skipEvalArgCheck && (t & 537079808) === 537079808) {
4434
- report(parser, 115);
4435
+ report(parser, 116);
4435
4436
  }
4436
4437
  }
4437
4438
  if ((t & 20480) === 20480) {
4438
- report(parser, 99);
4439
+ report(parser, 100);
4439
4440
  }
4440
4441
  if (kind & (8 | 16) && t === 241739) {
4441
- report(parser, 97);
4442
+ report(parser, 98);
4442
4443
  }
4443
4444
  if (context & (4194304 | 2048) && t === 209008) {
4444
- report(parser, 95);
4445
+ report(parser, 96);
4445
4446
  }
4446
4447
  if (context & (2097152 | 1024) && t === 241773) {
4447
- report(parser, 94, 'yield');
4448
+ report(parser, 95, 'yield');
4448
4449
  }
4449
4450
  }
4450
4451
  function validateFunctionName(parser, context, t) {
4451
4452
  if (context & 1024) {
4452
4453
  if ((t & 36864) === 36864) {
4453
- report(parser, 114);
4454
+ report(parser, 115);
4454
4455
  }
4455
4456
  if ((t & 537079808) === 537079808) {
4456
- report(parser, 115);
4457
+ report(parser, 116);
4457
4458
  }
4458
4459
  if (t === 122) {
4459
- report(parser, 92);
4460
+ report(parser, 93);
4460
4461
  }
4461
4462
  if (t === 121) {
4462
- report(parser, 92);
4463
+ report(parser, 93);
4463
4464
  }
4464
4465
  }
4465
4466
  if ((t & 20480) === 20480) {
4466
- report(parser, 99);
4467
+ report(parser, 100);
4467
4468
  }
4468
4469
  if (context & (4194304 | 2048) && t === 209008) {
4469
- report(parser, 95);
4470
+ report(parser, 96);
4470
4471
  }
4471
4472
  if (context & (2097152 | 1024) && t === 241773) {
4472
- report(parser, 94, 'yield');
4473
+ report(parser, 95, 'yield');
4473
4474
  }
4474
4475
  }
4475
4476
  function isStrictReservedWord(parser, context, t) {
4476
4477
  if (t === 209008) {
4477
4478
  if (context & (4194304 | 2048))
4478
- report(parser, 95);
4479
+ report(parser, 96);
4479
4480
  parser.destructible |= 128;
4480
4481
  }
4481
4482
  if (t === 241773 && context & 2097152)
4482
- report(parser, 94, 'yield');
4483
+ report(parser, 95, 'yield');
4483
4484
  return ((t & 20480) === 20480 ||
4484
4485
  (t & 36864) === 36864 ||
4485
4486
  t == 122);
@@ -4491,7 +4492,7 @@ var meriyah = (function (exports) {
4491
4492
  while (labels) {
4492
4493
  if (labels['$' + name]) {
4493
4494
  if (isIterationStatement)
4494
- report(parser, 133);
4495
+ report(parser, 134);
4495
4496
  return 1;
4496
4497
  }
4497
4498
  if (isIterationStatement && labels.loop)
@@ -4504,7 +4505,7 @@ var meriyah = (function (exports) {
4504
4505
  let set = labels;
4505
4506
  while (set) {
4506
4507
  if (set['$' + name])
4507
- report(parser, 132, name);
4508
+ report(parser, 133, name);
4508
4509
  set = set['$'];
4509
4510
  }
4510
4511
  labels['$' + name] = 1;
@@ -4585,27 +4586,27 @@ var meriyah = (function (exports) {
4585
4586
  const value = scope['#' + name];
4586
4587
  if (value && (value & 2) === 0) {
4587
4588
  if (kind & 1) {
4588
- scope.scopeError = recordScopeError(parser, 140, name);
4589
+ scope.scopeError = recordScopeError(parser, 141, name);
4589
4590
  }
4590
4591
  else if (context & 256 &&
4591
4592
  value & 64 &&
4592
4593
  origin & 2) ;
4593
4594
  else {
4594
- report(parser, 140, name);
4595
+ report(parser, 141, name);
4595
4596
  }
4596
4597
  }
4597
4598
  if (scope.type & 128 &&
4598
4599
  (scope.parent['#' + name] && (scope.parent['#' + name] & 2) === 0)) {
4599
- report(parser, 140, name);
4600
+ report(parser, 141, name);
4600
4601
  }
4601
4602
  if (scope.type & 1024 && value && (value & 2) === 0) {
4602
4603
  if (kind & 1) {
4603
- scope.scopeError = recordScopeError(parser, 140, name);
4604
+ scope.scopeError = recordScopeError(parser, 141, name);
4604
4605
  }
4605
4606
  }
4606
4607
  if (scope.type & 64) {
4607
4608
  if (scope.parent['#' + name] & 768)
4608
- report(parser, 153, name);
4609
+ report(parser, 154, name);
4609
4610
  }
4610
4611
  scope['#' + name] = kind;
4611
4612
  }
@@ -4619,19 +4620,19 @@ var meriyah = (function (exports) {
4619
4620
  ((kind & 128 && value & 68) ||
4620
4621
  (value & 128 && kind & 68))) ;
4621
4622
  else {
4622
- report(parser, 140, name);
4623
+ report(parser, 141, name);
4623
4624
  }
4624
4625
  }
4625
4626
  if (currentScope === scope) {
4626
4627
  if (value & 1 && kind & 1) {
4627
- currentScope.scopeError = recordScopeError(parser, 140, name);
4628
+ currentScope.scopeError = recordScopeError(parser, 141, name);
4628
4629
  }
4629
4630
  }
4630
4631
  if (value & (512 | 256)) {
4631
4632
  if ((value & 512) === 0 ||
4632
4633
  (context & 256) === 0 ||
4633
4634
  context & 1024) {
4634
- report(parser, 140, name);
4635
+ report(parser, 141, name);
4635
4636
  }
4636
4637
  }
4637
4638
  currentScope['#' + name] = kind;
@@ -4641,7 +4642,7 @@ var meriyah = (function (exports) {
4641
4642
  function declareUnboundVariable(parser, name) {
4642
4643
  if (parser.exportedNames !== void 0 && name !== '') {
4643
4644
  if (parser.exportedNames['#' + name]) {
4644
- report(parser, 141, name);
4645
+ report(parser, 142, name);
4645
4646
  }
4646
4647
  parser.exportedNames['#' + name] = 1;
4647
4648
  }
@@ -4699,7 +4700,7 @@ var meriyah = (function (exports) {
4699
4700
  function classifyIdentifier(parser, context, t, isArrow) {
4700
4701
  if ((t & 537079808) === 537079808) {
4701
4702
  if (context & 1024)
4702
- report(parser, 115);
4703
+ report(parser, 116);
4703
4704
  if (isArrow)
4704
4705
  parser.flags |= 512;
4705
4706
  }
@@ -4792,7 +4793,7 @@ var meriyah = (function (exports) {
4792
4793
  if (scope) {
4793
4794
  for (const key in parser.exportedBindings) {
4794
4795
  if (key[0] === '#' && !scope[key])
4795
- report(parser, 142, key.slice(1));
4796
+ report(parser, 143, key.slice(1));
4796
4797
  }
4797
4798
  }
4798
4799
  }
@@ -4862,7 +4863,7 @@ var meriyah = (function (exports) {
4862
4863
  moduleItem = parseStatementListItem(parser, context, scope, 4, {});
4863
4864
  }
4864
4865
  if (parser.leadingDecorators.length) {
4865
- report(parser, 164);
4866
+ report(parser, 165);
4866
4867
  }
4867
4868
  return moduleItem;
4868
4869
  }
@@ -4881,7 +4882,7 @@ var meriyah = (function (exports) {
4881
4882
  case 241739:
4882
4883
  return parseLetIdentOrVarDeclarationStatement(parser, context, scope, origin, start, line, column);
4883
4884
  case 20566:
4884
- report(parser, 100, 'export');
4885
+ report(parser, 101, 'export');
4885
4886
  case 86108:
4886
4887
  nextToken(parser, context);
4887
4888
  switch (parser.token) {
@@ -4890,7 +4891,7 @@ var meriyah = (function (exports) {
4890
4891
  case 67108877:
4891
4892
  return parseImportMetaDeclaration(parser, context, start, line, column);
4892
4893
  default:
4893
- report(parser, 100, 'import');
4894
+ report(parser, 101, 'import');
4894
4895
  }
4895
4896
  case 209007:
4896
4897
  return parseAsyncArrowOrAsyncFunctionDeclaration(parser, context, scope, origin, labels, 1, start, line, column);
@@ -4933,17 +4934,17 @@ var meriyah = (function (exports) {
4933
4934
  case 209007:
4934
4935
  return parseAsyncArrowOrAsyncFunctionDeclaration(parser, context, scope, origin, labels, 0, start, line, column);
4935
4936
  case 20559:
4936
- report(parser, 156);
4937
- case 20568:
4938
4937
  report(parser, 157);
4938
+ case 20568:
4939
+ report(parser, 158);
4939
4940
  case 86106:
4940
4941
  report(parser, context & 1024
4941
- ? 73
4942
+ ? 74
4942
4943
  : (context & 256) === 0
4943
- ? 75
4944
- : 74);
4944
+ ? 76
4945
+ : 75);
4945
4946
  case 86096:
4946
- report(parser, 76);
4947
+ report(parser, 77);
4947
4948
  default:
4948
4949
  return parseExpressionOrLabelledStatement(parser, context, scope, origin, labels, allowFuncDecl, start, line, column);
4949
4950
  }
@@ -4955,9 +4956,9 @@ var meriyah = (function (exports) {
4955
4956
  case 241739:
4956
4957
  expr = parseIdentifier(parser, context, 0);
4957
4958
  if (context & 1024)
4958
- report(parser, 82);
4959
+ report(parser, 83);
4959
4960
  if (parser.token === 69271571)
4960
- report(parser, 81);
4961
+ report(parser, 82);
4961
4962
  break;
4962
4963
  default:
4963
4964
  expr = parsePrimaryExpression(parser, context, 2, 0, 1, 0, 0, 1, parser.tokenPos, parser.linePos, parser.colPos);
@@ -4986,7 +4987,7 @@ var meriyah = (function (exports) {
4986
4987
  }
4987
4988
  function parseReturnStatement(parser, context, start, line, column) {
4988
4989
  if ((context & 32) === 0 && context & 8192)
4989
- report(parser, 89);
4990
+ report(parser, 90);
4990
4991
  nextToken(parser, context | 32768);
4991
4992
  const argument = parser.flags & 1 || parser.token & 1048576
4992
4993
  ? null
@@ -5030,7 +5031,7 @@ var meriyah = (function (exports) {
5030
5031
  if (!asyncNewLine) {
5031
5032
  if (parser.token === 86106) {
5032
5033
  if (!allowFuncDecl)
5033
- report(parser, 119);
5034
+ report(parser, 120);
5034
5035
  return parseFunctionDeclaration(parser, context, scope, origin, 1, 0, 1, start, line, column);
5035
5036
  }
5036
5037
  if ((parser.token & 143360) === 143360) {
@@ -5089,7 +5090,7 @@ var meriyah = (function (exports) {
5089
5090
  function parseThrowStatement(parser, context, start, line, column) {
5090
5091
  nextToken(parser, context | 32768);
5091
5092
  if (parser.flags & 1)
5092
- report(parser, 87);
5093
+ report(parser, 88);
5093
5094
  const argument = parseExpressions(parser, context, 0, 1, parser.tokenPos, parser.linePos, parser.colPos);
5094
5095
  matchOrInsertSemicolon(parser, context | 32768);
5095
5096
  return finishNode(parser, context, start, line, column, {
@@ -5143,7 +5144,7 @@ var meriyah = (function (exports) {
5143
5144
  else {
5144
5145
  consume(parser, context | 32768, 20563);
5145
5146
  if (seenDefault)
5146
- report(parser, 86);
5147
+ report(parser, 87);
5147
5148
  seenDefault = 1;
5148
5149
  }
5149
5150
  consume(parser, context | 32768, 21);
@@ -5184,14 +5185,14 @@ var meriyah = (function (exports) {
5184
5185
  }
5185
5186
  function parseContinueStatement(parser, context, labels, start, line, column) {
5186
5187
  if ((context & 131072) === 0)
5187
- report(parser, 65);
5188
+ report(parser, 66);
5188
5189
  nextToken(parser, context);
5189
5190
  let label = null;
5190
5191
  if ((parser.flags & 1) === 0 && parser.token & 143360) {
5191
5192
  const { tokenValue } = parser;
5192
5193
  label = parseIdentifier(parser, context | 32768, 0);
5193
5194
  if (!isValidLabel(parser, labels, tokenValue, 1))
5194
- report(parser, 134, tokenValue);
5195
+ report(parser, 135, tokenValue);
5195
5196
  }
5196
5197
  matchOrInsertSemicolon(parser, context | 32768);
5197
5198
  return finishNode(parser, context, start, line, column, {
@@ -5206,10 +5207,10 @@ var meriyah = (function (exports) {
5206
5207
  const { tokenValue } = parser;
5207
5208
  label = parseIdentifier(parser, context | 32768, 0);
5208
5209
  if (!isValidLabel(parser, labels, tokenValue, 0))
5209
- report(parser, 134, tokenValue);
5210
+ report(parser, 135, tokenValue);
5210
5211
  }
5211
5212
  else if ((context & (4096 | 131072)) === 0) {
5212
- report(parser, 66);
5213
+ report(parser, 67);
5213
5214
  }
5214
5215
  matchOrInsertSemicolon(parser, context | 32768);
5215
5216
  return finishNode(parser, context, start, line, column, {
@@ -5220,7 +5221,7 @@ var meriyah = (function (exports) {
5220
5221
  function parseWithStatement(parser, context, scope, labels, start, line, column) {
5221
5222
  nextToken(parser, context);
5222
5223
  if (context & 1024)
5223
- report(parser, 88);
5224
+ report(parser, 89);
5224
5225
  consume(parser, context | 32768, 67174411);
5225
5226
  const object = parseExpressions(parser, context, 0, 1, parser.tokenPos, parser.linePos, parser.colPos);
5226
5227
  consume(parser, context | 32768, 16);
@@ -5253,7 +5254,7 @@ var meriyah = (function (exports) {
5253
5254
  finalizer = parseBlock(parser, context, finalizerScope, { $: labels }, parser.tokenPos, parser.linePos, parser.colPos);
5254
5255
  }
5255
5256
  if (!handler && !finalizer) {
5256
- report(parser, 85);
5257
+ report(parser, 86);
5257
5258
  }
5258
5259
  return finishNode(parser, context, start, line, column, {
5259
5260
  type: 'TryStatement',
@@ -5272,10 +5273,10 @@ var meriyah = (function (exports) {
5272
5273
  ? 256
5273
5274
  : 512, 0, parser.tokenPos, parser.linePos, parser.colPos);
5274
5275
  if (parser.token === 18) {
5275
- report(parser, 83);
5276
+ report(parser, 84);
5276
5277
  }
5277
5278
  else if (parser.token === 1077936157) {
5278
- report(parser, 84);
5279
+ report(parser, 85);
5279
5280
  }
5280
5281
  consume(parser, context | 32768, 16);
5281
5282
  if (scope)
@@ -5327,7 +5328,7 @@ var meriyah = (function (exports) {
5327
5328
  }
5328
5329
  parser.assignable = 1;
5329
5330
  if (context & 1024)
5330
- report(parser, 82);
5331
+ report(parser, 83);
5331
5332
  if (parser.token === 21) {
5332
5333
  return parseLabelledStatement(parser, context, scope, origin, {}, tokenValue, expr, token, 0, start, line, column);
5333
5334
  }
@@ -5375,7 +5376,7 @@ var meriyah = (function (exports) {
5375
5376
  list.push(parseVariableDeclaration(parser, context, scope, kind, origin));
5376
5377
  }
5377
5378
  if (bindingCount > 1 && origin & 32 && parser.token & 262144) {
5378
- report(parser, 58, KeywordDescTable[parser.token & 255]);
5379
+ report(parser, 59, KeywordDescTable[parser.token & 255]);
5379
5380
  }
5380
5381
  return list;
5381
5382
  }
@@ -5390,13 +5391,13 @@ var meriyah = (function (exports) {
5390
5391
  if (parser.token === 274549 ||
5391
5392
  (parser.token === 8738868 &&
5392
5393
  (token & 2097152 || (kind & 4) === 0 || context & 1024))) {
5393
- reportMessageAt(tokenPos, parser.line, parser.index - 3, 57, parser.token === 274549 ? 'of' : 'in');
5394
+ reportMessageAt(tokenPos, parser.line, parser.index - 3, 58, parser.token === 274549 ? 'of' : 'in');
5394
5395
  }
5395
5396
  }
5396
5397
  }
5397
5398
  else if ((kind & 16 || (token & 2097152) > 0) &&
5398
5399
  (parser.token & 262144) !== 262144) {
5399
- report(parser, 56, kind & 16 ? 'const' : 'destructuring');
5400
+ report(parser, 57, kind & 16 ? 'const' : 'destructuring');
5400
5401
  }
5401
5402
  return finishNode(parser, context, tokenPos, linePos, colPos, {
5402
5403
  type: 'VariableDeclarator',
@@ -5424,7 +5425,7 @@ var meriyah = (function (exports) {
5424
5425
  if (parser.token & (143360 | 2097152)) {
5425
5426
  if (parser.token === 8738868) {
5426
5427
  if (context & 1024)
5427
- report(parser, 64);
5428
+ report(parser, 65);
5428
5429
  }
5429
5430
  else {
5430
5431
  init = finishNode(parser, context, tokenPos, linePos, colPos, {
@@ -5436,14 +5437,14 @@ var meriyah = (function (exports) {
5436
5437
  parser.assignable = 1;
5437
5438
  }
5438
5439
  else if (context & 1024) {
5439
- report(parser, 64);
5440
+ report(parser, 65);
5440
5441
  }
5441
5442
  else {
5442
5443
  isVarDecl = false;
5443
5444
  parser.assignable = 1;
5444
5445
  init = parseMemberOrUpdateExpression(parser, context, init, 0, 0, tokenPos, linePos, colPos);
5445
5446
  if (parser.token === 274549)
5446
- report(parser, 111);
5447
+ report(parser, 112);
5447
5448
  }
5448
5449
  }
5449
5450
  else {
@@ -5464,7 +5465,7 @@ var meriyah = (function (exports) {
5464
5465
  }
5465
5466
  else if (token === 1074790417) {
5466
5467
  if (forAwait)
5467
- report(parser, 79);
5468
+ report(parser, 80);
5468
5469
  }
5469
5470
  else if ((token & 2097152) === 2097152) {
5470
5471
  init =
@@ -5473,7 +5474,7 @@ var meriyah = (function (exports) {
5473
5474
  : parseArrayExpressionOrPattern(parser, context, void 0, 1, 0, 0, 2, 32, tokenPos, linePos, colPos);
5474
5475
  destructible = parser.destructible;
5475
5476
  if (context & 256 && destructible & 64) {
5476
- report(parser, 60);
5477
+ report(parser, 61);
5477
5478
  }
5478
5479
  parser.assignable =
5479
5480
  destructible & 16 ? 2 : 1;
@@ -5485,7 +5486,7 @@ var meriyah = (function (exports) {
5485
5486
  if ((parser.token & 262144) === 262144) {
5486
5487
  if (parser.token === 274549) {
5487
5488
  if (parser.assignable & 2)
5488
- report(parser, 77, forAwait ? 'await' : 'of');
5489
+ report(parser, 78, forAwait ? 'await' : 'of');
5489
5490
  reinterpretToPattern(parser, init);
5490
5491
  nextToken(parser, context | 32768);
5491
5492
  right = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
@@ -5500,11 +5501,11 @@ var meriyah = (function (exports) {
5500
5501
  });
5501
5502
  }
5502
5503
  if (parser.assignable & 2)
5503
- report(parser, 77, 'in');
5504
+ report(parser, 78, 'in');
5504
5505
  reinterpretToPattern(parser, init);
5505
5506
  nextToken(parser, context | 32768);
5506
5507
  if (forAwait)
5507
- report(parser, 79);
5508
+ report(parser, 80);
5508
5509
  right = parseExpressions(parser, context, 0, 1, parser.tokenPos, parser.linePos, parser.colPos);
5509
5510
  consume(parser, context | 32768, 16);
5510
5511
  const body = parseIterationStatementBody(parser, context, scope, labels);
@@ -5516,10 +5517,10 @@ var meriyah = (function (exports) {
5516
5517
  });
5517
5518
  }
5518
5519
  if (forAwait)
5519
- report(parser, 79);
5520
+ report(parser, 80);
5520
5521
  if (!isVarDecl) {
5521
5522
  if (destructible & 8 && parser.token !== 1077936157) {
5522
- report(parser, 77, 'loop');
5523
+ report(parser, 78, 'loop');
5523
5524
  }
5524
5525
  init = parseAssignmentExpression(parser, context | 134217728, 0, 0, tokenPos, linePos, colPos, init);
5525
5526
  }
@@ -5543,9 +5544,9 @@ var meriyah = (function (exports) {
5543
5544
  }
5544
5545
  function parseRestrictedIdentifier(parser, context, scope) {
5545
5546
  if (!isValidIdentifier(context, parser.token))
5546
- report(parser, 114);
5547
- if ((parser.token & 537079808) === 537079808)
5548
5547
  report(parser, 115);
5548
+ if ((parser.token & 537079808) === 537079808)
5549
+ report(parser, 116);
5549
5550
  if (scope)
5550
5551
  addBlockName(parser, context, scope, parser.tokenValue, 8, 0);
5551
5552
  return parseIdentifier(parser, context, 0);
@@ -5579,7 +5580,7 @@ var meriyah = (function (exports) {
5579
5580
  parseImportSpecifierOrNamedImports(parser, context, scope, specifiers);
5580
5581
  break;
5581
5582
  default:
5582
- report(parser, 104);
5583
+ report(parser, 105);
5583
5584
  }
5584
5585
  }
5585
5586
  }
@@ -5623,7 +5624,7 @@ var meriyah = (function (exports) {
5623
5624
  function parseModuleSpecifier(parser, context) {
5624
5625
  consumeOpt(parser, context, 12404);
5625
5626
  if (parser.token !== 134283267)
5626
- report(parser, 102, 'Import');
5627
+ report(parser, 103, 'Import');
5627
5628
  return parseLiteral(parser, context);
5628
5629
  }
5629
5630
  function parseImportSpecifierOrNamedImports(parser, context, scope, specifiers) {
@@ -5634,7 +5635,7 @@ var meriyah = (function (exports) {
5634
5635
  let local;
5635
5636
  if (consumeOpt(parser, context, 77934)) {
5636
5637
  if ((parser.token & 134217728) === 134217728 || parser.token === 18) {
5637
- report(parser, 103);
5638
+ report(parser, 104);
5638
5639
  }
5639
5640
  else {
5640
5641
  validateBindingIdentifier(parser, context, 16, parser.token, 0);
@@ -5738,7 +5739,7 @@ var meriyah = (function (exports) {
5738
5739
  }
5739
5740
  consume(parser, context, 12404);
5740
5741
  if (parser.token !== 134283267)
5741
- report(parser, 102, 'Export');
5742
+ report(parser, 103, 'Export');
5742
5743
  source = parseLiteral(parser, context);
5743
5744
  matchOrInsertSemicolon(parser, context | 32768);
5744
5745
  return finishNode(parser, context, start, line, column, {
@@ -5758,7 +5759,7 @@ var meriyah = (function (exports) {
5758
5759
  if (parser.token === 77934) {
5759
5760
  nextToken(parser, context);
5760
5761
  if ((parser.token & 134217728) === 134217728) {
5761
- report(parser, 103);
5762
+ report(parser, 104);
5762
5763
  }
5763
5764
  if (scope) {
5764
5765
  tmpExportedNames.push(parser.tokenValue);
@@ -5784,7 +5785,7 @@ var meriyah = (function (exports) {
5784
5785
  consume(parser, context, 1074790415);
5785
5786
  if (consumeOpt(parser, context, 12404)) {
5786
5787
  if (parser.token !== 134283267)
5787
- report(parser, 102, 'Export');
5788
+ report(parser, 103, 'Export');
5788
5789
  source = parseLiteral(parser, context);
5789
5790
  }
5790
5791
  else if (scope) {
@@ -5933,7 +5934,7 @@ var meriyah = (function (exports) {
5933
5934
  t = parser.token;
5934
5935
  prec = t & 3840;
5935
5936
  if ((t & 524288 && operator & 268435456) || (operator & 524288 && t & 268435456)) {
5936
- report(parser, 159);
5937
+ report(parser, 160);
5937
5938
  }
5938
5939
  if (prec + ((t === 8457273) << 8) - ((bit === t) << 12) <= minPrec)
5939
5940
  break;
@@ -5959,10 +5960,10 @@ var meriyah = (function (exports) {
5959
5960
  report(parser, 31);
5960
5961
  if (context & 1024 && unaryOperator === 16863278) {
5961
5962
  if (arg.type === 'Identifier') {
5962
- report(parser, 117);
5963
+ report(parser, 118);
5963
5964
  }
5964
5965
  else if (isPropertyWithPrivateFieldKey(arg)) {
5965
- report(parser, 123);
5966
+ report(parser, 124);
5966
5967
  }
5967
5968
  }
5968
5969
  parser.assignable = 2;
@@ -5993,7 +5994,7 @@ var meriyah = (function (exports) {
5993
5994
  if (parser.token === 10) {
5994
5995
  classifyIdentifier(parser, context, token, 1);
5995
5996
  if (inNew)
5996
- report(parser, 48);
5997
+ report(parser, 49);
5997
5998
  return parseArrowFromIdentifier(parser, context, parser.tokenValue, expr, inNew, canAssign, 0, start, line, column);
5998
5999
  }
5999
6000
  return expr;
@@ -6008,7 +6009,7 @@ var meriyah = (function (exports) {
6008
6009
  if (!canAssign)
6009
6010
  report(parser, 24);
6010
6011
  if (parser.token === 22)
6011
- report(parser, 120);
6012
+ report(parser, 121);
6012
6013
  let argument = null;
6013
6014
  let delegate = false;
6014
6015
  if ((parser.flags & 1) === 0) {
@@ -6025,7 +6026,7 @@ var meriyah = (function (exports) {
6025
6026
  });
6026
6027
  }
6027
6028
  if (context & 1024)
6028
- report(parser, 94, 'yield');
6029
+ report(parser, 95, 'yield');
6029
6030
  return parseIdentifierOrArrow(parser, context, start, line, column);
6030
6031
  }
6031
6032
  function parseAwaitExpression(parser, context, inNew, inGroup, start, line, column) {
@@ -6048,7 +6049,7 @@ var meriyah = (function (exports) {
6048
6049
  });
6049
6050
  }
6050
6051
  if (context & 2048)
6051
- report(parser, 95);
6052
+ report(parser, 96);
6052
6053
  return parseIdentifierOrArrow(parser, context, start, line, column);
6053
6054
  }
6054
6055
  function parseFunctionBody(parser, context, scope, origin, firstRestricted, scopeError) {
@@ -6063,7 +6064,7 @@ var meriyah = (function (exports) {
6063
6064
  if (isValidStrictMode(parser, index, tokenPos, tokenValue)) {
6064
6065
  context |= 1024;
6065
6066
  if (parser.flags & 128) {
6066
- reportMessageAt(parser.index, parser.line, parser.tokenPos, 63);
6067
+ reportMessageAt(parser.index, parser.line, parser.tokenPos, 64);
6067
6068
  }
6068
6069
  if (parser.flags & 64) {
6069
6070
  reportMessageAt(parser.index, parser.line, parser.tokenPos, 8);
@@ -6074,16 +6075,16 @@ var meriyah = (function (exports) {
6074
6075
  if (context & 1024) {
6075
6076
  if (firstRestricted) {
6076
6077
  if ((firstRestricted & 537079808) === 537079808) {
6077
- report(parser, 115);
6078
+ report(parser, 116);
6078
6079
  }
6079
6080
  if ((firstRestricted & 36864) === 36864) {
6080
6081
  report(parser, 38);
6081
6082
  }
6082
6083
  }
6083
6084
  if (parser.flags & 512)
6084
- report(parser, 115);
6085
+ report(parser, 116);
6085
6086
  if (parser.flags & 256)
6086
- report(parser, 114);
6087
+ report(parser, 115);
6087
6088
  }
6088
6089
  if (context & 64 &&
6089
6090
  scope &&
@@ -6113,7 +6114,7 @@ var meriyah = (function (exports) {
6113
6114
  nextToken(parser, context);
6114
6115
  switch (parser.token) {
6115
6116
  case 67108991:
6116
- report(parser, 161);
6117
+ report(parser, 162);
6117
6118
  case 67174411: {
6118
6119
  if ((context & 524288) === 0)
6119
6120
  report(parser, 26);
@@ -6142,7 +6143,7 @@ var meriyah = (function (exports) {
6142
6143
  }
6143
6144
  function parseUpdateExpression(parser, context, expr, start, line, column) {
6144
6145
  if (parser.assignable & 2)
6145
- report(parser, 52);
6146
+ report(parser, 53);
6146
6147
  const { token } = parser;
6147
6148
  nextToken(parser, context);
6148
6149
  parser.assignable = 2;
@@ -6225,7 +6226,7 @@ var meriyah = (function (exports) {
6225
6226
  }
6226
6227
  default:
6227
6228
  if ((parser.flags & 2048) === 2048) {
6228
- report(parser, 160);
6229
+ report(parser, 161);
6229
6230
  }
6230
6231
  parser.assignable = 2;
6231
6232
  expr = finishNode(parser, context, start, line, column, {
@@ -6282,7 +6283,7 @@ var meriyah = (function (exports) {
6282
6283
  }
6283
6284
  else {
6284
6285
  if ((parser.token & (143360 | 4096)) === 0)
6285
- report(parser, 154);
6286
+ report(parser, 155);
6286
6287
  const property = parseIdentifier(parser, context, 0);
6287
6288
  parser.assignable = 2;
6288
6289
  node = finishNode(parser, context, start, line, column, {
@@ -6300,7 +6301,7 @@ var meriyah = (function (exports) {
6300
6301
  }
6301
6302
  function parsePropertyOrPrivatePropertyName(parser, context) {
6302
6303
  if ((parser.token & (143360 | 4096)) === 0 && parser.token !== 131) {
6303
- report(parser, 154);
6304
+ report(parser, 155);
6304
6305
  }
6305
6306
  return context & 1 && parser.token === 131
6306
6307
  ? parsePrivateIdentifier(parser, context, parser.tokenPos, parser.linePos, parser.colPos)
@@ -6308,14 +6309,14 @@ var meriyah = (function (exports) {
6308
6309
  }
6309
6310
  function parseUpdateExpressionPrefixed(parser, context, inNew, isLHS, start, line, column) {
6310
6311
  if (inNew)
6311
- report(parser, 53);
6312
+ report(parser, 54);
6312
6313
  if (!isLHS)
6313
6314
  report(parser, 0);
6314
6315
  const { token } = parser;
6315
6316
  nextToken(parser, context | 32768);
6316
6317
  const arg = parseLeftHandSideExpression(parser, context, 0, 0, 1, parser.tokenPos, parser.linePos, parser.colPos);
6317
6318
  if (parser.assignable & 2) {
6318
- report(parser, 52);
6319
+ report(parser, 53);
6319
6320
  }
6320
6321
  parser.assignable = 2;
6321
6322
  return finishNode(parser, context, start, line, column, {
@@ -6344,12 +6345,12 @@ var meriyah = (function (exports) {
6344
6345
  return parseArrowFromIdentifier(parser, context, tokenValue, expr, inNew, canAssign, 0, start, line, column);
6345
6346
  }
6346
6347
  if (context & 16384 && token === 537079928)
6347
- report(parser, 126);
6348
+ report(parser, 127);
6348
6349
  if (token === 241739) {
6349
6350
  if (context & 1024)
6350
- report(parser, 109);
6351
+ report(parser, 110);
6351
6352
  if (kind & (8 | 16))
6352
- report(parser, 97);
6353
+ report(parser, 98);
6353
6354
  }
6354
6355
  parser.assignable =
6355
6356
  context & 1024 && (token & 537079808) === 537079808
@@ -6420,14 +6421,14 @@ var meriyah = (function (exports) {
6420
6421
  return parseImportMetaExpression(parser, context, expr, start, line, column);
6421
6422
  }
6422
6423
  if (inNew)
6423
- report(parser, 137);
6424
+ report(parser, 138);
6424
6425
  expr = parseImportExpression(parser, context, inGroup, start, line, column);
6425
6426
  parser.assignable = 2;
6426
6427
  return parseMemberOrUpdateExpression(parser, context, expr, inGroup, 0, start, line, column);
6427
6428
  }
6428
6429
  function parseImportMetaExpression(parser, context, meta, start, line, column) {
6429
6430
  if ((context & 2048) === 0)
6430
- report(parser, 163);
6431
+ report(parser, 164);
6431
6432
  nextToken(parser, context);
6432
6433
  if (parser.token !== 143495 && parser.tokenValue !== 'meta')
6433
6434
  report(parser, 28, KeywordDescTable[parser.token & 255]);
@@ -6441,7 +6442,7 @@ var meriyah = (function (exports) {
6441
6442
  function parseImportExpression(parser, context, inGroup, start, line, column) {
6442
6443
  consume(parser, context | 32768, 67174411);
6443
6444
  if (parser.token === 14)
6444
- report(parser, 138);
6445
+ report(parser, 139);
6445
6446
  const source = parseExpression(parser, context, 1, 0, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
6446
6447
  consume(parser, context, 16);
6447
6448
  return finishNode(parser, context, start, line, column, {
@@ -6486,14 +6487,14 @@ var meriyah = (function (exports) {
6486
6487
  ];
6487
6488
  const expressions = [parseExpressions(parser, context, 0, 1, parser.tokenPos, parser.linePos, parser.colPos)];
6488
6489
  if (parser.token !== 1074790415)
6489
- report(parser, 80);
6490
+ report(parser, 81);
6490
6491
  while ((parser.token = scanTemplateTail(parser, context)) !== 67174409) {
6491
6492
  const { tokenValue, tokenRaw, tokenPos, linePos, colPos } = parser;
6492
6493
  consume(parser, context | 32768, 67174408);
6493
6494
  quasis.push(parseTemplateElement(parser, context, tokenValue, tokenRaw, tokenPos, linePos, colPos, false));
6494
6495
  expressions.push(parseExpressions(parser, context, 0, 1, parser.tokenPos, parser.linePos, parser.colPos));
6495
6496
  if (parser.token !== 1074790415)
6496
- report(parser, 80);
6497
+ report(parser, 81);
6497
6498
  }
6498
6499
  {
6499
6500
  const { tokenValue, tokenRaw, tokenPos, linePos, colPos } = parser;
@@ -6709,10 +6710,10 @@ var meriyah = (function (exports) {
6709
6710
  function parseArrayLiteral(parser, context, skipInitializer, inGroup, start, line, column) {
6710
6711
  const expr = parseArrayExpressionOrPattern(parser, context, void 0, skipInitializer, inGroup, 0, 2, 0, start, line, column);
6711
6712
  if (context & 256 && parser.destructible & 64) {
6712
- report(parser, 60);
6713
+ report(parser, 61);
6713
6714
  }
6714
6715
  if (parser.destructible & 8) {
6715
- report(parser, 59);
6716
+ report(parser, 60);
6716
6717
  }
6717
6718
  return expr;
6718
6719
  }
@@ -6807,7 +6808,7 @@ var meriyah = (function (exports) {
6807
6808
  }
6808
6809
  }
6809
6810
  else if (parser.destructible & 8) {
6810
- report(parser, 68);
6811
+ report(parser, 69);
6811
6812
  }
6812
6813
  else {
6813
6814
  left = parseMemberOrUpdateExpression(parser, context, left, inGroup, 0, tokenPos, linePos, colPos);
@@ -6906,7 +6907,7 @@ var meriyah = (function (exports) {
6906
6907
  argument = parseMemberOrUpdateExpression(parser, context, argument, inGroup, 0, tokenPos, linePos, colPos);
6907
6908
  if (parser.token !== 18 && parser.token !== closingToken) {
6908
6909
  if (parser.assignable & 2 && parser.token === 1077936157)
6909
- report(parser, 68);
6910
+ report(parser, 69);
6910
6911
  destructible |= 16;
6911
6912
  argument = parseAssignmentExpression(parser, context, inGroup, isPattern, tokenPos, linePos, colPos, argument);
6912
6913
  }
@@ -6933,7 +6934,7 @@ var meriyah = (function (exports) {
6933
6934
  token = parser.token;
6934
6935
  if (token !== 1077936157 && token !== closingToken && token !== 18) {
6935
6936
  if (parser.destructible & 8)
6936
- report(parser, 68);
6937
+ report(parser, 69);
6937
6938
  argument = parseMemberOrUpdateExpression(parser, context, argument, inGroup, 0, tokenPos, linePos, colPos);
6938
6939
  destructible |= parser.assignable & 2 ? 16 : 0;
6939
6940
  if ((parser.token & 4194304) === 4194304) {
@@ -6983,7 +6984,7 @@ var meriyah = (function (exports) {
6983
6984
  }
6984
6985
  parser.destructible = destructible;
6985
6986
  if (parser.token !== closingToken && parser.token !== 18)
6986
- report(parser, 155);
6987
+ report(parser, 156);
6987
6988
  return finishNode(parser, context, start, line, column, {
6988
6989
  type: isPattern ? 'RestElement' : 'SpreadElement',
6989
6990
  argument: argument
@@ -7044,10 +7045,10 @@ var meriyah = (function (exports) {
7044
7045
  function parseObjectLiteral(parser, context, skipInitializer, inGroup, start, line, column) {
7045
7046
  const expr = parseObjectLiteralOrPattern(parser, context, void 0, skipInitializer, inGroup, 0, 2, 0, start, line, column);
7046
7047
  if (context & 256 && parser.destructible & 64) {
7047
- report(parser, 60);
7048
+ report(parser, 61);
7048
7049
  }
7049
7050
  if (parser.destructible & 8) {
7050
- report(parser, 59);
7051
+ report(parser, 60);
7051
7052
  }
7052
7053
  return expr;
7053
7054
  }
@@ -7164,7 +7165,7 @@ var meriyah = (function (exports) {
7164
7165
  destructible |= 16;
7165
7166
  }
7166
7167
  else if (parser.destructible & 8) {
7167
- report(parser, 68);
7168
+ report(parser, 69);
7168
7169
  }
7169
7170
  else {
7170
7171
  value = parseMemberOrUpdateExpression(parser, context, value, inGroup, 0, tokenPos, linePos, colPos);
@@ -7224,10 +7225,10 @@ var meriyah = (function (exports) {
7224
7225
  else if (parser.token & (143360 | 4096)) {
7225
7226
  destructible |= 16;
7226
7227
  if (token === 121)
7227
- report(parser, 92);
7228
+ report(parser, 93);
7228
7229
  if (token === 209007) {
7229
7230
  if (parser.flags & 1)
7230
- report(parser, 128);
7231
+ report(parser, 129);
7231
7232
  state |= 16;
7232
7233
  }
7233
7234
  key = parseIdentifier(parser, context, 0);
@@ -7246,11 +7247,14 @@ var meriyah = (function (exports) {
7246
7247
  }
7247
7248
  else if (parser.token === 8457014) {
7248
7249
  destructible |= 16;
7249
- if (token === 12402 || token === 12403) {
7250
+ if (token === 12402) {
7250
7251
  report(parser, 40);
7251
7252
  }
7253
+ else if (token === 12403) {
7254
+ report(parser, 41);
7255
+ }
7252
7256
  else if (token === 143483) {
7253
- report(parser, 92);
7257
+ report(parser, 93);
7254
7258
  }
7255
7259
  nextToken(parser, context);
7256
7260
  state |=
@@ -7285,7 +7289,7 @@ var meriyah = (function (exports) {
7285
7289
  value = parseMethodDefinition(parser, context, state, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7286
7290
  }
7287
7291
  else {
7288
- report(parser, 129);
7292
+ report(parser, 130);
7289
7293
  }
7290
7294
  }
7291
7295
  else if ((parser.token & 134217728) === 134217728) {
@@ -7386,7 +7390,7 @@ var meriyah = (function (exports) {
7386
7390
  destructible = parser.assignable | 16;
7387
7391
  }
7388
7392
  else {
7389
- report(parser, 130);
7393
+ report(parser, 131);
7390
7394
  }
7391
7395
  }
7392
7396
  else if (parser.token === 69271571) {
@@ -7443,7 +7447,7 @@ var meriyah = (function (exports) {
7443
7447
  destructible |= 16;
7444
7448
  }
7445
7449
  else if (destructible & 8) {
7446
- report(parser, 59);
7450
+ report(parser, 60);
7447
7451
  }
7448
7452
  else {
7449
7453
  value = parseMemberOrUpdateExpression(parser, context, value, inGroup, 0, tokenPos, linePos, colPos);
@@ -7495,7 +7499,7 @@ var meriyah = (function (exports) {
7495
7499
  destructible = 16;
7496
7500
  }
7497
7501
  else {
7498
- report(parser, 41);
7502
+ report(parser, 42);
7499
7503
  }
7500
7504
  }
7501
7505
  else if (token === 8457014) {
@@ -7511,10 +7515,10 @@ var meriyah = (function (exports) {
7511
7515
  }
7512
7516
  else {
7513
7517
  reportMessageAt(index, line, index, token === 209007
7514
- ? 43
7518
+ ? 44
7515
7519
  : token === 12402 || parser.token === 12403
7516
- ? 42
7517
- : 44, KeywordDescTable[token & 255]);
7520
+ ? 43
7521
+ : 45, KeywordDescTable[token & 255]);
7518
7522
  }
7519
7523
  }
7520
7524
  else if ((parser.token & 134217728) === 134217728) {
@@ -7530,7 +7534,7 @@ var meriyah = (function (exports) {
7530
7534
  value = parseMethodDefinition(parser, context, state, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7531
7535
  }
7532
7536
  else {
7533
- report(parser, 122);
7537
+ report(parser, 123);
7534
7538
  }
7535
7539
  }
7536
7540
  else {
@@ -7612,7 +7616,7 @@ var meriyah = (function (exports) {
7612
7616
  }
7613
7617
  isSimpleParameterList = 1;
7614
7618
  if (parser.destructible & (32 | 16))
7615
- report(parser, 47);
7619
+ report(parser, 48);
7616
7620
  }
7617
7621
  if (parser.token === 1077936157) {
7618
7622
  nextToken(parser, context | 32768);
@@ -7704,7 +7708,7 @@ var meriyah = (function (exports) {
7704
7708
  parser.assignable = 2;
7705
7709
  if (parser.token !== 16 && parser.token !== 18) {
7706
7710
  if (destructible & 8)
7707
- report(parser, 118);
7711
+ report(parser, 119);
7708
7712
  expr = parseMemberOrUpdateExpression(parser, context, expr, 0, 0, tokenPos, linePos, colPos);
7709
7713
  destructible |= 16;
7710
7714
  if (parser.token !== 16 && parser.token !== 18) {
@@ -7715,7 +7719,7 @@ var meriyah = (function (exports) {
7715
7719
  else if (token === 14) {
7716
7720
  expr = parseSpreadOrRestElement(parser, context, scope, 16, kind, origin, 0, 1, 0, tokenPos, linePos, colPos);
7717
7721
  if (parser.destructible & 16)
7718
- report(parser, 71);
7722
+ report(parser, 72);
7719
7723
  isSimpleParameterList = 1;
7720
7724
  if (isSequence && (parser.token === 16 || parser.token === 18)) {
7721
7725
  expressions.push(expr);
@@ -7772,7 +7776,7 @@ var meriyah = (function (exports) {
7772
7776
  }
7773
7777
  consume(parser, context, 16);
7774
7778
  if (destructible & 16 && destructible & 8)
7775
- report(parser, 145);
7779
+ report(parser, 146);
7776
7780
  destructible |=
7777
7781
  parser.destructible & 256
7778
7782
  ? 256
@@ -7781,7 +7785,7 @@ var meriyah = (function (exports) {
7781
7785
  : 0;
7782
7786
  if (parser.token === 10) {
7783
7787
  if (destructible & (32 | 16))
7784
- report(parser, 46);
7788
+ report(parser, 47);
7785
7789
  if (context & (4194304 | 2048) && destructible & 128)
7786
7790
  report(parser, 29);
7787
7791
  if (context & (1024 | 2097152) && destructible & 256) {
@@ -7792,7 +7796,7 @@ var meriyah = (function (exports) {
7792
7796
  return parseParenthesizedArrow(parser, context, scope, isSequence ? expressions : [expr], canAssign, 0, start, line, column);
7793
7797
  }
7794
7798
  else if (destructible & 8) {
7795
- report(parser, 139);
7799
+ report(parser, 140);
7796
7800
  }
7797
7801
  parser.destructible = ((parser.destructible | 256) ^ 256) | destructible;
7798
7802
  return context & 128
@@ -7817,23 +7821,23 @@ var meriyah = (function (exports) {
7817
7821
  }
7818
7822
  function parseArrowFromIdentifier(parser, context, value, expr, inNew, canAssign, isAsync, start, line, column) {
7819
7823
  if (!canAssign)
7820
- report(parser, 54);
7824
+ report(parser, 55);
7821
7825
  if (inNew)
7822
- report(parser, 48);
7826
+ report(parser, 49);
7823
7827
  parser.flags &= ~128;
7824
7828
  const scope = context & 64 ? createArrowHeadParsingScope(parser, context, value) : void 0;
7825
7829
  return parseArrowFunctionExpression(parser, context, scope, [expr], isAsync, start, line, column);
7826
7830
  }
7827
7831
  function parseParenthesizedArrow(parser, context, scope, params, canAssign, isAsync, start, line, column) {
7828
7832
  if (!canAssign)
7829
- report(parser, 54);
7833
+ report(parser, 55);
7830
7834
  for (let i = 0; i < params.length; ++i)
7831
7835
  reinterpretToPattern(parser, params[i]);
7832
7836
  return parseArrowFunctionExpression(parser, context, scope, params, isAsync, start, line, column);
7833
7837
  }
7834
7838
  function parseArrowFunctionExpression(parser, context, scope, params, isAsync, start, line, column) {
7835
7839
  if (parser.flags & 1)
7836
- report(parser, 45);
7840
+ report(parser, 46);
7837
7841
  consume(parser, context | 32768, 10);
7838
7842
  context = ((context | 15728640) ^ 15728640) | (isAsync << 22);
7839
7843
  const expression = parser.token !== 2162700;
@@ -7852,16 +7856,16 @@ var meriyah = (function (exports) {
7852
7856
  switch (parser.token) {
7853
7857
  case 69271571:
7854
7858
  if ((parser.flags & 1) === 0) {
7855
- report(parser, 112);
7859
+ report(parser, 113);
7856
7860
  }
7857
7861
  break;
7858
7862
  case 67108877:
7859
7863
  case 67174409:
7860
7864
  case 22:
7861
- report(parser, 113);
7865
+ report(parser, 114);
7862
7866
  case 67174411:
7863
7867
  if ((parser.flags & 1) === 0) {
7864
- report(parser, 112);
7868
+ report(parser, 113);
7865
7869
  }
7866
7870
  parser.flags |= 1024;
7867
7871
  break;
@@ -7869,7 +7873,7 @@ var meriyah = (function (exports) {
7869
7873
  if ((parser.token & 8454144) === 8454144 && (parser.flags & 1) === 0)
7870
7874
  report(parser, 28, KeywordDescTable[parser.token & 255]);
7871
7875
  if ((parser.token & 33619968) === 33619968)
7872
- report(parser, 121);
7876
+ report(parser, 122);
7873
7877
  }
7874
7878
  parser.assignable = 2;
7875
7879
  return finishNode(parser, context, start, line, column, {
@@ -7917,7 +7921,7 @@ var meriyah = (function (exports) {
7917
7921
  }
7918
7922
  isSimpleParameterList = 1;
7919
7923
  if (parser.destructible & (32 | 16)) {
7920
- report(parser, 47);
7924
+ report(parser, 48);
7921
7925
  }
7922
7926
  }
7923
7927
  if (parser.token === 1077936157) {
@@ -7993,16 +7997,16 @@ var meriyah = (function (exports) {
7993
7997
  parser.assignable = 2;
7994
7998
  return parseMetaProperty(parser, context, id, start, line, column);
7995
7999
  }
7996
- report(parser, 91);
8000
+ report(parser, 92);
7997
8001
  }
7998
8002
  parser.assignable = 2;
7999
8003
  if ((parser.token & 16842752) === 16842752) {
8000
- report(parser, 62, KeywordDescTable[parser.token & 255]);
8004
+ report(parser, 63, KeywordDescTable[parser.token & 255]);
8001
8005
  }
8002
8006
  const expr = parsePrimaryExpression(parser, context, 2, 1, 0, 0, inGroup, 1, tokenPos, linePos, colPos);
8003
8007
  context = (context | 134217728) ^ 134217728;
8004
8008
  if (parser.token === 67108991)
8005
- report(parser, 162);
8009
+ report(parser, 163);
8006
8010
  const callee = parseMembeExpressionNoCall(parser, context, expr, inGroup, tokenPos, linePos, colPos);
8007
8011
  parser.assignable = 2;
8008
8012
  return finishNode(parser, context, start, line, column, {
@@ -8037,7 +8041,7 @@ var meriyah = (function (exports) {
8037
8041
  if (consumeOpt(parser, context, 16)) {
8038
8042
  if (parser.token === 10) {
8039
8043
  if (flags & 1)
8040
- report(parser, 45);
8044
+ report(parser, 46);
8041
8045
  return parseParenthesizedArrow(parser, context, scope, [], canAssign, 1, start, line, column);
8042
8046
  }
8043
8047
  return finishNode(parser, context, start, line, column, {
@@ -8093,7 +8097,7 @@ var meriyah = (function (exports) {
8093
8097
  isSimpleParameterList = 1;
8094
8098
  if (parser.token !== 16 && parser.token !== 18) {
8095
8099
  if (destructible & 8)
8096
- report(parser, 118);
8100
+ report(parser, 119);
8097
8101
  expr = parseMemberOrUpdateExpression(parser, context, expr, 0, 0, tokenPos, linePos, colPos);
8098
8102
  destructible |= 16;
8099
8103
  if ((parser.token & 8454144) === 8454144) {
@@ -8141,7 +8145,7 @@ var meriyah = (function (exports) {
8141
8145
  if (destructible & (32 | 16))
8142
8146
  report(parser, 25);
8143
8147
  if (parser.flags & 1 || flags & 1)
8144
- report(parser, 45);
8148
+ report(parser, 46);
8145
8149
  if (destructible & 128)
8146
8150
  report(parser, 29);
8147
8151
  if (context & (1024 | 2097152) && destructible & 256)
@@ -8151,7 +8155,7 @@ var meriyah = (function (exports) {
8151
8155
  return parseParenthesizedArrow(parser, context, scope, params, canAssign, 1, start, line, column);
8152
8156
  }
8153
8157
  else if (destructible & 8) {
8154
- report(parser, 59);
8158
+ report(parser, 60);
8155
8159
  }
8156
8160
  parser.assignable = 2;
8157
8161
  return finishNode(parser, context, start, line, column, {
@@ -8196,10 +8200,10 @@ var meriyah = (function (exports) {
8196
8200
  const { tokenValue } = parser;
8197
8201
  if (parser.token & 4096 && parser.token !== 20567) {
8198
8202
  if (isStrictReservedWord(parser, context, parser.token)) {
8199
- report(parser, 114);
8203
+ report(parser, 115);
8200
8204
  }
8201
8205
  if ((parser.token & 537079808) === 537079808) {
8202
- report(parser, 115);
8206
+ report(parser, 116);
8203
8207
  }
8204
8208
  if (scope) {
8205
8209
  addBlockName(parser, context, scope, tokenValue, 32, 0);
@@ -8252,9 +8256,9 @@ var meriyah = (function (exports) {
8252
8256
  nextToken(parser, context);
8253
8257
  if (parser.token & 4096 && parser.token !== 20567) {
8254
8258
  if (isStrictReservedWord(parser, context, parser.token))
8255
- report(parser, 114);
8256
- if ((parser.token & 537079808) === 537079808) {
8257
8259
  report(parser, 115);
8260
+ if ((parser.token & 537079808) === 537079808) {
8261
+ report(parser, 116);
8258
8262
  }
8259
8263
  id = parseIdentifier(parser, context, 0);
8260
8264
  }
@@ -8313,13 +8317,13 @@ var meriyah = (function (exports) {
8313
8317
  decorators = parseDecorators(parser, context);
8314
8318
  length = decorators.length;
8315
8319
  if (length > 0 && parser.tokenValue === 'constructor') {
8316
- report(parser, 106);
8320
+ report(parser, 107);
8317
8321
  }
8318
8322
  if (parser.token === 1074790415)
8319
- report(parser, 105);
8323
+ report(parser, 106);
8320
8324
  if (consumeOpt(parser, context, 1074790417)) {
8321
8325
  if (length > 0)
8322
- report(parser, 116);
8326
+ report(parser, 117);
8323
8327
  continue;
8324
8328
  }
8325
8329
  body.push(parseClassElementList(parser, context, scope, inheritedContext, kind, decorators, 0, inGroup, parser.tokenPos, parser.linePos, parser.colPos));
@@ -8416,20 +8420,20 @@ var meriyah = (function (exports) {
8416
8420
  key = parsePrivateIdentifier(parser, context, tokenPos, linePos, colPos);
8417
8421
  }
8418
8422
  else
8419
- report(parser, 131);
8423
+ report(parser, 132);
8420
8424
  }
8421
8425
  if ((kind & 2) === 0) {
8422
8426
  if (parser.tokenValue === 'constructor') {
8423
8427
  if ((parser.token & 1073741824) === 1073741824) {
8424
- report(parser, 125);
8428
+ report(parser, 126);
8425
8429
  }
8426
8430
  else if ((kind & 32) === 0 && parser.token === 67174411) {
8427
8431
  if (kind & (768 | 16 | 128 | 8)) {
8428
- report(parser, 50, 'accessor');
8432
+ report(parser, 51, 'accessor');
8429
8433
  }
8430
8434
  else if ((context & 524288) === 0) {
8431
8435
  if (parser.flags & 32)
8432
- report(parser, 51);
8436
+ report(parser, 52);
8433
8437
  else
8434
8438
  parser.flags |= 32;
8435
8439
  }
@@ -8439,7 +8443,7 @@ var meriyah = (function (exports) {
8439
8443
  else if ((kind & 4096) === 0 &&
8440
8444
  kind & (32 | 768 | 8 | 16) &&
8441
8445
  parser.tokenValue === 'prototype') {
8442
- report(parser, 49);
8446
+ report(parser, 50);
8443
8447
  }
8444
8448
  }
8445
8449
  if (context & 1 && parser.token !== 67174411) {
@@ -8481,7 +8485,7 @@ var meriyah = (function (exports) {
8481
8485
  nextToken(parser, context);
8482
8486
  const { tokenValue } = parser;
8483
8487
  if (tokenValue === 'constructor')
8484
- report(parser, 124);
8488
+ report(parser, 125);
8485
8489
  nextToken(parser, context);
8486
8490
  return finishNode(parser, context, start, line, column, {
8487
8491
  type: 'PrivateIdentifier',
@@ -8496,7 +8500,7 @@ var meriyah = (function (exports) {
8496
8500
  nextToken(parser, context | 32768);
8497
8501
  const { tokenPos, linePos, colPos } = parser;
8498
8502
  if (parser.token === 537079928)
8499
- report(parser, 115);
8503
+ report(parser, 116);
8500
8504
  value = parsePrimaryExpression(parser, context | 16384, 2, 0, 1, 0, 0, 1, tokenPos, linePos, colPos);
8501
8505
  if ((parser.token & 1073741824) !== 1073741824) {
8502
8506
  value = parseMemberOrUpdateExpression(parser, context | 16384, value, 0, 0, tokenPos, linePos, colPos);
@@ -8524,33 +8528,33 @@ var meriyah = (function (exports) {
8524
8528
  ? parseArrayExpressionOrPattern(parser, context, scope, 1, 0, 1, type, origin, start, line, column)
8525
8529
  : parseObjectLiteralOrPattern(parser, context, scope, 1, 0, 1, type, origin, start, line, column);
8526
8530
  if (parser.destructible & 16)
8527
- report(parser, 47);
8531
+ report(parser, 48);
8528
8532
  if (parser.destructible & 32)
8529
- report(parser, 47);
8533
+ report(parser, 48);
8530
8534
  return left;
8531
8535
  }
8532
8536
  function parseAndClassifyIdentifier(parser, context, scope, kind, origin, start, line, column) {
8533
8537
  const { tokenValue, token } = parser;
8534
8538
  if (context & 1024) {
8535
8539
  if ((token & 537079808) === 537079808) {
8536
- report(parser, 115);
8540
+ report(parser, 116);
8537
8541
  }
8538
8542
  else if ((token & 36864) === 36864) {
8539
- report(parser, 114);
8543
+ report(parser, 115);
8540
8544
  }
8541
8545
  }
8542
8546
  if ((token & 20480) === 20480) {
8543
- report(parser, 99);
8547
+ report(parser, 100);
8544
8548
  }
8545
8549
  if (context & (2048 | 2097152) && token === 241773) {
8546
8550
  report(parser, 30);
8547
8551
  }
8548
8552
  if (token === 241739) {
8549
8553
  if (kind & (8 | 16))
8550
- report(parser, 97);
8554
+ report(parser, 98);
8551
8555
  }
8552
8556
  if (context & (4194304 | 2048) && token === 209008) {
8553
- report(parser, 95);
8557
+ report(parser, 96);
8554
8558
  }
8555
8559
  nextToken(parser, context);
8556
8560
  if (scope)
@@ -8578,7 +8582,7 @@ var meriyah = (function (exports) {
8578
8582
  closingElement = parseJSXClosingElement(parser, context, inJSXChild, parser.tokenPos, parser.linePos, parser.colPos);
8579
8583
  const close = isEqualTagName(closingElement.name);
8580
8584
  if (isEqualTagName(openingElement.name) !== close)
8581
- report(parser, 149, close);
8585
+ report(parser, 150, close);
8582
8586
  }
8583
8587
  return finishNode(parser, context, start, line, column, {
8584
8588
  type: 'JSXElement',
@@ -8734,7 +8738,7 @@ var meriyah = (function (exports) {
8734
8738
  value = parseJSXExpressionContainer(parser, context, 1, 1, tokenPos, linePos, colPos);
8735
8739
  break;
8736
8740
  default:
8737
- report(parser, 148);
8741
+ report(parser, 149);
8738
8742
  }
8739
8743
  }
8740
8744
  return finishNode(parser, context, start, line, column, {
@@ -8760,7 +8764,7 @@ var meriyah = (function (exports) {
8760
8764
  let expression = null;
8761
8765
  if (parser.token === 1074790415) {
8762
8766
  if (isAttr)
8763
- report(parser, 151);
8767
+ report(parser, 152);
8764
8768
  expression = parseJSXEmptyExpression(parser, context, parser.startPos, parser.startLine, parser.startColumn);
8765
8769
  }
8766
8770
  else {
@@ -8807,7 +8811,7 @@ var meriyah = (function (exports) {
8807
8811
  __proto__: null
8808
8812
  });
8809
8813
 
8810
- var version$1 = "4.3.1";
8814
+ var version$1 = "4.3.3";
8811
8815
 
8812
8816
  const version = version$1;
8813
8817
  function parseScript(source, options) {