Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 63ed569

Browse files
author
Max Schaefer
committed
JavaScript: Recover from missing initializers in const/destructuring declarations.
1 parent fbf2774 commit 63ed569

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

javascript/extractor/src/com/semmle/jcorn/Parser.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2921,9 +2921,9 @@ protected VariableDeclaration parseVar(Position startLoc, boolean isFor, String
29212921
if (this.eat(TokenType.eq)) {
29222922
init = this.parseMaybeAssign(isFor, null, null);
29232923
} else if (kind.equals("const") && !(this.type == TokenType._in || (this.options.ecmaVersion() >= 6 && this.isContextual("of")))) {
2924-
this.unexpected();
2924+
this.raiseRecoverable(this.lastTokEnd, "Constant declarations require an initialization value");
29252925
} else if (!(id instanceof Identifier) && !(isFor && (this.type == TokenType._in || this.isContextual("of")))) {
2926-
this.raise(this.lastTokEnd, "Complex binding patterns require an initialization value");
2926+
this.raiseRecoverable(this.lastTokEnd, "Complex binding patterns require an initialization value");
29272927
}
29282928
declarations.add(this.finishNode(
29292929
new VariableDeclarator(new SourceLocation(varDeclStart), (IPattern) id, init, noTypeAnnotation, DeclarationFlags.none)));

0 commit comments

Comments
 (0)