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.
- package/CHANGELOG.md +9 -0
- package/README.md +1 -7
- package/dist/meriyah.amd.js +107 -116
- package/dist/meriyah.amd.min.js +1 -1
- package/dist/meriyah.cjs +107 -116
- package/dist/meriyah.cjs.js +107 -116
- package/dist/meriyah.cjs.min.js +1 -1
- package/dist/meriyah.esm.js +107 -116
- package/dist/meriyah.esm.min.js +1 -1
- package/dist/meriyah.esm.min.mjs +1 -1
- package/dist/meriyah.esm.mjs +107 -116
- package/dist/meriyah.iife.js +107 -116
- package/dist/meriyah.iife.min.js +1 -1
- package/dist/meriyah.min.cjs +1 -1
- package/dist/meriyah.system.js +107 -116
- package/dist/meriyah.system.min.js +1 -1
- package/dist/meriyah.umd.cjs +107 -116
- package/dist/meriyah.umd.es5.js +107 -116
- package/dist/meriyah.umd.es5.min.js +1 -1
- package/dist/meriyah.umd.js +107 -116
- package/dist/meriyah.umd.min.cjs +1 -1
- package/dist/meriyah.umd.min.js +1 -1
- package/dist/src/common.d.ts +3 -5
- package/dist/src/common.d.ts.map +1 -1
- package/dist/src/parser.d.ts +4 -6
- package/dist/src/parser.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/common.ts +4 -7
- package/src/parser.ts +86 -142
package/dist/meriyah.umd.es5.js
CHANGED
|
@@ -1588,7 +1588,7 @@
|
|
|
1588
1588
|
return 122;
|
|
1589
1589
|
}
|
|
1590
1590
|
if ((token & 20480) === 20480) {
|
|
1591
|
-
if (context &
|
|
1591
|
+
if (context & 268435456 && (context & 8192) === 0) {
|
|
1592
1592
|
return token;
|
|
1593
1593
|
}
|
|
1594
1594
|
else {
|
|
@@ -1597,12 +1597,12 @@
|
|
|
1597
1597
|
}
|
|
1598
1598
|
return 143483;
|
|
1599
1599
|
}
|
|
1600
|
-
if (context &
|
|
1600
|
+
if (context & 268435456 &&
|
|
1601
1601
|
(context & 8192) === 0 &&
|
|
1602
1602
|
(token & 20480) === 20480)
|
|
1603
1603
|
return token;
|
|
1604
1604
|
if (token === 241773) {
|
|
1605
|
-
return context &
|
|
1605
|
+
return context & 268435456
|
|
1606
1606
|
? 143483
|
|
1607
1607
|
: context & 2097152
|
|
1608
1608
|
? 121
|
|
@@ -4421,11 +4421,10 @@
|
|
|
4421
4421
|
return parser.token;
|
|
4422
4422
|
}
|
|
4423
4423
|
|
|
4424
|
-
function matchOrInsertSemicolon(parser, context
|
|
4424
|
+
function matchOrInsertSemicolon(parser, context) {
|
|
4425
4425
|
var _a;
|
|
4426
4426
|
if ((parser.flags & 1) === 0 &&
|
|
4427
|
-
(parser.token & 1048576) !== 1048576
|
|
4428
|
-
!specDeviation) {
|
|
4427
|
+
(parser.token & 1048576) !== 1048576) {
|
|
4429
4428
|
report(parser, 28, KeywordDescTable[parser.token & 255]);
|
|
4430
4429
|
}
|
|
4431
4430
|
if (!consumeOpt(parser, context, 1074790417)) {
|
|
@@ -4821,7 +4820,7 @@
|
|
|
4821
4820
|
if (options.ranges)
|
|
4822
4821
|
context |= 2;
|
|
4823
4822
|
if (options.uniqueKeyInPattern)
|
|
4824
|
-
context |=
|
|
4823
|
+
context |= 536870912;
|
|
4825
4824
|
if (options.lexical)
|
|
4826
4825
|
context |= 64;
|
|
4827
4826
|
if (options.webcompat)
|
|
@@ -4838,10 +4837,6 @@
|
|
|
4838
4837
|
context |= 1024;
|
|
4839
4838
|
if (options.jsx)
|
|
4840
4839
|
context |= 16;
|
|
4841
|
-
if (options.identifierPattern)
|
|
4842
|
-
context |= 268435456;
|
|
4843
|
-
if (options.specDeviation)
|
|
4844
|
-
context |= 536870912;
|
|
4845
4840
|
if (options.source)
|
|
4846
4841
|
sourceFile = options.source;
|
|
4847
4842
|
if (options.onComment != null) {
|
|
@@ -4893,7 +4888,7 @@
|
|
|
4893
4888
|
return node;
|
|
4894
4889
|
}
|
|
4895
4890
|
function parseStatementList(parser, context, scope) {
|
|
4896
|
-
nextToken(parser, context | 32768 |
|
|
4891
|
+
nextToken(parser, context | 32768 | 268435456);
|
|
4897
4892
|
var statements = [];
|
|
4898
4893
|
while (parser.token === 134283267) {
|
|
4899
4894
|
var index = parser.index, tokenPos = parser.tokenPos, tokenValue = parser.tokenValue, linePos = parser.linePos, colPos = parser.colPos, token = parser.token;
|
|
@@ -5026,14 +5021,14 @@
|
|
|
5026
5021
|
var expr;
|
|
5027
5022
|
switch (token) {
|
|
5028
5023
|
case 241739:
|
|
5029
|
-
expr = parseIdentifier(parser, context
|
|
5024
|
+
expr = parseIdentifier(parser, context);
|
|
5030
5025
|
if (context & 1024)
|
|
5031
5026
|
report(parser, 83);
|
|
5032
5027
|
if (parser.token === 69271571)
|
|
5033
5028
|
report(parser, 82);
|
|
5034
5029
|
break;
|
|
5035
5030
|
default:
|
|
5036
|
-
expr = parsePrimaryExpression(parser, context, 2, 0, 1, 0,
|
|
5031
|
+
expr = parsePrimaryExpression(parser, context, 2, 0, 1, 0, 1, parser.tokenPos, parser.linePos, parser.colPos);
|
|
5037
5032
|
}
|
|
5038
5033
|
if (token & 143360 && parser.token === 21) {
|
|
5039
5034
|
return parseLabelledStatement(parser, context, scope, origin, labels, tokenValue, expr, token, allowFuncDecl, start, line, column);
|
|
@@ -5095,7 +5090,7 @@
|
|
|
5095
5090
|
}
|
|
5096
5091
|
function parseAsyncArrowOrAsyncFunctionDeclaration(parser, context, scope, origin, labels, allowFuncDecl, start, line, column) {
|
|
5097
5092
|
var token = parser.token, tokenValue = parser.tokenValue;
|
|
5098
|
-
var expr = parseIdentifier(parser, context
|
|
5093
|
+
var expr = parseIdentifier(parser, context);
|
|
5099
5094
|
if (parser.token === 21) {
|
|
5100
5095
|
return parseLabelledStatement(parser, context, scope, origin, labels, tokenValue, expr, token, 1, start, line, column);
|
|
5101
5096
|
}
|
|
@@ -5263,7 +5258,7 @@
|
|
|
5263
5258
|
var label = null;
|
|
5264
5259
|
if ((parser.flags & 1) === 0 && parser.token & 143360) {
|
|
5265
5260
|
var tokenValue = parser.tokenValue;
|
|
5266
|
-
label = parseIdentifier(parser, context | 32768
|
|
5261
|
+
label = parseIdentifier(parser, context | 32768);
|
|
5267
5262
|
if (!isValidLabel(parser, labels, tokenValue, 1))
|
|
5268
5263
|
report(parser, 135, tokenValue);
|
|
5269
5264
|
}
|
|
@@ -5278,7 +5273,7 @@
|
|
|
5278
5273
|
var label = null;
|
|
5279
5274
|
if ((parser.flags & 1) === 0 && parser.token & 143360) {
|
|
5280
5275
|
var tokenValue = parser.tokenValue;
|
|
5281
|
-
label = parseIdentifier(parser, context | 32768
|
|
5276
|
+
label = parseIdentifier(parser, context | 32768);
|
|
5282
5277
|
if (!isValidLabel(parser, labels, tokenValue, 0))
|
|
5283
5278
|
report(parser, 135, tokenValue);
|
|
5284
5279
|
}
|
|
@@ -5389,7 +5384,7 @@
|
|
|
5389
5384
|
}
|
|
5390
5385
|
function parseLetIdentOrVarDeclarationStatement(parser, context, scope, origin, start, line, column) {
|
|
5391
5386
|
var token = parser.token, tokenValue = parser.tokenValue;
|
|
5392
|
-
var expr = parseIdentifier(parser, context
|
|
5387
|
+
var expr = parseIdentifier(parser, context);
|
|
5393
5388
|
if (parser.token & (143360 | 2097152)) {
|
|
5394
5389
|
var declarations = parseVariableDeclarationList(parser, context, scope, 8, 0);
|
|
5395
5390
|
matchOrInsertSemicolon(parser, context | 32768);
|
|
@@ -5459,7 +5454,7 @@
|
|
|
5459
5454
|
var id = parseBindingPattern(parser, context, scope, kind, origin, tokenPos, linePos, colPos);
|
|
5460
5455
|
if (parser.token === 1077936157) {
|
|
5461
5456
|
nextToken(parser, context | 32768);
|
|
5462
|
-
init = parseExpression(parser, context, 1, 0,
|
|
5457
|
+
init = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
5463
5458
|
if (origin & 32 || (token & 2097152) === 0) {
|
|
5464
5459
|
if (parser.token === 274549 ||
|
|
5465
5460
|
(parser.token === 8738868 &&
|
|
@@ -5494,7 +5489,7 @@
|
|
|
5494
5489
|
var token = parser.token, tokenPos = parser.tokenPos, linePos = parser.linePos, colPos = parser.colPos;
|
|
5495
5490
|
if (isVarDecl) {
|
|
5496
5491
|
if (token === 241739) {
|
|
5497
|
-
init = parseIdentifier(parser, context
|
|
5492
|
+
init = parseIdentifier(parser, context);
|
|
5498
5493
|
if (parser.token & (143360 | 2097152)) {
|
|
5499
5494
|
if (parser.token === 8738868) {
|
|
5500
5495
|
if (context & 1024)
|
|
@@ -5562,7 +5557,7 @@
|
|
|
5562
5557
|
report(parser, 78, forAwait ? 'await' : 'of');
|
|
5563
5558
|
reinterpretToPattern(parser, init);
|
|
5564
5559
|
nextToken(parser, context | 32768);
|
|
5565
|
-
right = parseExpression(parser, context, 1, 0,
|
|
5560
|
+
right = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
5566
5561
|
consume(parser, context | 32768, 16);
|
|
5567
5562
|
var body_1 = parseIterationStatementBody(parser, context, scope, labels);
|
|
5568
5563
|
return finishNode(parser, context, start, line, column, {
|
|
@@ -5622,7 +5617,7 @@
|
|
|
5622
5617
|
report(parser, 116);
|
|
5623
5618
|
if (scope)
|
|
5624
5619
|
addBlockName(parser, context, scope, parser.tokenValue, 8, 0);
|
|
5625
|
-
return parseIdentifier(parser, context
|
|
5620
|
+
return parseIdentifier(parser, context);
|
|
5626
5621
|
}
|
|
5627
5622
|
function parseImportDeclaration(parser, context, scope) {
|
|
5628
5623
|
var start = parser.tokenPos;
|
|
@@ -5695,7 +5690,9 @@
|
|
|
5695
5690
|
});
|
|
5696
5691
|
}
|
|
5697
5692
|
function parseModuleSpecifier(parser, context) {
|
|
5698
|
-
consumeOpt(parser, context, 12404)
|
|
5693
|
+
if (!consumeOpt(parser, context, 12404)) {
|
|
5694
|
+
report(parser, 28, KeywordDescTable[parser.token & 255]);
|
|
5695
|
+
}
|
|
5699
5696
|
if (parser.token !== 134283267)
|
|
5700
5697
|
report(parser, 103, 'Import');
|
|
5701
5698
|
return parseLiteral(parser, context);
|
|
@@ -5704,7 +5701,7 @@
|
|
|
5704
5701
|
nextToken(parser, context);
|
|
5705
5702
|
while (parser.token & 143360) {
|
|
5706
5703
|
var token = parser.token, tokenValue = parser.tokenValue, tokenPos = parser.tokenPos, linePos = parser.linePos, colPos = parser.colPos;
|
|
5707
|
-
var imported = parseIdentifier(parser, context
|
|
5704
|
+
var imported = parseIdentifier(parser, context);
|
|
5708
5705
|
var local = void 0;
|
|
5709
5706
|
if (consumeOpt(parser, context, 77934)) {
|
|
5710
5707
|
if ((parser.token & 134217728) === 134217728 || parser.token === 18) {
|
|
@@ -5714,7 +5711,7 @@
|
|
|
5714
5711
|
validateBindingIdentifier(parser, context, 16, parser.token, 0);
|
|
5715
5712
|
}
|
|
5716
5713
|
tokenValue = parser.tokenValue;
|
|
5717
|
-
local = parseIdentifier(parser, context
|
|
5714
|
+
local = parseIdentifier(parser, context);
|
|
5718
5715
|
}
|
|
5719
5716
|
else {
|
|
5720
5717
|
validateBindingIdentifier(parser, context, 16, token, 0);
|
|
@@ -5774,7 +5771,7 @@
|
|
|
5774
5771
|
break;
|
|
5775
5772
|
case 209007:
|
|
5776
5773
|
var tokenPos = parser.tokenPos, linePos = parser.linePos, colPos = parser.colPos;
|
|
5777
|
-
declaration = parseIdentifier(parser, context
|
|
5774
|
+
declaration = parseIdentifier(parser, context);
|
|
5778
5775
|
var flags = parser.flags;
|
|
5779
5776
|
if ((flags & 1) === 0) {
|
|
5780
5777
|
if (parser.token === 86106) {
|
|
@@ -5789,14 +5786,14 @@
|
|
|
5789
5786
|
else if (parser.token & 143360) {
|
|
5790
5787
|
if (scope)
|
|
5791
5788
|
scope = createArrowHeadParsingScope(parser, context, parser.tokenValue);
|
|
5792
|
-
declaration = parseIdentifier(parser, context
|
|
5789
|
+
declaration = parseIdentifier(parser, context);
|
|
5793
5790
|
declaration = parseArrowFunctionExpression(parser, context, scope, [declaration], 1, tokenPos, linePos, colPos);
|
|
5794
5791
|
}
|
|
5795
5792
|
}
|
|
5796
5793
|
}
|
|
5797
5794
|
break;
|
|
5798
5795
|
default:
|
|
5799
|
-
declaration = parseExpression(parser, context, 1, 0,
|
|
5796
|
+
declaration = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
5800
5797
|
matchOrInsertSemicolon(parser, context | 32768);
|
|
5801
5798
|
}
|
|
5802
5799
|
if (scope)
|
|
@@ -5814,7 +5811,7 @@
|
|
|
5814
5811
|
if (isNamedDeclaration) {
|
|
5815
5812
|
if (scope)
|
|
5816
5813
|
declareUnboundVariable(parser, parser.tokenValue);
|
|
5817
|
-
exported = parseIdentifier(parser, context
|
|
5814
|
+
exported = parseIdentifier(parser, context);
|
|
5818
5815
|
}
|
|
5819
5816
|
consume(parser, context, 12404);
|
|
5820
5817
|
if (parser.token !== 134283267)
|
|
@@ -5833,7 +5830,7 @@
|
|
|
5833
5830
|
var tmpExportedBindings = [];
|
|
5834
5831
|
while (parser.token & 143360) {
|
|
5835
5832
|
var tokenPos_1 = parser.tokenPos, tokenValue = parser.tokenValue, linePos_1 = parser.linePos, colPos_1 = parser.colPos;
|
|
5836
|
-
var local = parseIdentifier(parser, context
|
|
5833
|
+
var local = parseIdentifier(parser, context);
|
|
5837
5834
|
var exported = void 0;
|
|
5838
5835
|
if (parser.token === 77934) {
|
|
5839
5836
|
nextToken(parser, context);
|
|
@@ -5844,7 +5841,7 @@
|
|
|
5844
5841
|
tmpExportedNames.push(parser.tokenValue);
|
|
5845
5842
|
tmpExportedBindings.push(tokenValue);
|
|
5846
5843
|
}
|
|
5847
|
-
exported = parseIdentifier(parser, context
|
|
5844
|
+
exported = parseIdentifier(parser, context);
|
|
5848
5845
|
}
|
|
5849
5846
|
else {
|
|
5850
5847
|
if (scope) {
|
|
@@ -5918,15 +5915,15 @@
|
|
|
5918
5915
|
source: source
|
|
5919
5916
|
});
|
|
5920
5917
|
}
|
|
5921
|
-
function parseExpression(parser, context, canAssign,
|
|
5922
|
-
var expr = parsePrimaryExpression(parser, context, 2, 0, canAssign,
|
|
5918
|
+
function parseExpression(parser, context, canAssign, inGroup, start, line, column) {
|
|
5919
|
+
var expr = parsePrimaryExpression(parser, context, 2, 0, canAssign, inGroup, 1, start, line, column);
|
|
5923
5920
|
expr = parseMemberOrUpdateExpression(parser, context, expr, inGroup, 0, start, line, column);
|
|
5924
5921
|
return parseAssignmentExpression(parser, context, inGroup, 0, start, line, column, expr);
|
|
5925
5922
|
}
|
|
5926
5923
|
function parseSequenceExpression(parser, context, inGroup, start, line, column, expr) {
|
|
5927
5924
|
var expressions = [expr];
|
|
5928
5925
|
while (consumeOpt(parser, context | 32768, 18)) {
|
|
5929
|
-
expressions.push(parseExpression(parser, context, 1,
|
|
5926
|
+
expressions.push(parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos));
|
|
5930
5927
|
}
|
|
5931
5928
|
return finishNode(parser, context, start, line, column, {
|
|
5932
5929
|
type: 'SequenceExpression',
|
|
@@ -5934,7 +5931,7 @@
|
|
|
5934
5931
|
});
|
|
5935
5932
|
}
|
|
5936
5933
|
function parseExpressions(parser, context, inGroup, canAssign, start, line, column) {
|
|
5937
|
-
var expr = parseExpression(parser, context, canAssign,
|
|
5934
|
+
var expr = parseExpression(parser, context, canAssign, inGroup, start, line, column);
|
|
5938
5935
|
return parser.token === 18
|
|
5939
5936
|
? parseSequenceExpression(parser, context, inGroup, start, line, column, expr)
|
|
5940
5937
|
: expr;
|
|
@@ -5949,7 +5946,7 @@
|
|
|
5949
5946
|
reinterpretToPattern(parser, left);
|
|
5950
5947
|
}
|
|
5951
5948
|
nextToken(parser, context | 32768);
|
|
5952
|
-
var right = parseExpression(parser, context, 1,
|
|
5949
|
+
var right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
|
|
5953
5950
|
parser.assignable = 2;
|
|
5954
5951
|
return finishNode(parser, context, start, line, column, isPattern
|
|
5955
5952
|
? {
|
|
@@ -5975,7 +5972,7 @@
|
|
|
5975
5972
|
function parseAssignmentExpressionOrPattern(parser, context, inGroup, isPattern, start, line, column, left) {
|
|
5976
5973
|
var token = parser.token;
|
|
5977
5974
|
nextToken(parser, context | 32768);
|
|
5978
|
-
var right = parseExpression(parser, context, 1,
|
|
5975
|
+
var right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
|
|
5979
5976
|
left = finishNode(parser, context, start, line, column, isPattern
|
|
5980
5977
|
? {
|
|
5981
5978
|
type: 'AssignmentPattern',
|
|
@@ -5992,10 +5989,10 @@
|
|
|
5992
5989
|
return left;
|
|
5993
5990
|
}
|
|
5994
5991
|
function parseConditionalExpression(parser, context, test, start, line, column) {
|
|
5995
|
-
var consequent = parseExpression(parser, (context | 134217728) ^ 134217728, 1, 0,
|
|
5992
|
+
var consequent = parseExpression(parser, (context | 134217728) ^ 134217728, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
5996
5993
|
consume(parser, context | 32768, 21);
|
|
5997
5994
|
parser.assignable = 1;
|
|
5998
|
-
var alternate = parseExpression(parser, context, 1, 0,
|
|
5995
|
+
var alternate = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
5999
5996
|
parser.assignable = 2;
|
|
6000
5997
|
return finishNode(parser, context, start, line, column, {
|
|
6001
5998
|
type: 'ConditionalExpression',
|
|
@@ -6053,9 +6050,9 @@
|
|
|
6053
6050
|
prefix: true
|
|
6054
6051
|
});
|
|
6055
6052
|
}
|
|
6056
|
-
function parseAsyncExpression(parser, context, inGroup, isLHS, canAssign,
|
|
6053
|
+
function parseAsyncExpression(parser, context, inGroup, isLHS, canAssign, inNew, start, line, column) {
|
|
6057
6054
|
var token = parser.token;
|
|
6058
|
-
var expr = parseIdentifier(parser, context
|
|
6055
|
+
var expr = parseIdentifier(parser, context);
|
|
6059
6056
|
var flags = parser.flags;
|
|
6060
6057
|
if ((flags & 1) === 0) {
|
|
6061
6058
|
if (parser.token === 86106) {
|
|
@@ -6095,7 +6092,7 @@
|
|
|
6095
6092
|
if ((parser.flags & 1) === 0) {
|
|
6096
6093
|
delegate = consumeOpt(parser, context | 32768, 8457014);
|
|
6097
6094
|
if (parser.token & (12288 | 65536) || delegate) {
|
|
6098
|
-
argument = parseExpression(parser, context, 1, 0,
|
|
6095
|
+
argument = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
6099
6096
|
}
|
|
6100
6097
|
}
|
|
6101
6098
|
parser.assignable = 2;
|
|
@@ -6220,7 +6217,7 @@
|
|
|
6220
6217
|
return finishNode(parser, context, start, line, column, { type: 'Super' });
|
|
6221
6218
|
}
|
|
6222
6219
|
function parseLeftHandSideExpression(parser, context, canAssign, inGroup, isLHS, start, line, column) {
|
|
6223
|
-
var expression = parsePrimaryExpression(parser, context, 2, 0, canAssign,
|
|
6220
|
+
var expression = parsePrimaryExpression(parser, context, 2, 0, canAssign, inGroup, isLHS, start, line, column);
|
|
6224
6221
|
return parseMemberOrUpdateExpression(parser, context, expression, inGroup, 0, start, line, column);
|
|
6225
6222
|
}
|
|
6226
6223
|
function parseUpdateExpression(parser, context, expr, start, line, column) {
|
|
@@ -6244,7 +6241,7 @@
|
|
|
6244
6241
|
context = (context | 134217728) ^ 134217728;
|
|
6245
6242
|
switch (parser.token) {
|
|
6246
6243
|
case 67108877: {
|
|
6247
|
-
nextToken(parser, (context |
|
|
6244
|
+
nextToken(parser, (context | 268435456 | 8192) ^ 8192);
|
|
6248
6245
|
if (context & 16384 && parser.token === 131 && parser.tokenValue === 'super') {
|
|
6249
6246
|
report(parser, 27);
|
|
6250
6247
|
}
|
|
@@ -6303,7 +6300,7 @@
|
|
|
6303
6300
|
break;
|
|
6304
6301
|
}
|
|
6305
6302
|
case 67108991: {
|
|
6306
|
-
nextToken(parser, (context |
|
|
6303
|
+
nextToken(parser, (context | 268435456 | 8192) ^ 8192);
|
|
6307
6304
|
parser.flags |= 2048;
|
|
6308
6305
|
parser.assignable = 2;
|
|
6309
6306
|
expr = parseOptionalChain(parser, context, expr, start, line, column);
|
|
@@ -6369,7 +6366,7 @@
|
|
|
6369
6366
|
else {
|
|
6370
6367
|
if ((parser.token & (143360 | 4096)) === 0)
|
|
6371
6368
|
report(parser, 155);
|
|
6372
|
-
var property = parseIdentifier(parser, context
|
|
6369
|
+
var property = parseIdentifier(parser, context);
|
|
6373
6370
|
parser.assignable = 2;
|
|
6374
6371
|
node = finishNode(parser, context, start, line, column, {
|
|
6375
6372
|
type: 'MemberExpression',
|
|
@@ -6390,7 +6387,7 @@
|
|
|
6390
6387
|
}
|
|
6391
6388
|
return context & 1 && parser.token === 131
|
|
6392
6389
|
? parsePrivateIdentifier(parser, context, parser.tokenPos, parser.linePos, parser.colPos)
|
|
6393
|
-
: parseIdentifier(parser, context
|
|
6390
|
+
: parseIdentifier(parser, context);
|
|
6394
6391
|
}
|
|
6395
6392
|
function parseUpdateExpressionPrefixed(parser, context, inNew, isLHS, start, line, column) {
|
|
6396
6393
|
if (inNew)
|
|
@@ -6411,7 +6408,7 @@
|
|
|
6411
6408
|
prefix: true
|
|
6412
6409
|
});
|
|
6413
6410
|
}
|
|
6414
|
-
function parsePrimaryExpression(parser, context, kind, inNew, canAssign,
|
|
6411
|
+
function parsePrimaryExpression(parser, context, kind, inNew, canAssign, inGroup, isLHS, start, line, column) {
|
|
6415
6412
|
if ((parser.token & 143360) === 143360) {
|
|
6416
6413
|
switch (parser.token) {
|
|
6417
6414
|
case 209008:
|
|
@@ -6419,10 +6416,10 @@
|
|
|
6419
6416
|
case 241773:
|
|
6420
6417
|
return parseYieldExpression(parser, context, inGroup, canAssign, start, line, column);
|
|
6421
6418
|
case 209007:
|
|
6422
|
-
return parseAsyncExpression(parser, context, inGroup, isLHS, canAssign,
|
|
6419
|
+
return parseAsyncExpression(parser, context, inGroup, isLHS, canAssign, inNew, start, line, column);
|
|
6423
6420
|
}
|
|
6424
6421
|
var token = parser.token, tokenValue = parser.tokenValue;
|
|
6425
|
-
var expr = parseIdentifier(parser, context | 65536
|
|
6422
|
+
var expr = parseIdentifier(parser, context | 65536);
|
|
6426
6423
|
if (parser.token === 10) {
|
|
6427
6424
|
if (!isLHS)
|
|
6428
6425
|
report(parser, 0);
|
|
@@ -6501,7 +6498,7 @@
|
|
|
6501
6498
|
}
|
|
6502
6499
|
}
|
|
6503
6500
|
function parseImportCallOrMetaExpression(parser, context, inNew, inGroup, start, line, column) {
|
|
6504
|
-
var expr = parseIdentifier(parser, context
|
|
6501
|
+
var expr = parseIdentifier(parser, context);
|
|
6505
6502
|
if (parser.token === 67108877) {
|
|
6506
6503
|
return parseImportMetaExpression(parser, context, expr, start, line, column);
|
|
6507
6504
|
}
|
|
@@ -6521,14 +6518,14 @@
|
|
|
6521
6518
|
return finishNode(parser, context, start, line, column, {
|
|
6522
6519
|
type: 'MetaProperty',
|
|
6523
6520
|
meta: meta,
|
|
6524
|
-
property: parseIdentifier(parser, context
|
|
6521
|
+
property: parseIdentifier(parser, context)
|
|
6525
6522
|
});
|
|
6526
6523
|
}
|
|
6527
6524
|
function parseImportExpression(parser, context, inGroup, start, line, column) {
|
|
6528
6525
|
consume(parser, context | 32768, 67174411);
|
|
6529
6526
|
if (parser.token === 14)
|
|
6530
6527
|
report(parser, 139);
|
|
6531
|
-
var source = parseExpression(parser, context, 1,
|
|
6528
|
+
var source = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
|
|
6532
6529
|
consume(parser, context, 16);
|
|
6533
6530
|
return finishNode(parser, context, start, line, column, {
|
|
6534
6531
|
type: 'ImportExpression',
|
|
@@ -6617,7 +6614,7 @@
|
|
|
6617
6614
|
function parseSpreadElement(parser, context, start, line, column) {
|
|
6618
6615
|
context = (context | 134217728) ^ 134217728;
|
|
6619
6616
|
consume(parser, context | 32768, 14);
|
|
6620
|
-
var argument = parseExpression(parser, context, 1, 0,
|
|
6617
|
+
var argument = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
6621
6618
|
parser.assignable = 1;
|
|
6622
6619
|
return finishNode(parser, context, start, line, column, {
|
|
6623
6620
|
type: 'SpreadElement',
|
|
@@ -6636,7 +6633,7 @@
|
|
|
6636
6633
|
args.push(parseSpreadElement(parser, context, parser.tokenPos, parser.linePos, parser.colPos));
|
|
6637
6634
|
}
|
|
6638
6635
|
else {
|
|
6639
|
-
args.push(parseExpression(parser, context, 1,
|
|
6636
|
+
args.push(parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos));
|
|
6640
6637
|
}
|
|
6641
6638
|
if (parser.token !== 18)
|
|
6642
6639
|
break;
|
|
@@ -6647,19 +6644,13 @@
|
|
|
6647
6644
|
consume(parser, context, 16);
|
|
6648
6645
|
return args;
|
|
6649
6646
|
}
|
|
6650
|
-
function parseIdentifier(parser, context
|
|
6647
|
+
function parseIdentifier(parser, context) {
|
|
6651
6648
|
var tokenValue = parser.tokenValue, tokenPos = parser.tokenPos, linePos = parser.linePos, colPos = parser.colPos;
|
|
6652
6649
|
nextToken(parser, context);
|
|
6653
|
-
return finishNode(parser, context, tokenPos, linePos, colPos,
|
|
6654
|
-
|
|
6655
|
-
|
|
6656
|
-
|
|
6657
|
-
pattern: isPattern === 1
|
|
6658
|
-
}
|
|
6659
|
-
: {
|
|
6660
|
-
type: 'Identifier',
|
|
6661
|
-
name: tokenValue
|
|
6662
|
-
});
|
|
6650
|
+
return finishNode(parser, context, tokenPos, linePos, colPos, {
|
|
6651
|
+
type: 'Identifier',
|
|
6652
|
+
name: tokenValue
|
|
6653
|
+
});
|
|
6663
6654
|
}
|
|
6664
6655
|
function parseLiteral(parser, context) {
|
|
6665
6656
|
var tokenValue = parser.tokenValue, tokenRaw = parser.tokenRaw, tokenPos = parser.tokenPos, linePos = parser.linePos, colPos = parser.colPos;
|
|
@@ -6734,7 +6725,7 @@
|
|
|
6734
6725
|
}
|
|
6735
6726
|
firstRestricted = parser.token;
|
|
6736
6727
|
if (parser.token & 143360) {
|
|
6737
|
-
id = parseIdentifier(parser, context
|
|
6728
|
+
id = parseIdentifier(parser, context);
|
|
6738
6729
|
}
|
|
6739
6730
|
else {
|
|
6740
6731
|
report(parser, 28, KeywordDescTable[parser.token & 255]);
|
|
@@ -6744,7 +6735,7 @@
|
|
|
6744
6735
|
((context | 32243712) ^ 32243712) |
|
|
6745
6736
|
67108864 |
|
|
6746
6737
|
((isAsync * 2 + isGenerator) << 21) |
|
|
6747
|
-
(isGenerator ? 0 :
|
|
6738
|
+
(isGenerator ? 0 : 268435456);
|
|
6748
6739
|
if (scope)
|
|
6749
6740
|
functionScope = addChildScope(functionScope, 512);
|
|
6750
6741
|
var params = parseFormalParametersOrFormalList(parser, context | 8388608, functionScope, 0, 1);
|
|
@@ -6771,13 +6762,13 @@
|
|
|
6771
6762
|
if (scope)
|
|
6772
6763
|
scope = addChildScope(scope, 256);
|
|
6773
6764
|
firstRestricted = parser.token;
|
|
6774
|
-
id = parseIdentifier(parser, context
|
|
6765
|
+
id = parseIdentifier(parser, context);
|
|
6775
6766
|
}
|
|
6776
6767
|
context =
|
|
6777
6768
|
((context | 32243712) ^ 32243712) |
|
|
6778
6769
|
67108864 |
|
|
6779
6770
|
generatorAndAsyncFlags |
|
|
6780
|
-
(isGenerator ? 0 :
|
|
6771
|
+
(isGenerator ? 0 : 268435456);
|
|
6781
6772
|
if (scope)
|
|
6782
6773
|
scope = addChildScope(scope, 512);
|
|
6783
6774
|
var params = parseFormalParametersOrFormalList(parser, context | 8388608, scope, inGroup, 1);
|
|
@@ -6815,14 +6806,14 @@
|
|
|
6815
6806
|
var left = void 0;
|
|
6816
6807
|
var token = parser.token, tokenPos = parser.tokenPos, linePos = parser.linePos, colPos = parser.colPos, tokenValue = parser.tokenValue;
|
|
6817
6808
|
if (token & 143360) {
|
|
6818
|
-
left = parsePrimaryExpression(parser, context, kind, 0, 1,
|
|
6809
|
+
left = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos, linePos, colPos);
|
|
6819
6810
|
if (parser.token === 1077936157) {
|
|
6820
6811
|
if (parser.assignable & 2)
|
|
6821
6812
|
report(parser, 24);
|
|
6822
6813
|
nextToken(parser, context | 32768);
|
|
6823
6814
|
if (scope)
|
|
6824
6815
|
addVarOrBlock(parser, context, scope, tokenValue, kind, origin);
|
|
6825
|
-
var right = parseExpression(parser, context, 1,
|
|
6816
|
+
var right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
|
|
6826
6817
|
left = finishNode(parser, context, tokenPos, linePos, colPos, isPattern
|
|
6827
6818
|
? {
|
|
6828
6819
|
type: 'AssignmentPattern',
|
|
@@ -6961,7 +6952,7 @@
|
|
|
6961
6952
|
if (!isPattern)
|
|
6962
6953
|
reinterpretToPattern(parser, node);
|
|
6963
6954
|
var tokenPos = parser.tokenPos, linePos = parser.linePos, colPos = parser.colPos;
|
|
6964
|
-
var right = parseExpression(parser, context, 1,
|
|
6955
|
+
var right = parseExpression(parser, context, 1, inGroup, tokenPos, linePos, colPos);
|
|
6965
6956
|
parser.destructible =
|
|
6966
6957
|
((destructible | 64 | 8) ^
|
|
6967
6958
|
(8 | 64)) |
|
|
@@ -6987,7 +6978,7 @@
|
|
|
6987
6978
|
var token = parser.token, tokenValue = parser.tokenValue, tokenPos = parser.tokenPos, linePos = parser.linePos, colPos = parser.colPos;
|
|
6988
6979
|
if (token & (4096 | 143360)) {
|
|
6989
6980
|
parser.assignable = 1;
|
|
6990
|
-
argument = parsePrimaryExpression(parser, context, kind, 0, 1,
|
|
6981
|
+
argument = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos, linePos, colPos);
|
|
6991
6982
|
token = parser.token;
|
|
6992
6983
|
argument = parseMemberOrUpdateExpression(parser, context, argument, inGroup, 0, tokenPos, linePos, colPos);
|
|
6993
6984
|
if (parser.token !== 18 && parser.token !== closingToken) {
|
|
@@ -7082,7 +7073,7 @@
|
|
|
7082
7073
|
if (destructible & 16)
|
|
7083
7074
|
report(parser, 24);
|
|
7084
7075
|
reinterpretToPattern(parser, argument);
|
|
7085
|
-
var right = parseExpression(parser, context, 1,
|
|
7076
|
+
var right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
|
|
7086
7077
|
argument = finishNode(parser, context, tokenPos, linePos, colPos, isPattern
|
|
7087
7078
|
? {
|
|
7088
7079
|
type: 'AssignmentPattern',
|
|
@@ -7154,7 +7145,7 @@
|
|
|
7154
7145
|
var value = void 0;
|
|
7155
7146
|
var t = parser.token;
|
|
7156
7147
|
if (parser.token & (143360 | 4096) || parser.token === 121) {
|
|
7157
|
-
key = parseIdentifier(parser, context
|
|
7148
|
+
key = parseIdentifier(parser, context);
|
|
7158
7149
|
if (parser.token === 18 || parser.token === 1074790415 || parser.token === 1077936157) {
|
|
7159
7150
|
state |= 4;
|
|
7160
7151
|
if (context & 1024 && (token & 537079808) === 537079808) {
|
|
@@ -7167,7 +7158,7 @@
|
|
|
7167
7158
|
addVarOrBlock(parser, context, scope, tokenValue, kind, origin);
|
|
7168
7159
|
if (consumeOpt(parser, context | 32768, 1077936157)) {
|
|
7169
7160
|
destructible |= 8;
|
|
7170
|
-
var right = parseExpression(parser, context, 1,
|
|
7161
|
+
var right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
|
|
7171
7162
|
destructible |=
|
|
7172
7163
|
parser.destructible & 256
|
|
7173
7164
|
? 256
|
|
@@ -7176,7 +7167,7 @@
|
|
|
7176
7167
|
: 0;
|
|
7177
7168
|
value = finishNode(parser, context, tokenPos, linePos, colPos, {
|
|
7178
7169
|
type: 'AssignmentPattern',
|
|
7179
|
-
left: context &
|
|
7170
|
+
left: context & 536870912 ? Object.assign({}, key) : key,
|
|
7180
7171
|
right: right
|
|
7181
7172
|
});
|
|
7182
7173
|
}
|
|
@@ -7184,7 +7175,7 @@
|
|
|
7184
7175
|
destructible |=
|
|
7185
7176
|
(token === 209008 ? 128 : 0) |
|
|
7186
7177
|
(token === 121 ? 16 : 0);
|
|
7187
|
-
value = context &
|
|
7178
|
+
value = context & 536870912 ? Object.assign({}, key) : key;
|
|
7188
7179
|
}
|
|
7189
7180
|
}
|
|
7190
7181
|
else if (consumeOpt(parser, context | 32768, 21)) {
|
|
@@ -7195,7 +7186,7 @@
|
|
|
7195
7186
|
var tokenAfterColon = parser.token;
|
|
7196
7187
|
var valueAfterColon = parser.tokenValue;
|
|
7197
7188
|
destructible |= t === 121 ? 16 : 0;
|
|
7198
|
-
value = parsePrimaryExpression(parser, context, kind, 0, 1,
|
|
7189
|
+
value = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos_6, linePos_5, colPos_5);
|
|
7199
7190
|
var token_2 = parser.token;
|
|
7200
7191
|
value = parseMemberOrUpdateExpression(parser, context, value, inGroup, 0, tokenPos_6, linePos_5, colPos_5);
|
|
7201
7192
|
if (parser.token === 18 || parser.token === 1074790415) {
|
|
@@ -7316,7 +7307,7 @@
|
|
|
7316
7307
|
report(parser, 129);
|
|
7317
7308
|
state |= 16;
|
|
7318
7309
|
}
|
|
7319
|
-
key = parseIdentifier(parser, context
|
|
7310
|
+
key = parseIdentifier(parser, context);
|
|
7320
7311
|
state |=
|
|
7321
7312
|
token === 12402
|
|
7322
7313
|
? 256
|
|
@@ -7345,7 +7336,7 @@
|
|
|
7345
7336
|
state |=
|
|
7346
7337
|
8 | 1 | (token === 209007 ? 16 : 0);
|
|
7347
7338
|
if (parser.token & 143360) {
|
|
7348
|
-
key = parseIdentifier(parser, context
|
|
7339
|
+
key = parseIdentifier(parser, context);
|
|
7349
7340
|
}
|
|
7350
7341
|
else if ((parser.token & 134217728) === 134217728) {
|
|
7351
7342
|
key = parseLiteral(parser, context);
|
|
@@ -7385,7 +7376,7 @@
|
|
|
7385
7376
|
if (tokenValue === '__proto__')
|
|
7386
7377
|
prototypeCount++;
|
|
7387
7378
|
if (parser.token & 143360) {
|
|
7388
|
-
value = parsePrimaryExpression(parser, context, kind, 0, 1,
|
|
7379
|
+
value = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos_7, linePos_6, colPos_6);
|
|
7389
7380
|
var token_3 = parser.token, valueAfterColon = parser.tokenValue;
|
|
7390
7381
|
value = parseMemberOrUpdateExpression(parser, context, value, inGroup, 0, tokenPos_7, linePos_6, colPos_6);
|
|
7391
7382
|
if (parser.token === 18 || parser.token === 1074790415) {
|
|
@@ -7486,7 +7477,7 @@
|
|
|
7486
7477
|
nextToken(parser, context | 32768);
|
|
7487
7478
|
var tokenPos_8 = parser.tokenPos, linePos_7 = parser.linePos, colPos_7 = parser.colPos, tokenValue_3 = parser.tokenValue, tokenAfterColon = parser.token;
|
|
7488
7479
|
if (parser.token & 143360) {
|
|
7489
|
-
value = parsePrimaryExpression(parser, context, kind, 0, 1,
|
|
7480
|
+
value = parsePrimaryExpression(parser, context, kind, 0, 1, inGroup, 1, tokenPos_8, linePos_7, colPos_7);
|
|
7490
7481
|
var token_4 = parser.token;
|
|
7491
7482
|
value = parseMemberOrUpdateExpression(parser, context, value, inGroup, 0, tokenPos_8, linePos_7, colPos_7);
|
|
7492
7483
|
if ((parser.token & 4194304) === 4194304) {
|
|
@@ -7592,7 +7583,7 @@
|
|
|
7592
7583
|
state |= 8;
|
|
7593
7584
|
if (parser.token & 143360) {
|
|
7594
7585
|
var token_5 = parser.token, line_1 = parser.line, index = parser.index;
|
|
7595
|
-
key = parseIdentifier(parser, context
|
|
7586
|
+
key = parseIdentifier(parser, context);
|
|
7596
7587
|
state |= 1;
|
|
7597
7588
|
if (parser.token === 67174411) {
|
|
7598
7589
|
destructible |= 16;
|
|
@@ -7706,7 +7697,7 @@
|
|
|
7706
7697
|
if (parser.token === 1077936157) {
|
|
7707
7698
|
nextToken(parser, context | 32768);
|
|
7708
7699
|
isSimpleParameterList = 1;
|
|
7709
|
-
var right = parseExpression(parser, context, 1,
|
|
7700
|
+
var right = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
7710
7701
|
left = finishNode(parser, context, tokenPos, linePos, colPos, {
|
|
7711
7702
|
type: 'AssignmentPattern',
|
|
7712
7703
|
left: left,
|
|
@@ -7733,14 +7724,14 @@
|
|
|
7733
7724
|
}
|
|
7734
7725
|
function parseComputedPropertyName(parser, context, inGroup) {
|
|
7735
7726
|
nextToken(parser, context | 32768);
|
|
7736
|
-
var key = parseExpression(parser, (context | 134217728) ^ 134217728, 1,
|
|
7727
|
+
var key = parseExpression(parser, (context | 134217728) ^ 134217728, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
|
|
7737
7728
|
consume(parser, context, 20);
|
|
7738
7729
|
return key;
|
|
7739
7730
|
}
|
|
7740
7731
|
function parseParenthesizedExpression(parser, context, canAssign, kind, origin, start, line, column) {
|
|
7741
7732
|
parser.flags = (parser.flags | 128) ^ 128;
|
|
7742
7733
|
var piStart = parser.tokenPos, plStart = parser.linePos, pcStart = parser.colPos;
|
|
7743
|
-
nextToken(parser, context | 32768 |
|
|
7734
|
+
nextToken(parser, context | 32768 | 268435456);
|
|
7744
7735
|
var scope = context & 64 ? addChildScope(createScope(), 1024) : void 0;
|
|
7745
7736
|
context = (context | 134217728) ^ 134217728;
|
|
7746
7737
|
if (consumeOpt(parser, context, 16)) {
|
|
@@ -7759,7 +7750,7 @@
|
|
|
7759
7750
|
if (token & (143360 | 4096)) {
|
|
7760
7751
|
if (scope)
|
|
7761
7752
|
addBlockName(parser, context, scope, parser.tokenValue, 1, 0);
|
|
7762
|
-
expr = parsePrimaryExpression(parser, context, kind, 0, 1,
|
|
7753
|
+
expr = parsePrimaryExpression(parser, context, kind, 0, 1, 1, 1, tokenPos, linePos, colPos);
|
|
7763
7754
|
if (parser.token === 16 || parser.token === 18) {
|
|
7764
7755
|
if (parser.assignable & 2) {
|
|
7765
7756
|
destructible |= 16;
|
|
@@ -7786,8 +7777,8 @@
|
|
|
7786
7777
|
else if ((token & 2097152) === 2097152) {
|
|
7787
7778
|
expr =
|
|
7788
7779
|
token === 2162700
|
|
7789
|
-
? parseObjectLiteralOrPattern(parser, context |
|
|
7790
|
-
: parseArrayExpressionOrPattern(parser, context |
|
|
7780
|
+
? parseObjectLiteralOrPattern(parser, context | 268435456, scope, 0, 1, 0, kind, origin, tokenPos, linePos, colPos)
|
|
7781
|
+
: parseArrayExpressionOrPattern(parser, context | 268435456, scope, 0, 1, 0, kind, origin, tokenPos, linePos, colPos);
|
|
7791
7782
|
destructible |= parser.destructible;
|
|
7792
7783
|
isSimpleParameterList = 1;
|
|
7793
7784
|
parser.assignable = 2;
|
|
@@ -7814,7 +7805,7 @@
|
|
|
7814
7805
|
}
|
|
7815
7806
|
else {
|
|
7816
7807
|
destructible |= 16;
|
|
7817
|
-
expr = parseExpression(parser, context, 1,
|
|
7808
|
+
expr = parseExpression(parser, context, 1, 1, tokenPos, linePos, colPos);
|
|
7818
7809
|
if (isSequence && (parser.token === 16 || parser.token === 18)) {
|
|
7819
7810
|
expressions.push(expr);
|
|
7820
7811
|
}
|
|
@@ -7826,7 +7817,7 @@
|
|
|
7826
7817
|
}
|
|
7827
7818
|
if (isSequence) {
|
|
7828
7819
|
while (consumeOpt(parser, context | 32768, 18)) {
|
|
7829
|
-
expressions.push(parseExpression(parser, context, 1,
|
|
7820
|
+
expressions.push(parseExpression(parser, context, 1, 1, parser.tokenPos, parser.linePos, parser.colPos));
|
|
7830
7821
|
}
|
|
7831
7822
|
parser.assignable = 2;
|
|
7832
7823
|
expr = finishNode(parser, context, iStart, lStart, cStart, {
|
|
@@ -7893,7 +7884,7 @@
|
|
|
7893
7884
|
}
|
|
7894
7885
|
function parseIdentifierOrArrow(parser, context, start, line, column) {
|
|
7895
7886
|
var tokenValue = parser.tokenValue;
|
|
7896
|
-
var expr = parseIdentifier(parser, context
|
|
7887
|
+
var expr = parseIdentifier(parser, context);
|
|
7897
7888
|
parser.assignable = 1;
|
|
7898
7889
|
if (parser.token === 10) {
|
|
7899
7890
|
var scope = void 0;
|
|
@@ -7931,7 +7922,7 @@
|
|
|
7931
7922
|
reportScopeError(scope.scopeError);
|
|
7932
7923
|
}
|
|
7933
7924
|
if (expression) {
|
|
7934
|
-
body = parseExpression(parser, context & 16384 ? context | 33554432 : context, 1, 0,
|
|
7925
|
+
body = parseExpression(parser, context & 16384 ? context | 33554432 : context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
7935
7926
|
}
|
|
7936
7927
|
else {
|
|
7937
7928
|
if (scope)
|
|
@@ -8012,7 +8003,7 @@
|
|
|
8012
8003
|
if (parser.token === 1077936157) {
|
|
8013
8004
|
nextToken(parser, context | 32768);
|
|
8014
8005
|
isSimpleParameterList = 1;
|
|
8015
|
-
var right = parseExpression(parser, context, 1,
|
|
8006
|
+
var right = parseExpression(parser, context, 1, inGroup, parser.tokenPos, parser.linePos, parser.colPos);
|
|
8016
8007
|
left = finishNode(parser, context, tokenPos, linePos, colPos, {
|
|
8017
8008
|
type: 'AssignmentPattern',
|
|
8018
8009
|
left: left,
|
|
@@ -8038,7 +8029,7 @@
|
|
|
8038
8029
|
var token = parser.token;
|
|
8039
8030
|
if (token & 67108864) {
|
|
8040
8031
|
if (token === 67108877) {
|
|
8041
|
-
nextToken(parser, context |
|
|
8032
|
+
nextToken(parser, context | 268435456);
|
|
8042
8033
|
parser.assignable = 1;
|
|
8043
8034
|
var property = parsePropertyOrPrivatePropertyName(parser, context);
|
|
8044
8035
|
return parseMembeExpressionNoCall(parser, context, finishNode(parser, context, start, line, column, {
|
|
@@ -8075,7 +8066,7 @@
|
|
|
8075
8066
|
return expr;
|
|
8076
8067
|
}
|
|
8077
8068
|
function parseNewExpression(parser, context, inGroup, start, line, column) {
|
|
8078
|
-
var id = parseIdentifier(parser, context | 32768
|
|
8069
|
+
var id = parseIdentifier(parser, context | 32768);
|
|
8079
8070
|
var tokenPos = parser.tokenPos, linePos = parser.linePos, colPos = parser.colPos;
|
|
8080
8071
|
if (consumeOpt(parser, context, 67108877)) {
|
|
8081
8072
|
if (context & 67108864 && parser.token === 143494) {
|
|
@@ -8088,7 +8079,7 @@
|
|
|
8088
8079
|
if ((parser.token & 16842752) === 16842752) {
|
|
8089
8080
|
report(parser, 63, KeywordDescTable[parser.token & 255]);
|
|
8090
8081
|
}
|
|
8091
|
-
var expr = parsePrimaryExpression(parser, context, 2, 1, 0,
|
|
8082
|
+
var expr = parsePrimaryExpression(parser, context, 2, 1, 0, inGroup, 1, tokenPos, linePos, colPos);
|
|
8092
8083
|
context = (context | 134217728) ^ 134217728;
|
|
8093
8084
|
if (parser.token === 67108991)
|
|
8094
8085
|
report(parser, 163);
|
|
@@ -8101,7 +8092,7 @@
|
|
|
8101
8092
|
});
|
|
8102
8093
|
}
|
|
8103
8094
|
function parseMetaProperty(parser, context, meta, start, line, column) {
|
|
8104
|
-
var property = parseIdentifier(parser, context
|
|
8095
|
+
var property = parseIdentifier(parser, context);
|
|
8105
8096
|
return finishNode(parser, context, start, line, column, {
|
|
8106
8097
|
type: 'MetaProperty',
|
|
8107
8098
|
meta: meta,
|
|
@@ -8117,7 +8108,7 @@
|
|
|
8117
8108
|
if ((parser.token & 537079808) === 537079808) {
|
|
8118
8109
|
parser.flags |= 512;
|
|
8119
8110
|
}
|
|
8120
|
-
return parseArrowFromIdentifier(parser, context, parser.tokenValue, parseIdentifier(parser, context
|
|
8111
|
+
return parseArrowFromIdentifier(parser, context, parser.tokenValue, parseIdentifier(parser, context), 0, canAssign, 1, start, line, column);
|
|
8121
8112
|
}
|
|
8122
8113
|
function parseAsyncArrowOrCallExpression(parser, context, callee, canAssign, kind, origin, flags, start, line, column) {
|
|
8123
8114
|
nextToken(parser, context | 32768);
|
|
@@ -8147,7 +8138,7 @@
|
|
|
8147
8138
|
if (token & (143360 | 4096)) {
|
|
8148
8139
|
if (scope)
|
|
8149
8140
|
addBlockName(parser, context, scope, parser.tokenValue, kind, 0);
|
|
8150
|
-
expr = parsePrimaryExpression(parser, context, kind, 0, 1,
|
|
8141
|
+
expr = parsePrimaryExpression(parser, context, kind, 0, 1, 1, 1, tokenPos, linePos, colPos);
|
|
8151
8142
|
if (parser.token === 16 || parser.token === 18) {
|
|
8152
8143
|
if (parser.assignable & 2) {
|
|
8153
8144
|
destructible |= 16;
|
|
@@ -8199,11 +8190,11 @@
|
|
|
8199
8190
|
isSimpleParameterList = 1;
|
|
8200
8191
|
}
|
|
8201
8192
|
else {
|
|
8202
|
-
expr = parseExpression(parser, context, 1, 0,
|
|
8193
|
+
expr = parseExpression(parser, context, 1, 0, tokenPos, linePos, colPos);
|
|
8203
8194
|
destructible = parser.assignable;
|
|
8204
8195
|
params.push(expr);
|
|
8205
8196
|
while (consumeOpt(parser, context | 32768, 18)) {
|
|
8206
|
-
params.push(parseExpression(parser, context, 1, 0,
|
|
8197
|
+
params.push(parseExpression(parser, context, 1, 0, tokenPos, linePos, colPos));
|
|
8207
8198
|
}
|
|
8208
8199
|
destructible |= parser.assignable;
|
|
8209
8200
|
consume(parser, context, 16);
|
|
@@ -8299,7 +8290,7 @@
|
|
|
8299
8290
|
}
|
|
8300
8291
|
}
|
|
8301
8292
|
}
|
|
8302
|
-
id = parseIdentifier(parser, context
|
|
8293
|
+
id = parseIdentifier(parser, context);
|
|
8303
8294
|
}
|
|
8304
8295
|
else {
|
|
8305
8296
|
if ((flags & 1) === 0)
|
|
@@ -8346,7 +8337,7 @@
|
|
|
8346
8337
|
if ((parser.token & 537079808) === 537079808) {
|
|
8347
8338
|
report(parser, 116);
|
|
8348
8339
|
}
|
|
8349
|
-
id = parseIdentifier(parser, context
|
|
8340
|
+
id = parseIdentifier(parser, context);
|
|
8350
8341
|
}
|
|
8351
8342
|
var inheritedContext = context;
|
|
8352
8343
|
if (consumeOpt(parser, context | 32768, 20567)) {
|
|
@@ -8384,7 +8375,7 @@
|
|
|
8384
8375
|
}
|
|
8385
8376
|
function parseDecoratorList(parser, context, start, line, column) {
|
|
8386
8377
|
nextToken(parser, context | 32768);
|
|
8387
|
-
var expression = parsePrimaryExpression(parser, context, 2, 0, 1, 0,
|
|
8378
|
+
var expression = parsePrimaryExpression(parser, context, 2, 0, 1, 0, 1, start, line, column);
|
|
8388
8379
|
expression = parseMemberOrUpdateExpression(parser, context, expression, 0, 0, start, line, column);
|
|
8389
8380
|
return finishNode(parser, context, start, line, column, {
|
|
8390
8381
|
type: 'Decorator',
|
|
@@ -8427,7 +8418,7 @@
|
|
|
8427
8418
|
var key = null;
|
|
8428
8419
|
var token = parser.token, tokenPos = parser.tokenPos, linePos = parser.linePos, colPos = parser.colPos;
|
|
8429
8420
|
if (token & (143360 | 36864)) {
|
|
8430
|
-
key = parseIdentifier(parser, context
|
|
8421
|
+
key = parseIdentifier(parser, context);
|
|
8431
8422
|
switch (token) {
|
|
8432
8423
|
case 36972:
|
|
8433
8424
|
if (!isStatic &&
|
|
@@ -8485,7 +8476,7 @@
|
|
|
8485
8476
|
return parseStaticBlock(parser, context, scope, tokenPos, linePos, colPos);
|
|
8486
8477
|
}
|
|
8487
8478
|
else if (token === 122) {
|
|
8488
|
-
key = parseIdentifier(parser, context
|
|
8479
|
+
key = parseIdentifier(parser, context);
|
|
8489
8480
|
if (parser.token !== 67174411)
|
|
8490
8481
|
report(parser, 28, KeywordDescTable[parser.token & 255]);
|
|
8491
8482
|
}
|
|
@@ -8494,7 +8485,7 @@
|
|
|
8494
8485
|
}
|
|
8495
8486
|
if (kind & (8 | 16 | 768)) {
|
|
8496
8487
|
if (parser.token & 143360) {
|
|
8497
|
-
key = parseIdentifier(parser, context
|
|
8488
|
+
key = parseIdentifier(parser, context);
|
|
8498
8489
|
}
|
|
8499
8490
|
else if ((parser.token & 134217728) === 134217728) {
|
|
8500
8491
|
key = parseLiteral(parser, context);
|
|
@@ -8504,7 +8495,7 @@
|
|
|
8504
8495
|
key = parseComputedPropertyName(parser, context, 0);
|
|
8505
8496
|
}
|
|
8506
8497
|
else if (parser.token === 122) {
|
|
8507
|
-
key = parseIdentifier(parser, context
|
|
8498
|
+
key = parseIdentifier(parser, context);
|
|
8508
8499
|
}
|
|
8509
8500
|
else if (context & 1 && parser.token === 131) {
|
|
8510
8501
|
kind |= 4096;
|
|
@@ -8599,7 +8590,7 @@
|
|
|
8599
8590
|
((context | modifierFlags) ^ modifierFlags) |
|
|
8600
8591
|
((state & 88) << 18) |
|
|
8601
8592
|
100925440;
|
|
8602
|
-
value = parsePrimaryExpression(parser, context | 16384, 2, 0, 1, 0,
|
|
8593
|
+
value = parsePrimaryExpression(parser, context | 16384, 2, 0, 1, 0, 1, tokenPos, linePos, colPos);
|
|
8603
8594
|
if ((parser.token & 1073741824) !== 1073741824 ||
|
|
8604
8595
|
(parser.token & 4194304) === 4194304) {
|
|
8605
8596
|
value = parseMemberOrUpdateExpression(parser, context | 16384, value, 0, 0, tokenPos, linePos, colPos);
|
|
@@ -8807,7 +8798,7 @@
|
|
|
8807
8798
|
function parseJSXSpreadAttribute(parser, context, start, line, column) {
|
|
8808
8799
|
nextToken(parser, context);
|
|
8809
8800
|
consume(parser, context, 14);
|
|
8810
|
-
var expression = parseExpression(parser, context, 1, 0,
|
|
8801
|
+
var expression = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
8811
8802
|
consume(parser, context, 1074790415);
|
|
8812
8803
|
return finishNode(parser, context, start, line, column, {
|
|
8813
8804
|
type: 'JSXSpreadAttribute',
|
|
@@ -8867,7 +8858,7 @@
|
|
|
8867
8858
|
expression = parseJSXEmptyExpression(parser, context, parser.startPos, parser.startLine, parser.startColumn);
|
|
8868
8859
|
}
|
|
8869
8860
|
else {
|
|
8870
|
-
expression = parseExpression(parser, context, 1, 0,
|
|
8861
|
+
expression = parseExpression(parser, context, 1, 0, tokenPos, linePos, colPos);
|
|
8871
8862
|
}
|
|
8872
8863
|
if (inJSXChild) {
|
|
8873
8864
|
consume(parser, context, 1074790415);
|
|
@@ -8882,7 +8873,7 @@
|
|
|
8882
8873
|
}
|
|
8883
8874
|
function parseJSXSpreadChild(parser, context, start, line, column) {
|
|
8884
8875
|
consume(parser, context, 14);
|
|
8885
|
-
var expression = parseExpression(parser, context, 1, 0,
|
|
8876
|
+
var expression = parseExpression(parser, context, 1, 0, parser.tokenPos, parser.linePos, parser.colPos);
|
|
8886
8877
|
consume(parser, context, 1074790415);
|
|
8887
8878
|
return finishNode(parser, context, start, line, column, {
|
|
8888
8879
|
type: 'JSXSpreadChild',
|
|
@@ -8910,7 +8901,7 @@
|
|
|
8910
8901
|
__proto__: null
|
|
8911
8902
|
});
|
|
8912
8903
|
|
|
8913
|
-
var version$1 = "4.4.
|
|
8904
|
+
var version$1 = "4.4.4";
|
|
8914
8905
|
|
|
8915
8906
|
var version = version$1;
|
|
8916
8907
|
function parseScript(source, options) {
|