Skip to content

Commit d6ba1ff

Browse files
committed
JS: Some loc() fixes
1 parent fd0791b commit d6ba1ff

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

javascript/extractor/src/com/semmle/js/parser/JSDocParser.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -737,10 +737,10 @@ private JSDocTypeExpression parseArrayType() throws ParseError {
737737
List<JSDocTypeExpression> elements = new ArrayList<>();
738738
consume(Token.LBRACK, "ArrayType should start with [");
739739
while (token != Token.RBRACK) {
740-
loc = loc();
741740
if (token == Token.REST) {
741+
SourceLocation restLoc = loc();
742742
consume(Token.REST);
743-
elements.add(finishNode(new RestType(loc, parseTypeExpression())));
743+
elements.add(finishNode(new RestType(restLoc, parseTypeExpression())));
744744
break;
745745
} else {
746746
elements.add(parseTypeExpression());
@@ -914,7 +914,7 @@ private List<JSDocTypeExpression> parseParametersType() throws ParseError {
914914
consume(Token.COLON);
915915
expr =
916916
finishNode(
917-
new ParameterType(loc, ((NameExpression) expr).getName(), parseTypeExpression()));
917+
new ParameterType(new SourceLocation(loc), ((NameExpression) expr).getName(), parseTypeExpression()));
918918
}
919919
if (token == Token.EQUAL) {
920920
consume(Token.EQUAL);
@@ -1089,7 +1089,9 @@ private JSDocTypeExpression parseTypeExpression() throws ParseError {
10891089
consume(Token.RBRACK, "expected an array-style type declaration (' + value + '[])");
10901090
List<JSDocTypeExpression> expressions = new ArrayList<>();
10911091
expressions.add(expr);
1092-
return finishNode(new TypeApplication(loc, new NameExpression(loc, "Array"), expressions));
1092+
NameExpression nameExpr =
1093+
finishNode(new NameExpression(new SourceLocation(loc), "Array"));
1094+
return finishNode(new TypeApplication(loc, nameExpr, expressions));
10931095
}
10941096

10951097
return expr;

0 commit comments

Comments
 (0)