@@ -281665,6 +281665,9 @@ let rec parseLident p =
281665
281665
Parser.next p;
281666
281666
let loc = mkLoc startPos p.prevEndPos in
281667
281667
(ident, loc)
281668
+ | Eof ->
281669
+ Parser.err ~startPos p (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
281670
+ ("_", mkLoc startPos p.prevEndPos)
281668
281671
| _ -> (
281669
281672
match recoverLident p with
281670
281673
| Some () -> parseLident p
@@ -281709,6 +281712,9 @@ let parseHashIdent ~startPos p =
281709
281712
in
281710
281713
Parser.next p;
281711
281714
(i, mkLoc startPos p.prevEndPos)
281715
+ | Eof ->
281716
+ Parser.err ~startPos p (Diagnostics.unexpected p.token p.breadcrumbs);
281717
+ ("", mkLoc startPos p.prevEndPos)
281712
281718
| _ -> parseIdent ~startPos ~msg:ErrorMessages.variantIdent p
281713
281719
281714
281720
(* Ldot (Ldot (Lident "Foo", "Bar"), "baz") *)
@@ -281744,11 +281750,11 @@ let parseValuePath p =
281744
281750
Parser.err p (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
281745
281751
Longident.Lident ident)
281746
281752
in
281747
- if p.token <> Eof then Parser.next p;
281753
+ Parser.nextUnsafe p;
281748
281754
res
281749
281755
| token ->
281750
281756
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
281751
- Parser.next p;
281757
+ Parser.nextUnsafe p;
281752
281758
Longident.Lident "_"
281753
281759
in
281754
281760
Location.mkloc ident (mkLoc startPos p.prevEndPos)
@@ -281911,7 +281917,7 @@ let parseConstant p =
281911
281917
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
281912
281918
Pconst_string ("", None)
281913
281919
in
281914
- Parser.next p;
281920
+ Parser.nextUnsafe p;
281915
281921
constant
281916
281922
281917
281923
let parseTemplateConstant ~prefix (p : Parser.t) =
@@ -282175,6 +282181,10 @@ let rec parsePattern ?(alias = true) ?(or_ = true) p =
282175
282181
in
282176
282182
Parser.next p;
282177
282183
(i, mkLoc startPos p.prevEndPos)
282184
+ | Eof ->
282185
+ Parser.err ~startPos p
282186
+ (Diagnostics.unexpected p.token p.breadcrumbs);
282187
+ ("", mkLoc startPos p.prevEndPos)
282178
282188
| _ -> parseIdent ~msg:ErrorMessages.variantIdent ~startPos p
282179
282189
in
282180
282190
match p.Parser.token with
@@ -282198,6 +282208,9 @@ let rec parsePattern ?(alias = true) ?(or_ = true) p =
282198
282208
let extension = parseExtension p in
282199
282209
let loc = mkLoc startPos p.prevEndPos in
282200
282210
Ast_helper.Pat.extension ~loc ~attrs extension
282211
+ | Eof ->
282212
+ Parser.err p (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
282213
+ Recover.defaultPattern ()
282201
282214
| token -> (
282202
282215
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
282203
282216
match
@@ -282944,6 +282957,10 @@ and parseAtomicExpr p =
282944
282957
Parser.err p (Diagnostics.lident token);
282945
282958
Parser.next p;
282946
282959
Recover.defaultExpr ()
282960
+ | Eof ->
282961
+ Parser.err ~startPos:p.prevEndPos p
282962
+ (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
282963
+ Recover.defaultExpr ()
282947
282964
| token -> (
282948
282965
let errPos = p.prevEndPos in
282949
282966
Parser.err ~startPos:errPos p (Diagnostics.unexpected token p.breadcrumbs);
@@ -282982,7 +282999,7 @@ and parseFirstClassModuleExpr ~startPos p =
282982
282999
and parseBracketAccess p expr startPos =
282983
283000
Parser.leaveBreadcrumb p Grammar.ExprArrayAccess;
282984
283001
let lbracket = p.startPos in
282985
- Parser.next p;
283002
+ Parser.expect Lbracket p;
282986
283003
let stringStart = p.startPos in
282987
283004
match p.Parser.token with
282988
283005
| String s -> (
@@ -284363,7 +284380,10 @@ and parseForRest hasOpeningParen pattern startPos p =
284363
284380
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
284364
284381
Asttypes.Upto
284365
284382
in
284366
- Parser.next p;
284383
+ if p.Parser.token = Eof then
284384
+ Parser.err ~startPos:p.startPos p
284385
+ (Diagnostics.unexpected p.Parser.token p.breadcrumbs)
284386
+ else Parser.next p;
284367
284387
let e2 = parseExpr ~context:WhenExpr p in
284368
284388
if hasOpeningParen then Parser.expect Rparen p;
284369
284389
Parser.expect Lbrace p;
@@ -284721,7 +284741,7 @@ and parseValueOrConstructor p =
284721
284741
Ast_helper.Exp.ident ~loc (Location.mkloc lident loc)
284722
284742
| token ->
284723
284743
if acc = [] then (
284724
- Parser.next p;
284744
+ Parser.nextUnsafe p;
284725
284745
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
284726
284746
Recover.defaultExpr ())
284727
284747
else
@@ -284922,7 +284942,11 @@ and parseAtomicTypExpr ~attrs p =
284922
284942
| SingleQuote ->
284923
284943
Parser.next p;
284924
284944
let ident, loc =
284925
- parseIdent ~msg:ErrorMessages.typeVar ~startPos:p.startPos p
284945
+ if p.Parser.token = Eof then (
284946
+ Parser.err ~startPos:p.startPos p
284947
+ (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
284948
+ ("", mkLoc p.startPos p.prevEndPos))
284949
+ else parseIdent ~msg:ErrorMessages.typeVar ~startPos:p.startPos p
284926
284950
in
284927
284951
Ast_helper.Typ.var ~loc ~attrs ident
284928
284952
| Underscore ->
@@ -284968,6 +284992,9 @@ and parseAtomicTypExpr ~attrs p =
284968
284992
let loc = mkLoc startPos p.prevEndPos in
284969
284993
Ast_helper.Typ.extension ~attrs ~loc extension
284970
284994
| Lbrace -> parseRecordOrObjectType ~attrs p
284995
+ | Eof ->
284996
+ Parser.err p (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
284997
+ Recover.defaultType ()
284971
284998
| token -> (
284972
284999
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
284973
285000
match
@@ -285710,7 +285737,11 @@ and parseTypeParam p =
285710
285737
| SingleQuote ->
285711
285738
Parser.next p;
285712
285739
let ident, loc =
285713
- parseIdent ~msg:ErrorMessages.typeParam ~startPos:p.startPos p
285740
+ if p.Parser.token = Eof then (
285741
+ Parser.err ~startPos:p.startPos p
285742
+ (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
285743
+ ("", mkLoc p.startPos p.prevEndPos))
285744
+ else parseIdent ~msg:ErrorMessages.typeParam ~startPos:p.startPos p
285714
285745
in
285715
285746
Some (Ast_helper.Typ.var ~loc ident, variance)
285716
285747
| Underscore ->
0 commit comments