meriyah 4.4.3 → 4.4.4

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.
@@ -1530,7 +1530,7 @@
1530
1530
  return 122;
1531
1531
  }
1532
1532
  if ((token & 20480) === 20480) {
1533
- if (context & 1073741824 && (context & 8192) === 0) {
1533
+ if (context & 268435456 && (context & 8192) === 0) {
1534
1534
  return token;
1535
1535
  }
1536
1536
  else {
@@ -1539,12 +1539,12 @@
1539
1539
  }
1540
1540
  return 143483;
1541
1541
  }
1542
- if (context & 1073741824 &&
1542
+ if (context & 268435456 &&
1543
1543
  (context & 8192) === 0 &&
1544
1544
  (token & 20480) === 20480)
1545
1545
  return token;
1546
1546
  if (token === 241773) {
1547
- return context & 1073741824
1547
+ return context & 268435456
1548
1548
  ? 143483
1549
1549
  : context & 2097152
1550
1550
  ? 121
@@ -4363,10 +4363,9 @@
4363
4363
  return parser.token;
4364
4364
  }
4365
4365
 
4366
- function matchOrInsertSemicolon(parser, context, specDeviation) {
4366
+ function matchOrInsertSemicolon(parser, context) {
4367
4367
  if ((parser.flags & 1) === 0 &&
4368
- (parser.token & 1048576) !== 1048576 &&
4369
- !specDeviation) {
4368
+ (parser.token & 1048576) !== 1048576) {
4370
4369
  report(parser, 28, KeywordDescTable[parser.token & 255]);
4371
4370
  }
4372
4371
  if (!consumeOpt(parser, context, 1074790417)) {
@@ -4758,7 +4757,7 @@
4758
4757
  if (options.ranges)
4759
4758
  context |= 2;
4760
4759
  if (options.uniqueKeyInPattern)
4761
- context |= -2147483648;
4760
+ context |= 536870912;
4762
4761
  if (options.lexical)
4763
4762
  context |= 64;
4764
4763
  if (options.webcompat)
@@ -4775,10 +4774,6 @@
4775
4774
  context |= 1024;
4776
4775
  if (options.jsx)
4777
4776
  context |= 16;
4778
- if (options.identifierPattern)
4779
- context |= 268435456;
4780
- if (options.specDeviation)
4781
- context |= 536870912;
4782
4777
  if (options.source)
4783
4778
  sourceFile = options.source;
4784
4779
  if (options.onComment != null) {
@@ -4830,7 +4825,7 @@
4830
4825
  return node;
4831
4826
  }
4832
4827
  function parseStatementList(parser, context, scope) {
4833
- nextToken(parser, context | 32768 | 1073741824);
4828
+ nextToken(parser, context | 32768 | 268435456);
4834
4829
  const statements = [];
4835
4830
  while (parser.token === 134283267) {
4836
4831
  const { index, tokenPos, tokenValue, linePos, colPos, token } = parser;
@@ -4963,14 +4958,14 @@
4963
4958
  let expr;
4964
4959
  switch (token) {
4965
4960
  case 241739:
4966
- expr = parseIdentifier(parser, context, 0);
4961
+ expr = parseIdentifier(parser, context);
4967
4962
  if (context & 1024)
4968
4963
  report(parser, 83);
4969
4964
  if (parser.token === 69271571)
4970
4965
  report(parser, 82);
4971
4966
  break;
4972
4967
  default:
4973
- expr = parsePrimaryExpression(parser, context, 2, 0, 1, 0, 0, 1, parser.tokenPos, parser.linePos, parser.colPos);
4968
+ expr = parsePrimaryExpression(parser, context, 2, 0, 1, 0, 1, parser.tokenPos, parser.linePos, parser.colPos);
4974
4969
  }
4975
4970
  if (token & 143360 && parser.token === 21) {
4976
4971
  return parseLabelledStatement(parser, context, scope, origin, labels, tokenValue, expr, token, allowFuncDecl, start, line, column);
@@ -5032,7 +5027,7 @@
5032
5027
  }
5033
5028
  function parseAsyncArrowOrAsyncFunctionDeclaration(parser, context, scope, origin, labels, allowFuncDecl, start, line, column) {
5034
5029
  const { token, tokenValue } = parser;
5035
- let expr = parseIdentifier(parser, context, 0);
5030
+ let expr = parseIdentifier(parser, context);
5036
5031
  if (parser.token === 21) {
5037
5032
  return parseLabelledStatement(parser, context, scope, origin, labels, tokenValue, expr, token, 1, start, line, column);
5038
5033
  }
@@ -5200,7 +5195,7 @@
5200
5195
  let label = null;
5201
5196
  if ((parser.flags & 1) === 0 && parser.token & 143360) {
5202
5197
  const { tokenValue } = parser;
5203
- label = parseIdentifier(parser, context | 32768, 0);
5198
+ label = parseIdentifier(parser, context | 32768);
5204
5199
  if (!isValidLabel(parser, labels, tokenValue, 1))
5205
5200
  report(parser, 135, tokenValue);
5206
5201
  }
@@ -5215,7 +5210,7 @@
5215
5210
  let label = null;
5216
5211
  if ((parser.flags & 1) === 0 && parser.token & 143360) {
5217
5212
  const { tokenValue } = parser;
5218
- label = parseIdentifier(parser, context | 32768, 0);
5213
+ label = parseIdentifier(parser, context | 32768);
5219
5214
  if (!isValidLabel(parser, labels, tokenValue, 0))
5220
5215
  report(parser, 135, tokenValue);
5221
5216
  }
@@ -5326,7 +5321,7 @@
5326
5321
  }
5327
5322
  function parseLetIdentOrVarDeclarationStatement(parser, context, scope, origin, start, line, column) {
5328
5323
  const { token, tokenValue } = parser;
5329
- let expr = parseIdentifier(parser, context, 0);
5324
+ let expr = parseIdentifier(parser, context);
5330
5325
  if (parser.token & (143360 | 2097152)) {
5331
5326
  const declarations = parseVariableDeclarationList(parser, context, scope, 8, 0);
5332
5327
  matchOrInsertSemicolon(parser, context | 32768);
@@ -5396,7 +5391,7 @@
5396
5391
  const id = parseBindingPattern(parser, context, scope, kind, origin, tokenPos, linePos, colPos);
5397
5392
  if (parser.token === 1077936157) {
5398
5393
  nextToken(parser, context | 32768);
5399
- init = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
5394
+ init = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
5400
5395
  if (origin & 32 || (token & 2097152) === 0) {
5401
5396
  if (parser.token === 274549 ||
5402
5397
  (parser.token === 8738868 &&
@@ -5431,7 +5426,7 @@
5431
5426
  const { token, tokenPos, linePos, colPos } = parser;
5432
5427
  if (isVarDecl) {
5433
5428
  if (token === 241739) {
5434
- init = parseIdentifier(parser, context, 0);
5429
+ init = parseIdentifier(parser, context);
5435
5430
  if (parser.token & (143360 | 2097152)) {
5436
5431
  if (parser.token === 8738868) {
5437
5432
  if (context & 1024)
@@ -5499,7 +5494,7 @@
5499
5494
  report(parser, 78, forAwait ? 'await' : 'of');
5500
5495
  reinterpretToPattern(parser, init);
5501
5496
  nextToken(parser, context | 32768);
5502
- right = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
5497
+ right = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
5503
5498
  consume(parser, context | 32768, 16);
5504
5499
  const body = parseIterationStatementBody(parser, context, scope, labels);
5505
5500
  return finishNode(parser, context, start, line, column, {
@@ -5559,7 +5554,7 @@
5559
5554
  report(parser, 116);
5560
5555
  if (scope)
5561
5556
  addBlockName(parser, context, scope, parser.tokenValue, 8, 0);
5562
- return parseIdentifier(parser, context, 0);
5557
+ return parseIdentifier(parser, context);
5563
5558
  }
5564
5559
  function parseImportDeclaration(parser, context, scope) {
5565
5560
  const start = parser.tokenPos;
@@ -5632,7 +5627,9 @@
5632
5627
  });
5633
5628
  }
5634
5629
  function parseModuleSpecifier(parser, context) {
5635
- consumeOpt(parser, context, 12404);
5630
+ if (!consumeOpt(parser, context, 12404)) {
5631
+ report(parser, 28, KeywordDescTable[parser.token & 255]);
5632
+ }
5636
5633
  if (parser.token !== 134283267)
5637
5634
  report(parser, 103, 'Import');
5638
5635
  return parseLiteral(parser, context);
@@ -5641,7 +5638,7 @@
5641
5638
  nextToken(parser, context);
5642
5639
  while (parser.token & 143360) {
5643
5640
  let { token, tokenValue, tokenPos, linePos, colPos } = parser;
5644
- const imported = parseIdentifier(parser, context, 0);
5641
+ const imported = parseIdentifier(parser, context);
5645
5642
  let local;
5646
5643
  if (consumeOpt(parser, context, 77934)) {
5647
5644
  if ((parser.token & 134217728) === 134217728 || parser.token === 18) {
@@ -5651,7 +5648,7 @@
5651
5648
  validateBindingIdentifier(parser, context, 16, parser.token, 0);
5652
5649
  }
5653
5650
  tokenValue = parser.tokenValue;
5654
- local = parseIdentifier(parser, context, 0);
5651
+ local = parseIdentifier(parser, context);
5655
5652
  }
5656
5653
  else {
5657
5654
  validateBindingIdentifier(parser, context, 16, token, 0);
@@ -5711,7 +5708,7 @@
5711
5708
  break;
5712
5709
  case 209007:
5713
5710
  const { tokenPos, linePos, colPos } = parser;
5714
- declaration = parseIdentifier(parser, context, 0);
5711
+ declaration = parseIdentifier(parser, context);
5715
5712
  const { flags } = parser;
5716
5713
  if ((flags & 1) === 0) {
5717
5714
  if (parser.token === 86106) {
@@ -5726,14 +5723,14 @@
5726
5723
  else if (parser.token & 143360) {
5727
5724
  if (scope)
5728
5725
  scope = createArrowHeadParsingScope(parser, context, parser.tokenValue);
5729
- declaration = parseIdentifier(parser, context, 0);
5726
+ declaration = parseIdentifier(parser, context);
5730
5727
  declaration = parseArrowFunctionExpression(parser, context, scope, [declaration], 1, tokenPos, linePos, colPos);
5731
5728
  }
5732
5729
  }
5733
5730
  }
5734
5731
  break;
5735
5732
  default:
5736
- declaration = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
5733
+ declaration = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
5737
5734
  matchOrInsertSemicolon(parser, context | 32768);
5738
5735
  }
5739
5736
  if (scope)
@@ -5751,7 +5748,7 @@
5751
5748
  if (isNamedDeclaration) {
5752
5749
  if (scope)
5753
5750
  declareUnboundVariable(parser, parser.tokenValue);
5754
- exported = parseIdentifier(parser, context, 0);
5751
+ exported = parseIdentifier(parser, context);
5755
5752
  }
5756
5753
  consume(parser, context, 12404);
5757
5754
  if (parser.token !== 134283267)
@@ -5770,7 +5767,7 @@
5770
5767
  const tmpExportedBindings = [];
5771
5768
  while (parser.token & 143360) {
5772
5769
  const { tokenPos, tokenValue, linePos, colPos } = parser;
5773
- const local = parseIdentifier(parser, context, 0);
5770
+ const local = parseIdentifier(parser, context);
5774
5771
  let exported;
5775
5772
  if (parser.token === 77934) {
5776
5773
  nextToken(parser, context);
@@ -5781,7 +5778,7 @@
5781
5778
  tmpExportedNames.push(parser.tokenValue);
5782
5779
  tmpExportedBindings.push(tokenValue);
5783
5780
  }
5784
- exported = parseIdentifier(parser, context, 0);
5781
+ exported = parseIdentifier(parser, context);
5785
5782
  }
5786
5783
  else {
5787
5784
  if (scope) {
@@ -5855,15 +5852,15 @@
5855
5852
  source
5856
5853
  });
5857
5854
  }
5858
- function parseExpression(parser, context, canAssign, isPattern, inGroup, start, line, column) {
5859
- let expr = parsePrimaryExpression(parser, context, 2, 0, canAssign, isPattern, inGroup, 1, start, line, column);
5855
+ function parseExpression(parser, context, canAssign, inGroup, start, line, column) {
5856
+ let expr = parsePrimaryExpression(parser, context, 2, 0, canAssign, inGroup, 1, start, line, column);
5860
5857
  expr = parseMemberOrUpdateExpression(parser, context, expr, inGroup, 0, start, line, column);
5861
5858
  return parseAssignmentExpression(parser, context, inGroup, 0, start, line, column, expr);
5862
5859
  }
5863
5860
  function parseSequenceExpression(parser, context, inGroup, start, line, column, expr) {
5864
5861
  const expressions = [expr];
5865
5862
  while (consumeOpt(parser, context | 32768, 18)) {
5866
- expressions.push(parseExpression(parser, context, 1, 0, inGroup, parser.tokenPos, parser.linePos, parser.colPos));
5863
+ expressions.push(parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos));
5867
5864
  }
5868
5865
  return finishNode(parser, context, start, line, column, {
5869
5866
  type: 'SequenceExpression',
@@ -5871,7 +5868,7 @@
5871
5868
  });
5872
5869
  }
5873
5870
  function parseExpressions(parser, context, inGroup, canAssign, start, line, column) {
5874
- const expr = parseExpression(parser, context, canAssign, 0, inGroup, start, line, column);
5871
+ const expr = parseExpression(parser, context, canAssign, inGroup, start, line, column);
5875
5872
  return parser.token === 18
5876
5873
  ? parseSequenceExpression(parser, context, inGroup, start, line, column, expr)
5877
5874
  : expr;
@@ -5886,7 +5883,7 @@
5886
5883
  reinterpretToPattern(parser, left);
5887
5884
  }
5888
5885
  nextToken(parser, context | 32768);
5889
- const right = parseExpression(parser, context, 1, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
5886
+ const right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
5890
5887
  parser.assignable = 2;
5891
5888
  return finishNode(parser, context, start, line, column, isPattern
5892
5889
  ? {
@@ -5912,7 +5909,7 @@
5912
5909
  function parseAssignmentExpressionOrPattern(parser, context, inGroup, isPattern, start, line, column, left) {
5913
5910
  const { token } = parser;
5914
5911
  nextToken(parser, context | 32768);
5915
- const right = parseExpression(parser, context, 1, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
5912
+ const right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
5916
5913
  left = finishNode(parser, context, start, line, column, isPattern
5917
5914
  ? {
5918
5915
  type: 'AssignmentPattern',
@@ -5929,10 +5926,10 @@
5929
5926
  return left;
5930
5927
  }
5931
5928
  function parseConditionalExpression(parser, context, test, start, line, column) {
5932
- const consequent = parseExpression(parser, (context | 134217728) ^ 134217728, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
5929
+ const consequent = parseExpression(parser, (context | 134217728) ^ 134217728, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
5933
5930
  consume(parser, context | 32768, 21);
5934
5931
  parser.assignable = 1;
5935
- const alternate = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
5932
+ const alternate = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
5936
5933
  parser.assignable = 2;
5937
5934
  return finishNode(parser, context, start, line, column, {
5938
5935
  type: 'ConditionalExpression',
@@ -5990,9 +5987,9 @@
5990
5987
  prefix: true
5991
5988
  });
5992
5989
  }
5993
- function parseAsyncExpression(parser, context, inGroup, isLHS, canAssign, isPattern, inNew, start, line, column) {
5990
+ function parseAsyncExpression(parser, context, inGroup, isLHS, canAssign, inNew, start, line, column) {
5994
5991
  const { token } = parser;
5995
- const expr = parseIdentifier(parser, context, isPattern);
5992
+ const expr = parseIdentifier(parser, context);
5996
5993
  const { flags } = parser;
5997
5994
  if ((flags & 1) === 0) {
5998
5995
  if (parser.token === 86106) {
@@ -6032,7 +6029,7 @@
6032
6029
  if ((parser.flags & 1) === 0) {
6033
6030
  delegate = consumeOpt(parser, context | 32768, 8457014);
6034
6031
  if (parser.token & (12288 | 65536) || delegate) {
6035
- argument = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
6032
+ argument = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
6036
6033
  }
6037
6034
  }
6038
6035
  parser.assignable = 2;
@@ -6157,7 +6154,7 @@
6157
6154
  return finishNode(parser, context, start, line, column, { type: 'Super' });
6158
6155
  }
6159
6156
  function parseLeftHandSideExpression(parser, context, canAssign, inGroup, isLHS, start, line, column) {
6160
- const expression = parsePrimaryExpression(parser, context, 2, 0, canAssign, 0, inGroup, isLHS, start, line, column);
6157
+ const expression = parsePrimaryExpression(parser, context, 2, 0, canAssign, inGroup, isLHS, start, line, column);
6161
6158
  return parseMemberOrUpdateExpression(parser, context, expression, inGroup, 0, start, line, column);
6162
6159
  }
6163
6160
  function parseUpdateExpression(parser, context, expr, start, line, column) {
@@ -6181,7 +6178,7 @@
6181
6178
  context = (context | 134217728) ^ 134217728;
6182
6179
  switch (parser.token) {
6183
6180
  case 67108877: {
6184
- nextToken(parser, (context | 1073741824 | 8192) ^ 8192);
6181
+ nextToken(parser, (context | 268435456 | 8192) ^ 8192);
6185
6182
  if (context & 16384 && parser.token === 131 && parser.tokenValue === 'super') {
6186
6183
  report(parser, 27);
6187
6184
  }
@@ -6240,7 +6237,7 @@
6240
6237
  break;
6241
6238
  }
6242
6239
  case 67108991: {
6243
- nextToken(parser, (context | 1073741824 | 8192) ^ 8192);
6240
+ nextToken(parser, (context | 268435456 | 8192) ^ 8192);
6244
6241
  parser.flags |= 2048;
6245
6242
  parser.assignable = 2;
6246
6243
  expr = parseOptionalChain(parser, context, expr, start, line, column);
@@ -6306,7 +6303,7 @@
6306
6303
  else {
6307
6304
  if ((parser.token & (143360 | 4096)) === 0)
6308
6305
  report(parser, 155);
6309
- const property = parseIdentifier(parser, context, 0);
6306
+ const property = parseIdentifier(parser, context);
6310
6307
  parser.assignable = 2;
6311
6308
  node = finishNode(parser, context, start, line, column, {
6312
6309
  type: 'MemberExpression',
@@ -6327,7 +6324,7 @@
6327
6324
  }
6328
6325
  return context & 1 && parser.token === 131
6329
6326
  ? parsePrivateIdentifier(parser, context, parser.tokenPos, parser.linePos, parser.colPos)
6330
- : parseIdentifier(parser, context, 0);
6327
+ : parseIdentifier(parser, context);
6331
6328
  }
6332
6329
  function parseUpdateExpressionPrefixed(parser, context, inNew, isLHS, start, line, column) {
6333
6330
  if (inNew)
@@ -6348,7 +6345,7 @@
6348
6345
  prefix: true
6349
6346
  });
6350
6347
  }
6351
- function parsePrimaryExpression(parser, context, kind, inNew, canAssign, isPattern, inGroup, isLHS, start, line, column) {
6348
+ function parsePrimaryExpression(parser, context, kind, inNew, canAssign, inGroup, isLHS, start, line, column) {
6352
6349
  if ((parser.token & 143360) === 143360) {
6353
6350
  switch (parser.token) {
6354
6351
  case 209008:
@@ -6356,10 +6353,10 @@
6356
6353
  case 241773:
6357
6354
  return parseYieldExpression(parser, context, inGroup, canAssign, start, line, column);
6358
6355
  case 209007:
6359
- return parseAsyncExpression(parser, context, inGroup, isLHS, canAssign, isPattern, inNew, start, line, column);
6356
+ return parseAsyncExpression(parser, context, inGroup, isLHS, canAssign, inNew, start, line, column);
6360
6357
  }
6361
6358
  const { token, tokenValue } = parser;
6362
- const expr = parseIdentifier(parser, context | 65536, isPattern);
6359
+ const expr = parseIdentifier(parser, context | 65536);
6363
6360
  if (parser.token === 10) {
6364
6361
  if (!isLHS)
6365
6362
  report(parser, 0);
@@ -6438,7 +6435,7 @@
6438
6435
  }
6439
6436
  }
6440
6437
  function parseImportCallOrMetaExpression(parser, context, inNew, inGroup, start, line, column) {
6441
- let expr = parseIdentifier(parser, context, 0);
6438
+ let expr = parseIdentifier(parser, context);
6442
6439
  if (parser.token === 67108877) {
6443
6440
  return parseImportMetaExpression(parser, context, expr, start, line, column);
6444
6441
  }
@@ -6458,14 +6455,14 @@
6458
6455
  return finishNode(parser, context, start, line, column, {
6459
6456
  type: 'MetaProperty',
6460
6457
  meta,
6461
- property: parseIdentifier(parser, context, 0)
6458
+ property: parseIdentifier(parser, context)
6462
6459
  });
6463
6460
  }
6464
6461
  function parseImportExpression(parser, context, inGroup, start, line, column) {
6465
6462
  consume(parser, context | 32768, 67174411);
6466
6463
  if (parser.token === 14)
6467
6464
  report(parser, 139);
6468
- const source = parseExpression(parser, context, 1, 0, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
6465
+ const source = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
6469
6466
  consume(parser, context, 16);
6470
6467
  return finishNode(parser, context, start, line, column, {
6471
6468
  type: 'ImportExpression',
@@ -6554,7 +6551,7 @@
6554
6551
  function parseSpreadElement(parser, context, start, line, column) {
6555
6552
  context = (context | 134217728) ^ 134217728;
6556
6553
  consume(parser, context | 32768, 14);
6557
- const argument = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
6554
+ const argument = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
6558
6555
  parser.assignable = 1;
6559
6556
  return finishNode(parser, context, start, line, column, {
6560
6557
  type: 'SpreadElement',
@@ -6573,7 +6570,7 @@
6573
6570
  args.push(parseSpreadElement(parser, context, parser.tokenPos, parser.linePos, parser.colPos));
6574
6571
  }
6575
6572
  else {
6576
- args.push(parseExpression(parser, context, 1, 0, inGroup, parser.tokenPos, parser.linePos, parser.colPos));
6573
+ args.push(parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos));
6577
6574
  }
6578
6575
  if (parser.token !== 18)
6579
6576
  break;
@@ -6584,19 +6581,13 @@
6584
6581
  consume(parser, context, 16);
6585
6582
  return args;
6586
6583
  }
6587
- function parseIdentifier(parser, context, isPattern) {
6584
+ function parseIdentifier(parser, context) {
6588
6585
  const { tokenValue, tokenPos, linePos, colPos } = parser;
6589
6586
  nextToken(parser, context);
6590
- return finishNode(parser, context, tokenPos, linePos, colPos, context & 268435456
6591
- ? {
6592
- type: 'Identifier',
6593
- name: tokenValue,
6594
- pattern: isPattern === 1
6595
- }
6596
- : {
6597
- type: 'Identifier',
6598
- name: tokenValue
6599
- });
6587
+ return finishNode(parser, context, tokenPos, linePos, colPos, {
6588
+ type: 'Identifier',
6589
+ name: tokenValue
6590
+ });
6600
6591
  }
6601
6592
  function parseLiteral(parser, context) {
6602
6593
  const { tokenValue, tokenRaw, tokenPos, linePos, colPos } = parser;
@@ -6671,7 +6662,7 @@
6671
6662
  }
6672
6663
  firstRestricted = parser.token;
6673
6664
  if (parser.token & 143360) {
6674
- id = parseIdentifier(parser, context, 0);
6665
+ id = parseIdentifier(parser, context);
6675
6666
  }
6676
6667
  else {
6677
6668
  report(parser, 28, KeywordDescTable[parser.token & 255]);
@@ -6681,7 +6672,7 @@
6681
6672
  ((context | 32243712) ^ 32243712) |
6682
6673
  67108864 |
6683
6674
  ((isAsync * 2 + isGenerator) << 21) |
6684
- (isGenerator ? 0 : 1073741824);
6675
+ (isGenerator ? 0 : 268435456);
6685
6676
  if (scope)
6686
6677
  functionScope = addChildScope(functionScope, 512);
6687
6678
  const params = parseFormalParametersOrFormalList(parser, context | 8388608, functionScope, 0, 1);
@@ -6708,13 +6699,13 @@
6708
6699
  if (scope)
6709
6700
  scope = addChildScope(scope, 256);
6710
6701
  firstRestricted = parser.token;
6711
- id = parseIdentifier(parser, context, 0);
6702
+ id = parseIdentifier(parser, context);
6712
6703
  }
6713
6704
  context =
6714
6705
  ((context | 32243712) ^ 32243712) |
6715
6706
  67108864 |
6716
6707
  generatorAndAsyncFlags |
6717
- (isGenerator ? 0 : 1073741824);
6708
+ (isGenerator ? 0 : 268435456);
6718
6709
  if (scope)
6719
6710
  scope = addChildScope(scope, 512);
6720
6711
  const params = parseFormalParametersOrFormalList(parser, context | 8388608, scope, inGroup, 1);
@@ -6752,14 +6743,14 @@
6752
6743
  let left;
6753
6744
  const { token, tokenPos, linePos, colPos, tokenValue } = parser;
6754
6745
  if (token & 143360) {
6755
- left = parsePrimaryExpression(parser, context, kind, 0, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
6746
+ left = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos, linePos, colPos);
6756
6747
  if (parser.token === 1077936157) {
6757
6748
  if (parser.assignable & 2)
6758
6749
  report(parser, 24);
6759
6750
  nextToken(parser, context | 32768);
6760
6751
  if (scope)
6761
6752
  addVarOrBlock(parser, context, scope, tokenValue, kind, origin);
6762
- const right = parseExpression(parser, context, 1, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
6753
+ const right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
6763
6754
  left = finishNode(parser, context, tokenPos, linePos, colPos, isPattern
6764
6755
  ? {
6765
6756
  type: 'AssignmentPattern',
@@ -6898,7 +6889,7 @@
6898
6889
  if (!isPattern)
6899
6890
  reinterpretToPattern(parser, node);
6900
6891
  const { tokenPos, linePos, colPos } = parser;
6901
- const right = parseExpression(parser, context, 1, 1, inGroup, tokenPos, linePos, colPos);
6892
+ const right = parseExpression(parser, context, 1, inGroup, tokenPos, linePos, colPos);
6902
6893
  parser.destructible =
6903
6894
  ((destructible | 64 | 8) ^
6904
6895
  (8 | 64)) |
@@ -6924,7 +6915,7 @@
6924
6915
  let { token, tokenValue, tokenPos, linePos, colPos } = parser;
6925
6916
  if (token & (4096 | 143360)) {
6926
6917
  parser.assignable = 1;
6927
- argument = parsePrimaryExpression(parser, context, kind, 0, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
6918
+ argument = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos, linePos, colPos);
6928
6919
  token = parser.token;
6929
6920
  argument = parseMemberOrUpdateExpression(parser, context, argument, inGroup, 0, tokenPos, linePos, colPos);
6930
6921
  if (parser.token !== 18 && parser.token !== closingToken) {
@@ -7019,7 +7010,7 @@
7019
7010
  if (destructible & 16)
7020
7011
  report(parser, 24);
7021
7012
  reinterpretToPattern(parser, argument);
7022
- const right = parseExpression(parser, context, 1, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7013
+ const right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7023
7014
  argument = finishNode(parser, context, tokenPos, linePos, colPos, isPattern
7024
7015
  ? {
7025
7016
  type: 'AssignmentPattern',
@@ -7091,7 +7082,7 @@
7091
7082
  let value;
7092
7083
  const t = parser.token;
7093
7084
  if (parser.token & (143360 | 4096) || parser.token === 121) {
7094
- key = parseIdentifier(parser, context, 0);
7085
+ key = parseIdentifier(parser, context);
7095
7086
  if (parser.token === 18 || parser.token === 1074790415 || parser.token === 1077936157) {
7096
7087
  state |= 4;
7097
7088
  if (context & 1024 && (token & 537079808) === 537079808) {
@@ -7104,7 +7095,7 @@
7104
7095
  addVarOrBlock(parser, context, scope, tokenValue, kind, origin);
7105
7096
  if (consumeOpt(parser, context | 32768, 1077936157)) {
7106
7097
  destructible |= 8;
7107
- const right = parseExpression(parser, context, 1, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7098
+ const right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7108
7099
  destructible |=
7109
7100
  parser.destructible & 256
7110
7101
  ? 256
@@ -7113,7 +7104,7 @@
7113
7104
  : 0;
7114
7105
  value = finishNode(parser, context, tokenPos, linePos, colPos, {
7115
7106
  type: 'AssignmentPattern',
7116
- left: context & -2147483648 ? Object.assign({}, key) : key,
7107
+ left: context & 536870912 ? Object.assign({}, key) : key,
7117
7108
  right
7118
7109
  });
7119
7110
  }
@@ -7121,7 +7112,7 @@
7121
7112
  destructible |=
7122
7113
  (token === 209008 ? 128 : 0) |
7123
7114
  (token === 121 ? 16 : 0);
7124
- value = context & -2147483648 ? Object.assign({}, key) : key;
7115
+ value = context & 536870912 ? Object.assign({}, key) : key;
7125
7116
  }
7126
7117
  }
7127
7118
  else if (consumeOpt(parser, context | 32768, 21)) {
@@ -7132,7 +7123,7 @@
7132
7123
  const tokenAfterColon = parser.token;
7133
7124
  const valueAfterColon = parser.tokenValue;
7134
7125
  destructible |= t === 121 ? 16 : 0;
7135
- value = parsePrimaryExpression(parser, context, kind, 0, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
7126
+ value = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos, linePos, colPos);
7136
7127
  const { token } = parser;
7137
7128
  value = parseMemberOrUpdateExpression(parser, context, value, inGroup, 0, tokenPos, linePos, colPos);
7138
7129
  if (parser.token === 18 || parser.token === 1074790415) {
@@ -7253,7 +7244,7 @@
7253
7244
  report(parser, 129);
7254
7245
  state |= 16;
7255
7246
  }
7256
- key = parseIdentifier(parser, context, 0);
7247
+ key = parseIdentifier(parser, context);
7257
7248
  state |=
7258
7249
  token === 12402
7259
7250
  ? 256
@@ -7282,7 +7273,7 @@
7282
7273
  state |=
7283
7274
  8 | 1 | (token === 209007 ? 16 : 0);
7284
7275
  if (parser.token & 143360) {
7285
- key = parseIdentifier(parser, context, 0);
7276
+ key = parseIdentifier(parser, context);
7286
7277
  }
7287
7278
  else if ((parser.token & 134217728) === 134217728) {
7288
7279
  key = parseLiteral(parser, context);
@@ -7322,7 +7313,7 @@
7322
7313
  if (tokenValue === '__proto__')
7323
7314
  prototypeCount++;
7324
7315
  if (parser.token & 143360) {
7325
- value = parsePrimaryExpression(parser, context, kind, 0, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
7316
+ value = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos, linePos, colPos);
7326
7317
  const { token, tokenValue: valueAfterColon } = parser;
7327
7318
  value = parseMemberOrUpdateExpression(parser, context, value, inGroup, 0, tokenPos, linePos, colPos);
7328
7319
  if (parser.token === 18 || parser.token === 1074790415) {
@@ -7423,7 +7414,7 @@
7423
7414
  nextToken(parser, context | 32768);
7424
7415
  const { tokenPos, linePos, colPos, tokenValue, token: tokenAfterColon } = parser;
7425
7416
  if (parser.token & 143360) {
7426
- value = parsePrimaryExpression(parser, context, kind, 0, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
7417
+ value = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos, linePos, colPos);
7427
7418
  const { token } = parser;
7428
7419
  value = parseMemberOrUpdateExpression(parser, context, value, inGroup, 0, tokenPos, linePos, colPos);
7429
7420
  if ((parser.token & 4194304) === 4194304) {
@@ -7529,7 +7520,7 @@
7529
7520
  state |= 8;
7530
7521
  if (parser.token & 143360) {
7531
7522
  const { token, line, index } = parser;
7532
- key = parseIdentifier(parser, context, 0);
7523
+ key = parseIdentifier(parser, context);
7533
7524
  state |= 1;
7534
7525
  if (parser.token === 67174411) {
7535
7526
  destructible |= 16;
@@ -7643,7 +7634,7 @@
7643
7634
  if (parser.token === 1077936157) {
7644
7635
  nextToken(parser, context | 32768);
7645
7636
  isSimpleParameterList = 1;
7646
- const right = parseExpression(parser, context, 1, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
7637
+ const right = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
7647
7638
  left = finishNode(parser, context, tokenPos, linePos, colPos, {
7648
7639
  type: 'AssignmentPattern',
7649
7640
  left: left,
@@ -7670,14 +7661,14 @@
7670
7661
  }
7671
7662
  function parseComputedPropertyName(parser, context, inGroup) {
7672
7663
  nextToken(parser, context | 32768);
7673
- const key = parseExpression(parser, (context | 134217728) ^ 134217728, 1, 0, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7664
+ const key = parseExpression(parser, (context | 134217728) ^ 134217728, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7674
7665
  consume(parser, context, 20);
7675
7666
  return key;
7676
7667
  }
7677
7668
  function parseParenthesizedExpression(parser, context, canAssign, kind, origin, start, line, column) {
7678
7669
  parser.flags = (parser.flags | 128) ^ 128;
7679
7670
  const { tokenPos: piStart, linePos: plStart, colPos: pcStart } = parser;
7680
- nextToken(parser, context | 32768 | 1073741824);
7671
+ nextToken(parser, context | 32768 | 268435456);
7681
7672
  const scope = context & 64 ? addChildScope(createScope(), 1024) : void 0;
7682
7673
  context = (context | 134217728) ^ 134217728;
7683
7674
  if (consumeOpt(parser, context, 16)) {
@@ -7696,7 +7687,7 @@
7696
7687
  if (token & (143360 | 4096)) {
7697
7688
  if (scope)
7698
7689
  addBlockName(parser, context, scope, parser.tokenValue, 1, 0);
7699
- expr = parsePrimaryExpression(parser, context, kind, 0, 1, 0, 1, 1, tokenPos, linePos, colPos);
7690
+ expr = parsePrimaryExpression(parser, context, kind, 0, 1, 1, 1, tokenPos, linePos, colPos);
7700
7691
  if (parser.token === 16 || parser.token === 18) {
7701
7692
  if (parser.assignable & 2) {
7702
7693
  destructible |= 16;
@@ -7723,8 +7714,8 @@
7723
7714
  else if ((token & 2097152) === 2097152) {
7724
7715
  expr =
7725
7716
  token === 2162700
7726
- ? parseObjectLiteralOrPattern(parser, context | 1073741824, scope, 0, 1, 0, kind, origin, tokenPos, linePos, colPos)
7727
- : parseArrayExpressionOrPattern(parser, context | 1073741824, scope, 0, 1, 0, kind, origin, tokenPos, linePos, colPos);
7717
+ ? parseObjectLiteralOrPattern(parser, context | 268435456, scope, 0, 1, 0, kind, origin, tokenPos, linePos, colPos)
7718
+ : parseArrayExpressionOrPattern(parser, context | 268435456, scope, 0, 1, 0, kind, origin, tokenPos, linePos, colPos);
7728
7719
  destructible |= parser.destructible;
7729
7720
  isSimpleParameterList = 1;
7730
7721
  parser.assignable = 2;
@@ -7751,7 +7742,7 @@
7751
7742
  }
7752
7743
  else {
7753
7744
  destructible |= 16;
7754
- expr = parseExpression(parser, context, 1, 0, 1, tokenPos, linePos, colPos);
7745
+ expr = parseExpression(parser, context, 1, 1, tokenPos, linePos, colPos);
7755
7746
  if (isSequence && (parser.token === 16 || parser.token === 18)) {
7756
7747
  expressions.push(expr);
7757
7748
  }
@@ -7763,7 +7754,7 @@
7763
7754
  }
7764
7755
  if (isSequence) {
7765
7756
  while (consumeOpt(parser, context | 32768, 18)) {
7766
- expressions.push(parseExpression(parser, context, 1, 0, 1, parser.tokenPos, parser.linePos, parser.colPos));
7757
+ expressions.push(parseExpression(parser, context, 1, 1, parser.tokenPos, parser.linePos, parser.colPos));
7767
7758
  }
7768
7759
  parser.assignable = 2;
7769
7760
  expr = finishNode(parser, context, iStart, lStart, cStart, {
@@ -7830,7 +7821,7 @@
7830
7821
  }
7831
7822
  function parseIdentifierOrArrow(parser, context, start, line, column) {
7832
7823
  const { tokenValue } = parser;
7833
- const expr = parseIdentifier(parser, context, 0);
7824
+ const expr = parseIdentifier(parser, context);
7834
7825
  parser.assignable = 1;
7835
7826
  if (parser.token === 10) {
7836
7827
  let scope = void 0;
@@ -7868,7 +7859,7 @@
7868
7859
  reportScopeError(scope.scopeError);
7869
7860
  }
7870
7861
  if (expression) {
7871
- body = parseExpression(parser, context & 16384 ? context | 33554432 : context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
7862
+ body = parseExpression(parser, context & 16384 ? context | 33554432 : context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
7872
7863
  }
7873
7864
  else {
7874
7865
  if (scope)
@@ -7949,7 +7940,7 @@
7949
7940
  if (parser.token === 1077936157) {
7950
7941
  nextToken(parser, context | 32768);
7951
7942
  isSimpleParameterList = 1;
7952
- const right = parseExpression(parser, context, 1, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7943
+ const right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
7953
7944
  left = finishNode(parser, context, tokenPos, linePos, colPos, {
7954
7945
  type: 'AssignmentPattern',
7955
7946
  left,
@@ -7975,7 +7966,7 @@
7975
7966
  const { token } = parser;
7976
7967
  if (token & 67108864) {
7977
7968
  if (token === 67108877) {
7978
- nextToken(parser, context | 1073741824);
7969
+ nextToken(parser, context | 268435456);
7979
7970
  parser.assignable = 1;
7980
7971
  const property = parsePropertyOrPrivatePropertyName(parser, context);
7981
7972
  return parseMembeExpressionNoCall(parser, context, finishNode(parser, context, start, line, column, {
@@ -8012,7 +8003,7 @@
8012
8003
  return expr;
8013
8004
  }
8014
8005
  function parseNewExpression(parser, context, inGroup, start, line, column) {
8015
- const id = parseIdentifier(parser, context | 32768, 0);
8006
+ const id = parseIdentifier(parser, context | 32768);
8016
8007
  const { tokenPos, linePos, colPos } = parser;
8017
8008
  if (consumeOpt(parser, context, 67108877)) {
8018
8009
  if (context & 67108864 && parser.token === 143494) {
@@ -8025,7 +8016,7 @@
8025
8016
  if ((parser.token & 16842752) === 16842752) {
8026
8017
  report(parser, 63, KeywordDescTable[parser.token & 255]);
8027
8018
  }
8028
- const expr = parsePrimaryExpression(parser, context, 2, 1, 0, 0, inGroup, 1, tokenPos, linePos, colPos);
8019
+ const expr = parsePrimaryExpression(parser, context, 2, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
8029
8020
  context = (context | 134217728) ^ 134217728;
8030
8021
  if (parser.token === 67108991)
8031
8022
  report(parser, 163);
@@ -8038,7 +8029,7 @@
8038
8029
  });
8039
8030
  }
8040
8031
  function parseMetaProperty(parser, context, meta, start, line, column) {
8041
- const property = parseIdentifier(parser, context, 0);
8032
+ const property = parseIdentifier(parser, context);
8042
8033
  return finishNode(parser, context, start, line, column, {
8043
8034
  type: 'MetaProperty',
8044
8035
  meta,
@@ -8054,7 +8045,7 @@
8054
8045
  if ((parser.token & 537079808) === 537079808) {
8055
8046
  parser.flags |= 512;
8056
8047
  }
8057
- return parseArrowFromIdentifier(parser, context, parser.tokenValue, parseIdentifier(parser, context, 0), 0, canAssign, 1, start, line, column);
8048
+ return parseArrowFromIdentifier(parser, context, parser.tokenValue, parseIdentifier(parser, context), 0, canAssign, 1, start, line, column);
8058
8049
  }
8059
8050
  function parseAsyncArrowOrCallExpression(parser, context, callee, canAssign, kind, origin, flags, start, line, column) {
8060
8051
  nextToken(parser, context | 32768);
@@ -8084,7 +8075,7 @@
8084
8075
  if (token & (143360 | 4096)) {
8085
8076
  if (scope)
8086
8077
  addBlockName(parser, context, scope, parser.tokenValue, kind, 0);
8087
- expr = parsePrimaryExpression(parser, context, kind, 0, 1, 0, 1, 1, tokenPos, linePos, colPos);
8078
+ expr = parsePrimaryExpression(parser, context, kind, 0, 1, 1, 1, tokenPos, linePos, colPos);
8088
8079
  if (parser.token === 16 || parser.token === 18) {
8089
8080
  if (parser.assignable & 2) {
8090
8081
  destructible |= 16;
@@ -8136,11 +8127,11 @@
8136
8127
  isSimpleParameterList = 1;
8137
8128
  }
8138
8129
  else {
8139
- expr = parseExpression(parser, context, 1, 0, 0, tokenPos, linePos, colPos);
8130
+ expr = parseExpression(parser, context, 1, 0, tokenPos, linePos, colPos);
8140
8131
  destructible = parser.assignable;
8141
8132
  params.push(expr);
8142
8133
  while (consumeOpt(parser, context | 32768, 18)) {
8143
- params.push(parseExpression(parser, context, 1, 0, 0, tokenPos, linePos, colPos));
8134
+ params.push(parseExpression(parser, context, 1, 0, tokenPos, linePos, colPos));
8144
8135
  }
8145
8136
  destructible |= parser.assignable;
8146
8137
  consume(parser, context, 16);
@@ -8235,7 +8226,7 @@
8235
8226
  }
8236
8227
  }
8237
8228
  }
8238
- id = parseIdentifier(parser, context, 0);
8229
+ id = parseIdentifier(parser, context);
8239
8230
  }
8240
8231
  else {
8241
8232
  if ((flags & 1) === 0)
@@ -8282,7 +8273,7 @@
8282
8273
  if ((parser.token & 537079808) === 537079808) {
8283
8274
  report(parser, 116);
8284
8275
  }
8285
- id = parseIdentifier(parser, context, 0);
8276
+ id = parseIdentifier(parser, context);
8286
8277
  }
8287
8278
  let inheritedContext = context;
8288
8279
  if (consumeOpt(parser, context | 32768, 20567)) {
@@ -8320,7 +8311,7 @@
8320
8311
  }
8321
8312
  function parseDecoratorList(parser, context, start, line, column) {
8322
8313
  nextToken(parser, context | 32768);
8323
- let expression = parsePrimaryExpression(parser, context, 2, 0, 1, 0, 0, 1, start, line, column);
8314
+ let expression = parsePrimaryExpression(parser, context, 2, 0, 1, 0, 1, start, line, column);
8324
8315
  expression = parseMemberOrUpdateExpression(parser, context, expression, 0, 0, start, line, column);
8325
8316
  return finishNode(parser, context, start, line, column, {
8326
8317
  type: 'Decorator',
@@ -8363,7 +8354,7 @@
8363
8354
  let key = null;
8364
8355
  const { token, tokenPos, linePos, colPos } = parser;
8365
8356
  if (token & (143360 | 36864)) {
8366
- key = parseIdentifier(parser, context, 0);
8357
+ key = parseIdentifier(parser, context);
8367
8358
  switch (token) {
8368
8359
  case 36972:
8369
8360
  if (!isStatic &&
@@ -8421,7 +8412,7 @@
8421
8412
  return parseStaticBlock(parser, context, scope, tokenPos, linePos, colPos);
8422
8413
  }
8423
8414
  else if (token === 122) {
8424
- key = parseIdentifier(parser, context, 0);
8415
+ key = parseIdentifier(parser, context);
8425
8416
  if (parser.token !== 67174411)
8426
8417
  report(parser, 28, KeywordDescTable[parser.token & 255]);
8427
8418
  }
@@ -8430,7 +8421,7 @@
8430
8421
  }
8431
8422
  if (kind & (8 | 16 | 768)) {
8432
8423
  if (parser.token & 143360) {
8433
- key = parseIdentifier(parser, context, 0);
8424
+ key = parseIdentifier(parser, context);
8434
8425
  }
8435
8426
  else if ((parser.token & 134217728) === 134217728) {
8436
8427
  key = parseLiteral(parser, context);
@@ -8440,7 +8431,7 @@
8440
8431
  key = parseComputedPropertyName(parser, context, 0);
8441
8432
  }
8442
8433
  else if (parser.token === 122) {
8443
- key = parseIdentifier(parser, context, 0);
8434
+ key = parseIdentifier(parser, context);
8444
8435
  }
8445
8436
  else if (context & 1 && parser.token === 131) {
8446
8437
  kind |= 4096;
@@ -8535,7 +8526,7 @@
8535
8526
  ((context | modifierFlags) ^ modifierFlags) |
8536
8527
  ((state & 88) << 18) |
8537
8528
  100925440;
8538
- value = parsePrimaryExpression(parser, context | 16384, 2, 0, 1, 0, 0, 1, tokenPos, linePos, colPos);
8529
+ value = parsePrimaryExpression(parser, context | 16384, 2, 0, 1, 0, 1, tokenPos, linePos, colPos);
8539
8530
  if ((parser.token & 1073741824) !== 1073741824 ||
8540
8531
  (parser.token & 4194304) === 4194304) {
8541
8532
  value = parseMemberOrUpdateExpression(parser, context | 16384, value, 0, 0, tokenPos, linePos, colPos);
@@ -8743,7 +8734,7 @@
8743
8734
  function parseJSXSpreadAttribute(parser, context, start, line, column) {
8744
8735
  nextToken(parser, context);
8745
8736
  consume(parser, context, 14);
8746
- const expression = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
8737
+ const expression = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
8747
8738
  consume(parser, context, 1074790415);
8748
8739
  return finishNode(parser, context, start, line, column, {
8749
8740
  type: 'JSXSpreadAttribute',
@@ -8803,7 +8794,7 @@
8803
8794
  expression = parseJSXEmptyExpression(parser, context, parser.startPos, parser.startLine, parser.startColumn);
8804
8795
  }
8805
8796
  else {
8806
- expression = parseExpression(parser, context, 1, 0, 0, tokenPos, linePos, colPos);
8797
+ expression = parseExpression(parser, context, 1, 0, tokenPos, linePos, colPos);
8807
8798
  }
8808
8799
  if (inJSXChild) {
8809
8800
  consume(parser, context, 1074790415);
@@ -8818,7 +8809,7 @@
8818
8809
  }
8819
8810
  function parseJSXSpreadChild(parser, context, start, line, column) {
8820
8811
  consume(parser, context, 14);
8821
- const expression = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
8812
+ const expression = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
8822
8813
  consume(parser, context, 1074790415);
8823
8814
  return finishNode(parser, context, start, line, column, {
8824
8815
  type: 'JSXSpreadChild',
@@ -8846,7 +8837,7 @@
8846
8837
  __proto__: null
8847
8838
  });
8848
8839
 
8849
- var version$1 = "4.4.3";
8840
+ var version$1 = "4.4.4";
8850
8841
 
8851
8842
  const version = version$1;
8852
8843
  function parseScript(source, options) {