meriyah 4.2.1 → 4.3.0

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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,20 @@
1
+ # [4.3.0](https://github.com/meriyah/meriyah/compare/v4.2.1...v4.3.0) (2022-08-02)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **parser:** Support for class static initialization block without next flag ([a3b10f0](https://github.com/meriyah/meriyah/commit/a3b10f01651cb1f02e703fde0ef2fac1a3222d65))
7
+ * **parser:** support top level for-await in module context ([69761bf](https://github.com/meriyah/meriyah/commit/69761bf60d30524e7d95251d4219ed8166d97577)), closes [#214](https://github.com/meriyah/meriyah/issues/214)
8
+ * use null as regex value in environment missing flag "d" support ([b174ae6](https://github.com/meriyah/meriyah/commit/b174ae69cc45ce1d925c86f6c8eab8cce58057b8))
9
+
10
+
11
+ ### Features
12
+
13
+ * **lexer:** support new RegExp Indices flag "d" ([#217](https://github.com/meriyah/meriyah/issues/217)) ([b98e3bd](https://github.com/meriyah/meriyah/commit/b98e3bd79f7c13bef436976c37b04e128b40cec5)), closes [#214](https://github.com/meriyah/meriyah/issues/214)
14
+ * **parser:** Add support for class static initialization block ([1510e36](https://github.com/meriyah/meriyah/commit/1510e36b28e58317be93e59b7caed35985320c68))
15
+
16
+
17
+
1
18
  ## [4.2.1](https://github.com/meriyah/meriyah/compare/v4.2.0...v4.2.1) (2022-03-31)
2
19
 
3
20
 
@@ -865,7 +865,7 @@ define(['exports'], (function (exports) { 'use strict';
865
865
  break;
866
866
  case 117:
867
867
  if (mask & 16)
868
- report(parser, 34, 'g');
868
+ report(parser, 34, 'u');
869
869
  mask |= 16;
870
870
  break;
871
871
  case 121:
@@ -878,6 +878,11 @@ define(['exports'], (function (exports) { 'use strict';
878
878
  report(parser, 34, 's');
879
879
  mask |= 32;
880
880
  break;
881
+ case 100:
882
+ if (mask & 64)
883
+ report(parser, 34, 'd');
884
+ mask |= 64;
885
+ break;
881
886
  default:
882
887
  report(parser, 33);
883
888
  }
@@ -896,7 +901,13 @@ define(['exports'], (function (exports) { 'use strict';
896
901
  return new RegExp(pattern, flags);
897
902
  }
898
903
  catch (e) {
899
- report(parser, 32);
904
+ try {
905
+ new RegExp(pattern, flags.replace('d', ''));
906
+ return null;
907
+ }
908
+ catch (e) {
909
+ report(parser, 32);
910
+ }
900
911
  }
901
912
  }
902
913
 
@@ -1207,8 +1218,8 @@ define(['exports'], (function (exports) { 'use strict';
1207
1218
  digits++;
1208
1219
  char = advanceChar(parser);
1209
1220
  }
1210
- if (digits < 1 || !allowSeparator) {
1211
- report(parser, digits < 1 ? 19 : 147);
1221
+ if (digits === 0 || !allowSeparator) {
1222
+ report(parser, digits === 0 ? 19 : 147);
1212
1223
  }
1213
1224
  }
1214
1225
  else if ((char | 32) === 111) {
@@ -1228,8 +1239,8 @@ define(['exports'], (function (exports) { 'use strict';
1228
1239
  digits++;
1229
1240
  char = advanceChar(parser);
1230
1241
  }
1231
- if (digits < 1 || !allowSeparator) {
1232
- report(parser, digits < 1 ? 0 : 147);
1242
+ if (digits === 0 || !allowSeparator) {
1243
+ report(parser, digits === 0 ? 0 : 147);
1233
1244
  }
1234
1245
  }
1235
1246
  else if ((char | 32) === 98) {
@@ -1249,8 +1260,8 @@ define(['exports'], (function (exports) { 'use strict';
1249
1260
  digits++;
1250
1261
  char = advanceChar(parser);
1251
1262
  }
1252
- if (digits < 1 || !allowSeparator) {
1253
- report(parser, digits < 1 ? 0 : 147);
1263
+ if (digits === 0 || !allowSeparator) {
1264
+ report(parser, digits === 0 ? 0 : 147);
1254
1265
  }
1255
1266
  }
1256
1267
  else if (CharTypes[char] & 32) {
@@ -1326,7 +1337,7 @@ define(['exports'], (function (exports) { 'use strict';
1326
1337
  if (CharTypes[char] & 256)
1327
1338
  char = advanceChar(parser);
1328
1339
  const { index } = parser;
1329
- if ((CharTypes[char] & 16) < 1)
1340
+ if ((CharTypes[char] & 16) === 0)
1330
1341
  report(parser, 10);
1331
1342
  value += parser.source.substring(end, index) + scanDecimalDigitsOrSeparator(parser, char);
1332
1343
  char = parser.currentChar;
@@ -1807,7 +1818,7 @@ define(['exports'], (function (exports) { 'use strict';
1807
1818
  return 8456258;
1808
1819
  }
1809
1820
  if (ch === 47) {
1810
- if ((context & 16) < 1)
1821
+ if ((context & 16) === 0)
1811
1822
  return 8456258;
1812
1823
  const index = parser.index + 1;
1813
1824
  if (index < parser.end) {
@@ -4913,7 +4924,7 @@ define(['exports'], (function (exports) { 'use strict';
4913
4924
  case 86106:
4914
4925
  report(parser, context & 1024
4915
4926
  ? 73
4916
- : (context & 256) < 1
4927
+ : (context & 256) === 0
4917
4928
  ? 75
4918
4929
  : 74);
4919
4930
  case 86096:
@@ -4959,7 +4970,7 @@ define(['exports'], (function (exports) { 'use strict';
4959
4970
  });
4960
4971
  }
4961
4972
  function parseReturnStatement(parser, context, start, line, column) {
4962
- if ((context & 32) < 1 && context & 8192)
4973
+ if ((context & 32) === 0 && context & 8192)
4963
4974
  report(parser, 89);
4964
4975
  nextToken(parser, context | 32768);
4965
4976
  const argument = parser.flags & 1 || parser.token & 1048576
@@ -4983,7 +4994,7 @@ define(['exports'], (function (exports) { 'use strict';
4983
4994
  validateAndDeclareLabel(parser, labels, value);
4984
4995
  nextToken(parser, context | 32768);
4985
4996
  const body = allowFuncDecl &&
4986
- (context & 1024) < 1 &&
4997
+ (context & 1024) === 0 &&
4987
4998
  context & 256 &&
4988
4999
  parser.token === 86106
4989
5000
  ? parseFunctionDeclaration(parser, context, addChildScope(scope, 2), origin, 0, 0, 0, parser.tokenPos, parser.linePos, parser.colPos)
@@ -5092,7 +5103,7 @@ define(['exports'], (function (exports) { 'use strict';
5092
5103
  }
5093
5104
  function parseConsequentOrAlternative(parser, context, scope, labels, start, line, column) {
5094
5105
  return context & 1024 ||
5095
- (context & 256) < 1 ||
5106
+ (context & 256) === 0 ||
5096
5107
  parser.token !== 86106
5097
5108
  ? parseStatement(parser, context, scope, 0, { $: labels }, 0, parser.tokenPos, parser.linePos, parser.colPos)
5098
5109
  : parseFunctionDeclaration(parser, context, addChildScope(scope, 2), 0, 0, 0, 0, start, line, column);
@@ -5157,11 +5168,11 @@ define(['exports'], (function (exports) { 'use strict';
5157
5168
  return parseStatement(parser, ((context | 134217728) ^ 134217728) | 131072, scope, 0, { loop: 1, $: labels }, 0, parser.tokenPos, parser.linePos, parser.colPos);
5158
5169
  }
5159
5170
  function parseContinueStatement(parser, context, labels, start, line, column) {
5160
- if ((context & 131072) < 1)
5171
+ if ((context & 131072) === 0)
5161
5172
  report(parser, 65);
5162
5173
  nextToken(parser, context);
5163
5174
  let label = null;
5164
- if ((parser.flags & 1) < 1 && parser.token & 143360) {
5175
+ if ((parser.flags & 1) === 0 && parser.token & 143360) {
5165
5176
  const { tokenValue } = parser;
5166
5177
  label = parseIdentifier(parser, context | 32768, 0);
5167
5178
  if (!isValidLabel(parser, labels, tokenValue, 1))
@@ -5176,13 +5187,13 @@ define(['exports'], (function (exports) { 'use strict';
5176
5187
  function parseBreakStatement(parser, context, labels, start, line, column) {
5177
5188
  nextToken(parser, context | 32768);
5178
5189
  let label = null;
5179
- if ((parser.flags & 1) < 1 && parser.token & 143360) {
5190
+ if ((parser.flags & 1) === 0 && parser.token & 143360) {
5180
5191
  const { tokenValue } = parser;
5181
5192
  label = parseIdentifier(parser, context | 32768, 0);
5182
5193
  if (!isValidLabel(parser, labels, tokenValue, 0))
5183
5194
  report(parser, 134, tokenValue);
5184
5195
  }
5185
- else if ((context & (4096 | 131072)) < 1) {
5196
+ else if ((context & (4096 | 131072)) === 0) {
5186
5197
  report(parser, 66);
5187
5198
  }
5188
5199
  matchOrInsertSemicolon(parser, context | 32768);
@@ -5262,6 +5273,17 @@ define(['exports'], (function (exports) { 'use strict';
5262
5273
  body
5263
5274
  });
5264
5275
  }
5276
+ function parseStaticBlock(parser, context, scope, start, line, column) {
5277
+ if (scope)
5278
+ scope = addChildScope(scope, 2);
5279
+ const ctorContext = 16384 | 524288;
5280
+ context = ((context | ctorContext) ^ ctorContext) | 262144;
5281
+ const { body } = parseBlock(parser, context, scope, {}, start, line, column);
5282
+ return finishNode(parser, context, start, line, column, {
5283
+ type: 'StaticBlock',
5284
+ body
5285
+ });
5286
+ }
5265
5287
  function parseDoWhileStatement(parser, context, scope, labels, start, line, column) {
5266
5288
  nextToken(parser, context | 32768);
5267
5289
  const body = parseIterationStatementBody(parser, context, scope, labels);
@@ -5349,10 +5371,10 @@ define(['exports'], (function (exports) { 'use strict';
5349
5371
  if (parser.token === 1077936157) {
5350
5372
  nextToken(parser, context | 32768);
5351
5373
  init = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
5352
- if (origin & 32 || (token & 2097152) < 1) {
5374
+ if (origin & 32 || (token & 2097152) === 0) {
5353
5375
  if (parser.token === 274549 ||
5354
5376
  (parser.token === 8738868 &&
5355
- (token & 2097152 || (kind & 4) < 1 || context & 1024))) {
5377
+ (token & 2097152 || (kind & 4) === 0 || context & 1024))) {
5356
5378
  reportMessageAt(tokenPos, parser.line, parser.index - 3, 57, parser.token === 274549 ? 'of' : 'in');
5357
5379
  }
5358
5380
  }
@@ -5369,7 +5391,8 @@ define(['exports'], (function (exports) { 'use strict';
5369
5391
  }
5370
5392
  function parseForStatement(parser, context, scope, labels, start, line, column) {
5371
5393
  nextToken(parser, context);
5372
- const forAwait = (context & 4194304) > 0 && consumeOpt(parser, context, 209008);
5394
+ const forAwait = ((context & 4194304) > 0 || ((context & 2048) > 0 && (context & 8192) > 0)) &&
5395
+ consumeOpt(parser, context, 209008);
5373
5396
  consume(parser, context | 32768, 67174411);
5374
5397
  if (scope)
5375
5398
  scope = addChildScope(scope, 1);
@@ -5658,7 +5681,7 @@ define(['exports'], (function (exports) { 'use strict';
5658
5681
  const { tokenPos, linePos, colPos } = parser;
5659
5682
  declaration = parseIdentifier(parser, context, 0);
5660
5683
  const { flags } = parser;
5661
- if ((flags & 1) < 1) {
5684
+ if ((flags & 1) === 0) {
5662
5685
  if (parser.token === 86106) {
5663
5686
  declaration = parseFunctionDeclaration(parser, context, scope, 4, 1, 1, 1, tokenPos, linePos, colPos);
5664
5687
  }
@@ -5782,7 +5805,7 @@ define(['exports'], (function (exports) { 'use strict';
5782
5805
  case 209007:
5783
5806
  const { tokenPos, linePos, colPos } = parser;
5784
5807
  nextToken(parser, context);
5785
- if ((parser.flags & 1) < 1 && parser.token === 86106) {
5808
+ if ((parser.flags & 1) === 0 && parser.token === 86106) {
5786
5809
  declaration = parseFunctionDeclaration(parser, context, scope, 4, 1, 2, 1, tokenPos, linePos, colPos);
5787
5810
  if (scope) {
5788
5811
  key = declaration.id ? declaration.id.name : '';
@@ -5939,7 +5962,7 @@ define(['exports'], (function (exports) { 'use strict';
5939
5962
  const { token } = parser;
5940
5963
  const expr = parseIdentifier(parser, context, isPattern);
5941
5964
  const { flags } = parser;
5942
- if ((flags & 1) < 1) {
5965
+ if ((flags & 1) === 0) {
5943
5966
  if (parser.token === 86106) {
5944
5967
  return parseFunctionExpression(parser, context, 1, inGroup, start, line, column);
5945
5968
  }
@@ -5973,7 +5996,7 @@ define(['exports'], (function (exports) { 'use strict';
5973
5996
  report(parser, 120);
5974
5997
  let argument = null;
5975
5998
  let delegate = false;
5976
- if ((parser.flags & 1) < 1) {
5999
+ if ((parser.flags & 1) === 0) {
5977
6000
  delegate = consumeOpt(parser, context | 32768, 8457014);
5978
6001
  if (parser.token & (12288 | 65536) || delegate) {
5979
6002
  argument = parseExpression(parser, context, 1, 0, 0, parser.tokenPos, parser.linePos, parser.colPos);
@@ -6050,8 +6073,8 @@ define(['exports'], (function (exports) { 'use strict';
6050
6073
  if (context & 64 &&
6051
6074
  scope &&
6052
6075
  scopeError !== void 0 &&
6053
- (prevContext & 1024) < 1 &&
6054
- (context & 8192) < 1) {
6076
+ (prevContext & 1024) === 0 &&
6077
+ (context & 8192) === 0) {
6055
6078
  reportScopeError(scopeError);
6056
6079
  }
6057
6080
  }
@@ -6077,7 +6100,7 @@ define(['exports'], (function (exports) { 'use strict';
6077
6100
  case 67108991:
6078
6101
  report(parser, 161);
6079
6102
  case 67174411: {
6080
- if ((context & 524288) < 1)
6103
+ if ((context & 524288) === 0)
6081
6104
  report(parser, 26);
6082
6105
  if (context & 16384)
6083
6106
  report(parser, 27);
@@ -6086,7 +6109,7 @@ define(['exports'], (function (exports) { 'use strict';
6086
6109
  }
6087
6110
  case 69271571:
6088
6111
  case 67108877: {
6089
- if ((context & 262144) < 1)
6112
+ if ((context & 262144) === 0)
6090
6113
  report(parser, 27);
6091
6114
  if (context & 16384)
6092
6115
  report(parser, 27);
@@ -6116,7 +6139,7 @@ define(['exports'], (function (exports) { 'use strict';
6116
6139
  });
6117
6140
  }
6118
6141
  function parseMemberOrUpdateExpression(parser, context, expr, inGroup, inChain, start, line, column) {
6119
- if ((parser.token & 33619968) === 33619968 && (parser.flags & 1) < 1) {
6142
+ if ((parser.token & 33619968) === 33619968 && (parser.flags & 1) === 0) {
6120
6143
  expr = parseUpdateExpression(parser, context, expr, start, line, column);
6121
6144
  }
6122
6145
  else if ((parser.token & 67108864) === 67108864) {
@@ -6243,7 +6266,7 @@ define(['exports'], (function (exports) { 'use strict';
6243
6266
  });
6244
6267
  }
6245
6268
  else {
6246
- if ((parser.token & (143360 | 4096)) < 1)
6269
+ if ((parser.token & (143360 | 4096)) === 0)
6247
6270
  report(parser, 154);
6248
6271
  const property = parseIdentifier(parser, context, 0);
6249
6272
  parser.assignable = 2;
@@ -6261,7 +6284,7 @@ define(['exports'], (function (exports) { 'use strict';
6261
6284
  return node;
6262
6285
  }
6263
6286
  function parsePropertyOrPrivatePropertyName(parser, context) {
6264
- if ((parser.token & (143360 | 4096)) < 1 && parser.token !== 131) {
6287
+ if ((parser.token & (143360 | 4096)) === 0 && parser.token !== 131) {
6265
6288
  report(parser, 154);
6266
6289
  }
6267
6290
  return context & 1 && parser.token === 131
@@ -6586,11 +6609,11 @@ define(['exports'], (function (exports) { 'use strict';
6586
6609
  let firstRestricted;
6587
6610
  let functionScope = scope ? createScope() : void 0;
6588
6611
  if (parser.token === 67174411) {
6589
- if ((flags & 1) < 1)
6612
+ if ((flags & 1) === 0)
6590
6613
  report(parser, 37, 'Function');
6591
6614
  }
6592
6615
  else {
6593
- const kind = origin & 4 && ((context & 8192) < 1 || (context & 2048) < 1)
6616
+ const kind = origin & 4 && ((context & 8192) === 0 || (context & 2048) === 0)
6594
6617
  ? 4
6595
6618
  : 64;
6596
6619
  validateFunctionName(parser, context | ((context & 3072) << 11), parser.token);
@@ -6736,7 +6759,7 @@ define(['exports'], (function (exports) { 'use strict';
6736
6759
  destructible |=
6737
6760
  kind & 1
6738
6761
  ? 32
6739
- : (kind & 2) < 1
6762
+ : (kind & 2) === 0
6740
6763
  ? 16
6741
6764
  : 0;
6742
6765
  left = parseMemberOrUpdateExpression(parser, context, left, inGroup, 0, tokenPos, linePos, colPos);
@@ -6795,7 +6818,7 @@ define(['exports'], (function (exports) { 'use strict';
6795
6818
  left = parseLeftHandSideExpression(parser, context, 1, 0, 1, tokenPos, linePos, colPos);
6796
6819
  if (parser.token !== 18 && parser.token !== 20) {
6797
6820
  left = parseAssignmentExpression(parser, context, inGroup, isPattern, tokenPos, linePos, colPos, left);
6798
- if ((kind & (2 | 1)) < 1 && token === 67174411)
6821
+ if ((kind & (2 | 1)) === 0 && token === 67174411)
6799
6822
  destructible |= 16;
6800
6823
  }
6801
6824
  else if (parser.assignable & 2) {
@@ -6984,7 +7007,7 @@ define(['exports'], (function (exports) { 'use strict';
6984
7007
  });
6985
7008
  }
6986
7009
  function parseMethodDefinition(parser, context, kind, inGroup, start, line, column) {
6987
- const modifierFlags = (kind & 64) < 1 ? 31981568 : 14680064;
7010
+ const modifierFlags = (kind & 64) === 0 ? 31981568 : 14680064;
6988
7011
  context =
6989
7012
  ((context | modifierFlags) ^ modifierFlags) |
6990
7013
  ((kind & 88) << 18) |
@@ -7552,7 +7575,7 @@ define(['exports'], (function (exports) { 'use strict';
7552
7575
  let left = null;
7553
7576
  const { tokenPos, linePos, colPos } = parser;
7554
7577
  if (parser.token & 143360) {
7555
- if ((context & 1024) < 1) {
7578
+ if ((context & 1024) === 0) {
7556
7579
  if ((parser.token & 36864) === 36864) {
7557
7580
  parser.flags |= 256;
7558
7581
  }
@@ -7813,7 +7836,7 @@ define(['exports'], (function (exports) { 'use strict';
7813
7836
  (134221824 | 8192 | 16384), scope, 16, void 0, void 0);
7814
7837
  switch (parser.token) {
7815
7838
  case 69271571:
7816
- if ((parser.flags & 1) < 1) {
7839
+ if ((parser.flags & 1) === 0) {
7817
7840
  report(parser, 112);
7818
7841
  }
7819
7842
  break;
@@ -7822,13 +7845,13 @@ define(['exports'], (function (exports) { 'use strict';
7822
7845
  case 22:
7823
7846
  report(parser, 113);
7824
7847
  case 67174411:
7825
- if ((parser.flags & 1) < 1) {
7848
+ if ((parser.flags & 1) === 0) {
7826
7849
  report(parser, 112);
7827
7850
  }
7828
7851
  parser.flags |= 1024;
7829
7852
  break;
7830
7853
  }
7831
- if ((parser.token & 8454144) === 8454144 && (parser.flags & 1) < 1)
7854
+ if ((parser.token & 8454144) === 8454144 && (parser.flags & 1) === 0)
7832
7855
  report(parser, 28, KeywordDescTable[parser.token & 255]);
7833
7856
  if ((parser.token & 33619968) === 33619968)
7834
7857
  report(parser, 121);
@@ -7854,7 +7877,7 @@ define(['exports'], (function (exports) { 'use strict';
7854
7877
  let left;
7855
7878
  const { tokenPos, linePos, colPos } = parser;
7856
7879
  if (parser.token & 143360) {
7857
- if ((context & 1024) < 1) {
7880
+ if ((context & 1024) === 0) {
7858
7881
  if ((parser.token & 36864) === 36864) {
7859
7882
  parser.flags |= 256;
7860
7883
  }
@@ -8174,7 +8197,7 @@ define(['exports'], (function (exports) { 'use strict';
8174
8197
  id = parseIdentifier(parser, context, 0);
8175
8198
  }
8176
8199
  else {
8177
- if ((flags & 1) < 1)
8200
+ if ((flags & 1) === 0)
8178
8201
  report(parser, 37, 'Class');
8179
8202
  }
8180
8203
  let inheritedContext = context;
@@ -8305,7 +8328,7 @@ define(['exports'], (function (exports) { 'use strict';
8305
8328
  }
8306
8329
  break;
8307
8330
  case 209007:
8308
- if (parser.token !== 67174411 && (parser.flags & 1) < 1) {
8331
+ if (parser.token !== 67174411 && (parser.flags & 1) === 0) {
8309
8332
  if (context & 1 && (parser.token & 1073741824) === 1073741824) {
8310
8333
  return parsePropertyDefinition(parser, context, key, kind, decorators, tokenPos, linePos, colPos);
8311
8334
  }
@@ -8348,6 +8371,9 @@ define(['exports'], (function (exports) { 'use strict';
8348
8371
  else if (context & 1 && (parser.token & 1073741824) === 1073741824) {
8349
8372
  kind |= 128;
8350
8373
  }
8374
+ else if (isStatic && token === 2162700) {
8375
+ return parseStaticBlock(parser, context, scope, tokenPos, linePos, colPos);
8376
+ }
8351
8377
  else if (token === 122) {
8352
8378
  key = parseIdentifier(parser, context, 0);
8353
8379
  if (parser.token !== 67174411)
@@ -8377,16 +8403,16 @@ define(['exports'], (function (exports) { 'use strict';
8377
8403
  else
8378
8404
  report(parser, 131);
8379
8405
  }
8380
- if ((kind & 2) < 1) {
8406
+ if ((kind & 2) === 0) {
8381
8407
  if (parser.tokenValue === 'constructor') {
8382
8408
  if ((parser.token & 1073741824) === 1073741824) {
8383
8409
  report(parser, 125);
8384
8410
  }
8385
- else if ((kind & 32) < 1 && parser.token === 67174411) {
8411
+ else if ((kind & 32) === 0 && parser.token === 67174411) {
8386
8412
  if (kind & (768 | 16 | 128 | 8)) {
8387
8413
  report(parser, 50, 'accessor');
8388
8414
  }
8389
- else if ((context & 524288) < 1) {
8415
+ else if ((context & 524288) === 0) {
8390
8416
  if (parser.flags & 32)
8391
8417
  report(parser, 51);
8392
8418
  else
@@ -8395,7 +8421,7 @@ define(['exports'], (function (exports) { 'use strict';
8395
8421
  }
8396
8422
  kind |= 64;
8397
8423
  }
8398
- else if ((kind & 4096) < 1 &&
8424
+ else if ((kind & 4096) === 0 &&
8399
8425
  kind & (32 | 768 | 8 | 16) &&
8400
8426
  parser.tokenValue === 'prototype') {
8401
8427
  report(parser, 49);
@@ -8408,7 +8434,7 @@ define(['exports'], (function (exports) { 'use strict';
8408
8434
  return finishNode(parser, context, start, line, column, context & 1
8409
8435
  ? {
8410
8436
  type: 'MethodDefinition',
8411
- kind: (kind & 32) < 1 && kind & 64
8437
+ kind: (kind & 32) === 0 && kind & 64
8412
8438
  ? 'constructor'
8413
8439
  : kind & 256
8414
8440
  ? 'get'
@@ -8423,7 +8449,7 @@ define(['exports'], (function (exports) { 'use strict';
8423
8449
  }
8424
8450
  : {
8425
8451
  type: 'MethodDefinition',
8426
- kind: (kind & 32) < 1 && kind & 64
8452
+ kind: (kind & 32) === 0 && kind & 64
8427
8453
  ? 'constructor'
8428
8454
  : kind & 256
8429
8455
  ? 'get'
@@ -8766,7 +8792,7 @@ define(['exports'], (function (exports) { 'use strict';
8766
8792
  __proto__: null
8767
8793
  });
8768
8794
 
8769
- var version$1 = "4.2.1";
8795
+ var version$1 = "4.3.0";
8770
8796
 
8771
8797
  const version = version$1;
8772
8798
  function parseScript(source, options) {