Skip to content

Commit 0c8fb12

Browse files
committed
Rebase on latest compiler.
1 parent baf8d45 commit 0c8fb12

File tree

3 files changed

+79
-17
lines changed

3 files changed

+79
-17
lines changed

lib/4.06.1/unstable/js_playground_compiler.ml

Lines changed: 39 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -281665,6 +281665,9 @@ let rec parseLident p =
281665281665
Parser.next p;
281666281666
let loc = mkLoc startPos p.prevEndPos in
281667281667
(ident, loc)
281668+
| Eof ->
281669+
Parser.err ~startPos p (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
281670+
("_", mkLoc startPos p.prevEndPos)
281668281671
| _ -> (
281669281672
match recoverLident p with
281670281673
| Some () -> parseLident p
@@ -281709,6 +281712,9 @@ let parseHashIdent ~startPos p =
281709281712
in
281710281713
Parser.next p;
281711281714
(i, mkLoc startPos p.prevEndPos)
281715+
| Eof ->
281716+
Parser.err ~startPos p (Diagnostics.unexpected p.token p.breadcrumbs);
281717+
("", mkLoc startPos p.prevEndPos)
281712281718
| _ -> parseIdent ~startPos ~msg:ErrorMessages.variantIdent p
281713281719

281714281720
(* Ldot (Ldot (Lident "Foo", "Bar"), "baz") *)
@@ -281744,11 +281750,11 @@ let parseValuePath p =
281744281750
Parser.err p (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
281745281751
Longident.Lident ident)
281746281752
in
281747-
if p.token <> Eof then Parser.next p;
281753+
Parser.nextUnsafe p;
281748281754
res
281749281755
| token ->
281750281756
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
281751-
Parser.next p;
281757+
Parser.nextUnsafe p;
281752281758
Longident.Lident "_"
281753281759
in
281754281760
Location.mkloc ident (mkLoc startPos p.prevEndPos)
@@ -281911,7 +281917,7 @@ let parseConstant p =
281911281917
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
281912281918
Pconst_string ("", None)
281913281919
in
281914-
Parser.next p;
281920+
Parser.nextUnsafe p;
281915281921
constant
281916281922

281917281923
let parseTemplateConstant ~prefix (p : Parser.t) =
@@ -282175,6 +282181,10 @@ let rec parsePattern ?(alias = true) ?(or_ = true) p =
282175282181
in
282176282182
Parser.next p;
282177282183
(i, mkLoc startPos p.prevEndPos)
282184+
| Eof ->
282185+
Parser.err ~startPos p
282186+
(Diagnostics.unexpected p.token p.breadcrumbs);
282187+
("", mkLoc startPos p.prevEndPos)
282178282188
| _ -> parseIdent ~msg:ErrorMessages.variantIdent ~startPos p
282179282189
in
282180282190
match p.Parser.token with
@@ -282198,6 +282208,9 @@ let rec parsePattern ?(alias = true) ?(or_ = true) p =
282198282208
let extension = parseExtension p in
282199282209
let loc = mkLoc startPos p.prevEndPos in
282200282210
Ast_helper.Pat.extension ~loc ~attrs extension
282211+
| Eof ->
282212+
Parser.err p (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
282213+
Recover.defaultPattern ()
282201282214
| token -> (
282202282215
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
282203282216
match
@@ -282944,6 +282957,10 @@ and parseAtomicExpr p =
282944282957
Parser.err p (Diagnostics.lident token);
282945282958
Parser.next p;
282946282959
Recover.defaultExpr ()
282960+
| Eof ->
282961+
Parser.err ~startPos:p.prevEndPos p
282962+
(Diagnostics.unexpected p.Parser.token p.breadcrumbs);
282963+
Recover.defaultExpr ()
282947282964
| token -> (
282948282965
let errPos = p.prevEndPos in
282949282966
Parser.err ~startPos:errPos p (Diagnostics.unexpected token p.breadcrumbs);
@@ -282982,7 +282999,7 @@ and parseFirstClassModuleExpr ~startPos p =
282982282999
and parseBracketAccess p expr startPos =
282983283000
Parser.leaveBreadcrumb p Grammar.ExprArrayAccess;
282984283001
let lbracket = p.startPos in
282985-
Parser.next p;
283002+
Parser.expect Lbracket p;
282986283003
let stringStart = p.startPos in
282987283004
match p.Parser.token with
282988283005
| String s -> (
@@ -284363,7 +284380,10 @@ and parseForRest hasOpeningParen pattern startPos p =
284363284380
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
284364284381
Asttypes.Upto
284365284382
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;
284367284387
let e2 = parseExpr ~context:WhenExpr p in
284368284388
if hasOpeningParen then Parser.expect Rparen p;
284369284389
Parser.expect Lbrace p;
@@ -284721,7 +284741,7 @@ and parseValueOrConstructor p =
284721284741
Ast_helper.Exp.ident ~loc (Location.mkloc lident loc)
284722284742
| token ->
284723284743
if acc = [] then (
284724-
Parser.next p;
284744+
Parser.nextUnsafe p;
284725284745
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
284726284746
Recover.defaultExpr ())
284727284747
else
@@ -284922,7 +284942,11 @@ and parseAtomicTypExpr ~attrs p =
284922284942
| SingleQuote ->
284923284943
Parser.next p;
284924284944
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
284926284950
in
284927284951
Ast_helper.Typ.var ~loc ~attrs ident
284928284952
| Underscore ->
@@ -284968,6 +284992,9 @@ and parseAtomicTypExpr ~attrs p =
284968284992
let loc = mkLoc startPos p.prevEndPos in
284969284993
Ast_helper.Typ.extension ~attrs ~loc extension
284970284994
| Lbrace -> parseRecordOrObjectType ~attrs p
284995+
| Eof ->
284996+
Parser.err p (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
284997+
Recover.defaultType ()
284971284998
| token -> (
284972284999
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
284973285000
match
@@ -285710,7 +285737,11 @@ and parseTypeParam p =
285710285737
| SingleQuote ->
285711285738
Parser.next p;
285712285739
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
285714285745
in
285715285746
Some (Ast_helper.Typ.var ~loc ident, variance)
285716285747
| Underscore ->

lib/4.06.1/whole_compiler.ml

Lines changed: 39 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -287410,6 +287410,9 @@ let rec parseLident p =
287410287410
Parser.next p;
287411287411
let loc = mkLoc startPos p.prevEndPos in
287412287412
(ident, loc)
287413+
| Eof ->
287414+
Parser.err ~startPos p (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
287415+
("_", mkLoc startPos p.prevEndPos)
287413287416
| _ -> (
287414287417
match recoverLident p with
287415287418
| Some () -> parseLident p
@@ -287454,6 +287457,9 @@ let parseHashIdent ~startPos p =
287454287457
in
287455287458
Parser.next p;
287456287459
(i, mkLoc startPos p.prevEndPos)
287460+
| Eof ->
287461+
Parser.err ~startPos p (Diagnostics.unexpected p.token p.breadcrumbs);
287462+
("", mkLoc startPos p.prevEndPos)
287457287463
| _ -> parseIdent ~startPos ~msg:ErrorMessages.variantIdent p
287458287464

287459287465
(* Ldot (Ldot (Lident "Foo", "Bar"), "baz") *)
@@ -287489,11 +287495,11 @@ let parseValuePath p =
287489287495
Parser.err p (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
287490287496
Longident.Lident ident)
287491287497
in
287492-
if p.token <> Eof then Parser.next p;
287498+
Parser.nextUnsafe p;
287493287499
res
287494287500
| token ->
287495287501
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
287496-
Parser.next p;
287502+
Parser.nextUnsafe p;
287497287503
Longident.Lident "_"
287498287504
in
287499287505
Location.mkloc ident (mkLoc startPos p.prevEndPos)
@@ -287656,7 +287662,7 @@ let parseConstant p =
287656287662
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
287657287663
Pconst_string ("", None)
287658287664
in
287659-
Parser.next p;
287665+
Parser.nextUnsafe p;
287660287666
constant
287661287667

287662287668
let parseTemplateConstant ~prefix (p : Parser.t) =
@@ -287920,6 +287926,10 @@ let rec parsePattern ?(alias = true) ?(or_ = true) p =
287920287926
in
287921287927
Parser.next p;
287922287928
(i, mkLoc startPos p.prevEndPos)
287929+
| Eof ->
287930+
Parser.err ~startPos p
287931+
(Diagnostics.unexpected p.token p.breadcrumbs);
287932+
("", mkLoc startPos p.prevEndPos)
287923287933
| _ -> parseIdent ~msg:ErrorMessages.variantIdent ~startPos p
287924287934
in
287925287935
match p.Parser.token with
@@ -287943,6 +287953,9 @@ let rec parsePattern ?(alias = true) ?(or_ = true) p =
287943287953
let extension = parseExtension p in
287944287954
let loc = mkLoc startPos p.prevEndPos in
287945287955
Ast_helper.Pat.extension ~loc ~attrs extension
287956+
| Eof ->
287957+
Parser.err p (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
287958+
Recover.defaultPattern ()
287946287959
| token -> (
287947287960
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
287948287961
match
@@ -288689,6 +288702,10 @@ and parseAtomicExpr p =
288689288702
Parser.err p (Diagnostics.lident token);
288690288703
Parser.next p;
288691288704
Recover.defaultExpr ()
288705+
| Eof ->
288706+
Parser.err ~startPos:p.prevEndPos p
288707+
(Diagnostics.unexpected p.Parser.token p.breadcrumbs);
288708+
Recover.defaultExpr ()
288692288709
| token -> (
288693288710
let errPos = p.prevEndPos in
288694288711
Parser.err ~startPos:errPos p (Diagnostics.unexpected token p.breadcrumbs);
@@ -288727,7 +288744,7 @@ and parseFirstClassModuleExpr ~startPos p =
288727288744
and parseBracketAccess p expr startPos =
288728288745
Parser.leaveBreadcrumb p Grammar.ExprArrayAccess;
288729288746
let lbracket = p.startPos in
288730-
Parser.next p;
288747+
Parser.expect Lbracket p;
288731288748
let stringStart = p.startPos in
288732288749
match p.Parser.token with
288733288750
| String s -> (
@@ -290108,7 +290125,10 @@ and parseForRest hasOpeningParen pattern startPos p =
290108290125
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
290109290126
Asttypes.Upto
290110290127
in
290111-
Parser.next p;
290128+
if p.Parser.token = Eof then
290129+
Parser.err ~startPos:p.startPos p
290130+
(Diagnostics.unexpected p.Parser.token p.breadcrumbs)
290131+
else Parser.next p;
290112290132
let e2 = parseExpr ~context:WhenExpr p in
290113290133
if hasOpeningParen then Parser.expect Rparen p;
290114290134
Parser.expect Lbrace p;
@@ -290466,7 +290486,7 @@ and parseValueOrConstructor p =
290466290486
Ast_helper.Exp.ident ~loc (Location.mkloc lident loc)
290467290487
| token ->
290468290488
if acc = [] then (
290469-
Parser.next p;
290489+
Parser.nextUnsafe p;
290470290490
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
290471290491
Recover.defaultExpr ())
290472290492
else
@@ -290667,7 +290687,11 @@ and parseAtomicTypExpr ~attrs p =
290667290687
| SingleQuote ->
290668290688
Parser.next p;
290669290689
let ident, loc =
290670-
parseIdent ~msg:ErrorMessages.typeVar ~startPos:p.startPos p
290690+
if p.Parser.token = Eof then (
290691+
Parser.err ~startPos:p.startPos p
290692+
(Diagnostics.unexpected p.Parser.token p.breadcrumbs);
290693+
("", mkLoc p.startPos p.prevEndPos))
290694+
else parseIdent ~msg:ErrorMessages.typeVar ~startPos:p.startPos p
290671290695
in
290672290696
Ast_helper.Typ.var ~loc ~attrs ident
290673290697
| Underscore ->
@@ -290713,6 +290737,9 @@ and parseAtomicTypExpr ~attrs p =
290713290737
let loc = mkLoc startPos p.prevEndPos in
290714290738
Ast_helper.Typ.extension ~attrs ~loc extension
290715290739
| Lbrace -> parseRecordOrObjectType ~attrs p
290740+
| Eof ->
290741+
Parser.err p (Diagnostics.unexpected p.Parser.token p.breadcrumbs);
290742+
Recover.defaultType ()
290716290743
| token -> (
290717290744
Parser.err p (Diagnostics.unexpected token p.breadcrumbs);
290718290745
match
@@ -291455,7 +291482,11 @@ and parseTypeParam p =
291455291482
| SingleQuote ->
291456291483
Parser.next p;
291457291484
let ident, loc =
291458-
parseIdent ~msg:ErrorMessages.typeParam ~startPos:p.startPos p
291485+
if p.Parser.token = Eof then (
291486+
Parser.err ~startPos:p.startPos p
291487+
(Diagnostics.unexpected p.Parser.token p.breadcrumbs);
291488+
("", mkLoc p.startPos p.prevEndPos))
291489+
else parseIdent ~msg:ErrorMessages.typeParam ~startPos:p.startPos p
291459291490
in
291460291491
Some (Ast_helper.Typ.var ~loc ident, variance)
291461291492
| Underscore ->

0 commit comments

Comments
 (0)