From c110670a3871424b521564a9eeabcf2d08872f65 Mon Sep 17 00:00:00 2001 From: Pierre-Emmanuel Wulfman Date: Mon, 20 Apr 2020 13:34:03 +0200 Subject: [PATCH] fix errors messages in parser --- .../cameligo/error.messages.checked-in | 375 +++++++++--------- .../imperative_to_sugar.ml | 2 +- 2 files changed, 197 insertions(+), 180 deletions(-) diff --git a/src/passes/01-parser/cameligo/error.messages.checked-in b/src/passes/01-parser/cameligo/error.messages.checked-in index 14c31bc5f..92d7e8d02 100644 --- a/src/passes/01-parser/cameligo/error.messages.checked-in +++ b/src/passes/01-parser/cameligo/error.messages.checked-in @@ -1,4 +1,4 @@ -interactive_expr: Begin Fun WILD ARROW Bytes SEMI With +interactive_expr: Begin Verbatim RBRACKET ## ## Ends in an error in state: 485. ## @@ -937,12 +937,10 @@ interactive_expr: Begin Verbatim With ## ## Ends in an error in state: 464. ## -## bin_op(disj_expr_level,BOOL_OR,conj_expr_level) -> disj_expr_level . BOOL_OR conj_expr_level [ SEMI Or End BOOL_OR ] -## bin_op(disj_expr_level,Or,conj_expr_level) -> disj_expr_level . Or conj_expr_level [ SEMI Or End BOOL_OR ] -## seq_expr -> disj_expr_level . [ SEMI End ] +## sequence -> Begin option(sep_or_term_list(expr,SEMI)) . End [ With Verbatim VBAR Type True Then TIMES String SLASH SEMI RPAR RBRACKET RBRACE PLUS Or Nat NE Mutez Mod MINUS Let LT LPAR LE LBRACKET LBRACE Int In Ident GT GE False End Else EQ EOF Constr CONS COMMA COLON CAT Bytes Begin BOOL_OR BOOL_AND Attr ] ## ## The known suffix of the stack is as follows: -## disj_expr_level +## Begin option(sep_or_term_list(expr,SEMI)) ## ## WARNING: This example involves spurious reductions. ## This implies that, although the LR(1) items shown above provide an @@ -1057,7 +1055,7 @@ interactive_expr: Fun WILD ARROW With ## ## Ends in an error in state: 193. ## -## fun_expr(expr) -> Fun nseq(irrefutable) ARROW . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## fun_expr(expr) -> Fun nseq(irrefutable) ARROW . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Fun nseq(irrefutable) ARROW @@ -1105,7 +1103,7 @@ interactive_expr: Fun With ## ## Ends in an error in state: 191. ## -## fun_expr(expr) -> Fun . nseq(irrefutable) ARROW expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## fun_expr(expr) -> Fun . nseq(irrefutable) ARROW expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Fun @@ -1168,7 +1166,7 @@ interactive_expr: If Verbatim Then Fun WILD ARROW With ## Ends in an error in state: 506. ## ## fun_expr(closed_if) -> Fun nseq(irrefutable) ARROW . closed_if [ Else ] -## fun_expr(expr) -> Fun nseq(irrefutable) ARROW . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## fun_expr(expr) -> Fun nseq(irrefutable) ARROW . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Fun nseq(irrefutable) ARROW @@ -1181,7 +1179,7 @@ interactive_expr: If Verbatim Then Fun With ## Ends in an error in state: 504. ## ## fun_expr(closed_if) -> Fun . nseq(irrefutable) ARROW closed_if [ Else ] -## fun_expr(expr) -> Fun . nseq(irrefutable) ARROW expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## fun_expr(expr) -> Fun . nseq(irrefutable) ARROW expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Fun @@ -1194,7 +1192,7 @@ interactive_expr: If Verbatim Then If Verbatim Then Verbatim Else With ## Ends in an error in state: 511. ## ## if_then_else(closed_if) -> If expr Then closed_if Else . closed_if [ Else ] -## if_then_else(expr) -> If expr Then closed_if Else . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then_else(expr) -> If expr Then closed_if Else . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## If expr Then closed_if Else @@ -1206,9 +1204,9 @@ interactive_expr: If Verbatim Then If Verbatim Then With ## ## Ends in an error in state: 503. ## -## if_then(expr) -> If expr Then . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(expr) -> If expr Then . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## if_then_else(closed_if) -> If expr Then . closed_if Else closed_if [ Else ] -## if_then_else(expr) -> If expr Then . closed_if Else expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then_else(expr) -> If expr Then . closed_if Else expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## If expr Then @@ -1220,9 +1218,9 @@ interactive_expr: If Verbatim Then If Verbatim With ## ## Ends in an error in state: 502. ## -## if_then(expr) -> If expr . Then expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(expr) -> If expr . Then expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## if_then_else(closed_if) -> If expr . Then closed_if Else closed_if [ Else ] -## if_then_else(expr) -> If expr . Then closed_if Else expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then_else(expr) -> If expr . Then closed_if Else expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## If expr @@ -1251,9 +1249,9 @@ interactive_expr: If Verbatim Then If With ## ## Ends in an error in state: 501. ## -## if_then(expr) -> If . expr Then expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(expr) -> If . expr Then expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## if_then_else(closed_if) -> If . expr Then closed_if Else closed_if [ Else ] -## if_then_else(expr) -> If . expr Then closed_if Else expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then_else(expr) -> If . expr Then closed_if Else expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## If @@ -1266,7 +1264,7 @@ interactive_expr: If Verbatim Then Let Rec WILD EQ Bytes Attr Type ## Ends in an error in state: 499. ## ## let_expr(closed_if) -> Let Rec let_binding seq(Attr) . In closed_if [ Else ] -## let_expr(expr) -> Let Rec let_binding seq(Attr) . In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let Rec let_binding seq(Attr) . In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let Rec let_binding seq(Attr) @@ -1286,7 +1284,7 @@ interactive_expr: If Verbatim Then Let Rec WILD EQ Bytes In With ## Ends in an error in state: 500. ## ## let_expr(closed_if) -> Let Rec let_binding seq(Attr) In . closed_if [ Else ] -## let_expr(expr) -> Let Rec let_binding seq(Attr) In . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let Rec let_binding seq(Attr) In . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let Rec let_binding seq(Attr) In @@ -1299,7 +1297,7 @@ interactive_expr: If Verbatim Then Let Rec WILD EQ Bytes With ## Ends in an error in state: 498. ## ## let_expr(closed_if) -> Let Rec let_binding . seq(Attr) In closed_if [ Else ] -## let_expr(expr) -> Let Rec let_binding . seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let Rec let_binding . seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let Rec let_binding @@ -1330,7 +1328,7 @@ interactive_expr: If Verbatim Then Let Rec With ## Ends in an error in state: 497. ## ## let_expr(closed_if) -> Let Rec . let_binding seq(Attr) In closed_if [ Else ] -## let_expr(expr) -> Let Rec . let_binding seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let Rec . let_binding seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let Rec @@ -1343,7 +1341,7 @@ interactive_expr: If Verbatim Then Let WILD EQ Bytes Attr Type ## Ends in an error in state: 515. ## ## let_expr(closed_if) -> Let let_binding seq(Attr) . In closed_if [ Else ] -## let_expr(expr) -> Let let_binding seq(Attr) . In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let let_binding seq(Attr) . In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let let_binding seq(Attr) @@ -1363,7 +1361,7 @@ interactive_expr: If Verbatim Then Let WILD EQ Bytes In With ## Ends in an error in state: 516. ## ## let_expr(closed_if) -> Let let_binding seq(Attr) In . closed_if [ Else ] -## let_expr(expr) -> Let let_binding seq(Attr) In . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let let_binding seq(Attr) In . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let let_binding seq(Attr) In @@ -1376,7 +1374,7 @@ interactive_expr: If Verbatim Then Let WILD EQ Bytes With ## Ends in an error in state: 514. ## ## let_expr(closed_if) -> Let let_binding . seq(Attr) In closed_if [ Else ] -## let_expr(expr) -> Let let_binding . seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let let_binding . seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let let_binding @@ -1408,8 +1406,8 @@ interactive_expr: If Verbatim Then Let With ## ## let_expr(closed_if) -> Let . let_binding seq(Attr) In closed_if [ Else ] ## let_expr(closed_if) -> Let . Rec let_binding seq(Attr) In closed_if [ Else ] -## let_expr(expr) -> Let . let_binding seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## let_expr(expr) -> Let . Rec let_binding seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let . let_binding seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## let_expr(expr) -> Let . Rec let_binding seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let @@ -1421,7 +1419,7 @@ interactive_expr: If Verbatim Then Match Verbatim Type ## ## Ends in an error in state: 492. ## -## match_expr(base_cond) -> Match expr . With option(VBAR) cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## match_expr(base_cond) -> Match expr . With option(VBAR) cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## match_expr(base_if_then_else) -> Match expr . With option(VBAR) cases(base_if_then_else) [ Else ] ## ## The known suffix of the stack is as follows: @@ -1451,7 +1449,7 @@ interactive_expr: If Verbatim Then Match Verbatim With VBAR Begin ## ## Ends in an error in state: 494. ## -## match_expr(base_cond) -> Match expr With option(VBAR) . cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## match_expr(base_cond) -> Match expr With option(VBAR) . cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## match_expr(base_if_then_else) -> Match expr With option(VBAR) . cases(base_if_then_else) [ Else ] ## ## The known suffix of the stack is as follows: @@ -1464,7 +1462,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW Bytes VBAR Wit ## ## Ends in an error in state: 407. ## -## cases(base_cond) -> cases(base_cond) VBAR . case_clause(base_cond) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## cases(base_cond) -> cases(base_cond) VBAR . case_clause(base_cond) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## cases(base_if_then_else) -> cases(base_cond) VBAR . case_clause(base_if_then_else) [ Else ] ## ## The known suffix of the stack is as follows: @@ -1477,7 +1475,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW Fun WILD ARROW ## ## Ends in an error in state: 387. ## -## fun_expr(base_cond) -> Fun nseq(irrefutable) ARROW . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## fun_expr(base_cond) -> Fun nseq(irrefutable) ARROW . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## fun_expr(base_if_then_else) -> Fun nseq(irrefutable) ARROW . base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1490,7 +1488,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW Fun With ## ## Ends in an error in state: 385. ## -## fun_expr(base_cond) -> Fun . nseq(irrefutable) ARROW base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## fun_expr(base_cond) -> Fun . nseq(irrefutable) ARROW base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## fun_expr(base_if_then_else) -> Fun . nseq(irrefutable) ARROW base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1503,7 +1501,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW If Verbatim Th ## ## Ends in an error in state: 384. ## -## if_then_else(base_cond) -> If expr Then closed_if Else . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then_else(base_cond) -> If expr Then closed_if Else . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## if_then_else(base_if_then_else) -> If expr Then closed_if Else . base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1516,8 +1514,8 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW If Verbatim Th ## ## Ends in an error in state: 278. ## -## if_then(base_cond) -> If expr Then . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## if_then_else(base_cond) -> If expr Then . closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(base_cond) -> If expr Then . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## if_then_else(base_cond) -> If expr Then . closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## if_then_else(base_if_then_else) -> If expr Then . closed_if Else base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1530,8 +1528,8 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW If Verbatim Wi ## ## Ends in an error in state: 277. ## -## if_then(base_cond) -> If expr . Then base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## if_then_else(base_cond) -> If expr . Then closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(base_cond) -> If expr . Then base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## if_then_else(base_cond) -> If expr . Then closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## if_then_else(base_if_then_else) -> If expr . Then closed_if Else base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1561,8 +1559,8 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW If With ## ## Ends in an error in state: 276. ## -## if_then(base_cond) -> If . expr Then base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## if_then_else(base_cond) -> If . expr Then closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(base_cond) -> If . expr Then base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## if_then_else(base_cond) -> If . expr Then closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## if_then_else(base_if_then_else) -> If . expr Then closed_if Else base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1575,7 +1573,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW Let Rec WILD E ## ## Ends in an error in state: 274. ## -## let_expr(base_cond) -> Let Rec let_binding seq(Attr) . In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let Rec let_binding seq(Attr) . In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(base_if_then_else) -> Let Rec let_binding seq(Attr) . In base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1595,7 +1593,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW Let Rec WILD E ## ## Ends in an error in state: 275. ## -## let_expr(base_cond) -> Let Rec let_binding seq(Attr) In . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let Rec let_binding seq(Attr) In . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(base_if_then_else) -> Let Rec let_binding seq(Attr) In . base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1608,7 +1606,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW Let Rec WILD E ## ## Ends in an error in state: 273. ## -## let_expr(base_cond) -> Let Rec let_binding . seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let Rec let_binding . seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(base_if_then_else) -> Let Rec let_binding . seq(Attr) In base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1639,7 +1637,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW Let Rec With ## ## Ends in an error in state: 272. ## -## let_expr(base_cond) -> Let Rec . let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let Rec . let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(base_if_then_else) -> Let Rec . let_binding seq(Attr) In base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1652,7 +1650,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW Let WILD EQ By ## ## Ends in an error in state: 399. ## -## let_expr(base_cond) -> Let let_binding seq(Attr) . In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let let_binding seq(Attr) . In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(base_if_then_else) -> Let let_binding seq(Attr) . In base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1672,7 +1670,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW Let WILD EQ By ## ## Ends in an error in state: 400. ## -## let_expr(base_cond) -> Let let_binding seq(Attr) In . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let let_binding seq(Attr) In . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(base_if_then_else) -> Let let_binding seq(Attr) In . base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1685,7 +1683,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW Let WILD EQ By ## ## Ends in an error in state: 398. ## -## let_expr(base_cond) -> Let let_binding . seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let let_binding . seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(base_if_then_else) -> Let let_binding . seq(Attr) In base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1716,8 +1714,8 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW Let With ## ## Ends in an error in state: 271. ## -## let_expr(base_cond) -> Let . let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## let_expr(base_cond) -> Let . Rec let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let . let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## let_expr(base_cond) -> Let . Rec let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(base_if_then_else) -> Let . let_binding seq(Attr) In base_if_then_else [ Else ] ## let_expr(base_if_then_else) -> Let . Rec let_binding seq(Attr) In base_if_then_else [ Else ] ## @@ -1761,7 +1759,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD ARROW With ## ## Ends in an error in state: 270. ## -## case_clause(base_cond) -> pattern ARROW . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## case_clause(base_cond) -> pattern ARROW . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## case_clause(base_if_then_else) -> pattern ARROW . base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1774,7 +1772,7 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD CONS Bytes SEMI ## ## Ends in an error in state: 269. ## -## case_clause(base_cond) -> pattern . ARROW base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## case_clause(base_cond) -> pattern . ARROW base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## case_clause(base_if_then_else) -> pattern . ARROW base_if_then_else [ Else ] ## ## The known suffix of the stack is as follows: @@ -1785,16 +1783,12 @@ interactive_expr: If Verbatim Then Match Verbatim With WILD CONS Bytes SEMI ## accurate view of the past (what has been recognized so far), they ## may provide an INCOMPLETE view of the future (what was expected next). ## In state 97, spurious reduction of production tail -> sub_pattern -## In state 249, spurious reduction of production pattern -> sub_pattern CONS tail ## - - - interactive_expr: If Verbatim Then Match Verbatim With With ## ## Ends in an error in state: 493. ## -## match_expr(base_cond) -> Match expr With . option(VBAR) cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## match_expr(base_cond) -> Match expr With . option(VBAR) cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## match_expr(base_if_then_else) -> Match expr With . option(VBAR) cases(base_if_then_else) [ Else ] ## ## The known suffix of the stack is as follows: @@ -1807,7 +1801,7 @@ interactive_expr: If Verbatim Then Match With ## ## Ends in an error in state: 491. ## -## match_expr(base_cond) -> Match . expr With option(VBAR) cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## match_expr(base_cond) -> Match . expr With option(VBAR) cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## match_expr(base_if_then_else) -> Match . expr With option(VBAR) cases(base_if_then_else) [ Else ] ## ## The known suffix of the stack is as follows: @@ -1821,7 +1815,7 @@ interactive_expr: If Verbatim Then Verbatim COMMA Bytes VBAR ## Ends in an error in state: 507. ## ## base_expr(closed_if) -> tuple_expr . [ Else ] -## base_expr(expr) -> tuple_expr . [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## base_expr(expr) -> tuple_expr . [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## tuple_expr @@ -1850,7 +1844,7 @@ interactive_expr: If Verbatim Then Verbatim Else With ## ## Ends in an error in state: 519. ## -## if_then_else(expr) -> If expr Then closed_if Else . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then_else(expr) -> If expr Then closed_if Else . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## If expr Then closed_if Else @@ -1863,10 +1857,10 @@ interactive_expr: If Verbatim Then Verbatim VBAR ## Ends in an error in state: 508. ## ## base_expr(closed_if) -> disj_expr_level . [ Else ] -## base_expr(expr) -> disj_expr_level . [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## bin_op(disj_expr_level,BOOL_OR,conj_expr_level) -> disj_expr_level . BOOL_OR conj_expr_level [ With Type Then SEMI RPAR RBRACKET RBRACE Or Let In Else EOF COMMA COLON BOOL_OR Attr ] -## bin_op(disj_expr_level,Or,conj_expr_level) -> disj_expr_level . Or conj_expr_level [ With Type Then SEMI RPAR RBRACKET RBRACE Or Let In Else EOF COMMA COLON BOOL_OR Attr ] -## tuple(disj_expr_level) -> disj_expr_level . COMMA nsepseq(disj_expr_level,COMMA) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In Else EOF COLON Attr ] +## base_expr(expr) -> disj_expr_level . [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## bin_op(disj_expr_level,BOOL_OR,conj_expr_level) -> disj_expr_level . BOOL_OR conj_expr_level [ With Type Then SEMI RPAR RBRACKET RBRACE Or Let In End Else EOF COMMA COLON BOOL_OR Attr ] +## bin_op(disj_expr_level,Or,conj_expr_level) -> disj_expr_level . Or conj_expr_level [ With Type Then SEMI RPAR RBRACKET RBRACE Or Let In End Else EOF COMMA COLON BOOL_OR Attr ] +## tuple(disj_expr_level) -> disj_expr_level . COMMA nsepseq(disj_expr_level,COMMA) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End Else EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## disj_expr_level @@ -1892,8 +1886,8 @@ interactive_expr: If Verbatim Then With ## ## Ends in an error in state: 490. ## -## if_then(expr) -> If expr Then . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## if_then_else(expr) -> If expr Then . closed_if Else expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(expr) -> If expr Then . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## if_then_else(expr) -> If expr Then . closed_if Else expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## If expr Then @@ -1905,8 +1899,8 @@ interactive_expr: If Verbatim With ## ## Ends in an error in state: 489. ## -## if_then(expr) -> If expr . Then expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## if_then_else(expr) -> If expr . Then closed_if Else expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(expr) -> If expr . Then expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## if_then_else(expr) -> If expr . Then closed_if Else expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## If expr @@ -1935,8 +1929,8 @@ interactive_expr: If With ## ## Ends in an error in state: 182. ## -## if_then(expr) -> If . expr Then expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## if_then_else(expr) -> If . expr Then closed_if Else expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(expr) -> If . expr Then expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## if_then_else(expr) -> If . expr Then closed_if Else expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## If @@ -2002,7 +1996,7 @@ interactive_expr: LBRACE Ident DOT Ident Verbatim interactive_expr: LBRACE Ident EQ Bytes SEMI Ident EQ Bytes SEMI With ## -## Ends in an error in state: 552. +## Ends in an error in state: 480. ## ## nsepseq(field_assignment,SEMI) -> field_assignment SEMI . nsepseq(field_assignment,SEMI) [ RBRACE ] ## seq(__anonymous_0(field_assignment,SEMI)) -> field_assignment SEMI . seq(__anonymous_0(field_assignment,SEMI)) [ RBRACE ] @@ -2015,7 +2009,7 @@ interactive_expr: LBRACE Ident EQ Bytes SEMI Ident EQ Bytes SEMI With interactive_expr: LBRACE Ident EQ Bytes SEMI Ident EQ Bytes With ## -## Ends in an error in state: 551. +## Ends in an error in state: 479. ## ## nsepseq(field_assignment,SEMI) -> field_assignment . [ RBRACE ] ## nsepseq(field_assignment,SEMI) -> field_assignment . SEMI nsepseq(field_assignment,SEMI) [ RBRACE ] @@ -2047,7 +2041,7 @@ interactive_expr: LBRACE Ident EQ Bytes SEMI Ident EQ Bytes With interactive_expr: LBRACE Ident EQ Bytes SEMI Ident With ## -## Ends in an error in state: 548. +## Ends in an error in state: 476. ## ## field_assignment -> Ident . EQ expr [ SEMI RBRACE ] ## @@ -2059,7 +2053,7 @@ interactive_expr: LBRACE Ident EQ Bytes SEMI Ident With interactive_expr: LBRACE Ident EQ Bytes SEMI With ## -## Ends in an error in state: 547. +## Ends in an error in state: 475. ## ## nsepseq(field_assignment,SEMI) -> field_assignment SEMI . nsepseq(field_assignment,SEMI) [ RBRACE ] ## nseq(__anonymous_0(field_assignment,SEMI)) -> field_assignment SEMI . seq(__anonymous_0(field_assignment,SEMI)) [ RBRACE ] @@ -2072,7 +2066,7 @@ interactive_expr: LBRACE Ident EQ Bytes SEMI With interactive_expr: LBRACE Ident EQ Bytes With ## -## Ends in an error in state: 546. +## Ends in an error in state: 474. ## ## nsepseq(field_assignment,SEMI) -> field_assignment . [ RBRACE ] ## nsepseq(field_assignment,SEMI) -> field_assignment . SEMI nsepseq(field_assignment,SEMI) [ RBRACE ] @@ -2130,7 +2124,7 @@ interactive_expr: LBRACE Ident WILD interactive_expr: LBRACE Ident With Ident DOT Ident EQ Bytes SEMI Ident DOT Ident EQ Bytes SEMI With ## -## Ends in an error in state: 542. +## Ends in an error in state: 470. ## ## nsepseq(field_path_assignment,SEMI) -> field_path_assignment SEMI . nsepseq(field_path_assignment,SEMI) [ RBRACE ] ## seq(__anonymous_0(field_path_assignment,SEMI)) -> field_path_assignment SEMI . seq(__anonymous_0(field_path_assignment,SEMI)) [ RBRACE ] @@ -2143,7 +2137,7 @@ interactive_expr: LBRACE Ident With Ident DOT Ident EQ Bytes SEMI Ident DOT Iden interactive_expr: LBRACE Ident With Ident DOT Ident EQ Bytes SEMI Ident DOT Ident EQ Bytes With ## -## Ends in an error in state: 541. +## Ends in an error in state: 469. ## ## nsepseq(field_path_assignment,SEMI) -> field_path_assignment . [ RBRACE ] ## nsepseq(field_path_assignment,SEMI) -> field_path_assignment . SEMI nsepseq(field_path_assignment,SEMI) [ RBRACE ] @@ -2175,27 +2169,25 @@ interactive_expr: LBRACE Ident With Ident DOT Ident EQ Bytes SEMI Ident DOT Iden interactive_expr: LBRACE Ident With Ident DOT Ident EQ Bytes SEMI With ## -## Ends in an error in state: 538. +## Ends in an error in state: 180. ## -## nsepseq(field_path_assignment,SEMI) -> field_path_assignment SEMI . nsepseq(field_path_assignment,SEMI) [ RBRACE ] -## nseq(__anonymous_0(field_path_assignment,SEMI)) -> field_path_assignment SEMI . seq(__anonymous_0(field_path_assignment,SEMI)) [ RBRACE ] +## record_expr -> LBRACE . sep_or_term_list(field_assignment,SEMI) RBRACE [ With Verbatim VBAR Type True Then TIMES String SLASH SEMI RPAR RBRACKET RBRACE PLUS Or Nat NE Mutez Mod MINUS Let LT LPAR LE LBRACKET LBRACE Int In Ident GT GE False End Else EQ EOF Constr CONS COMMA COLON CAT Bytes Begin BOOL_OR BOOL_AND Attr ] +## update_record -> LBRACE . path With sep_or_term_list(field_path_assignment,SEMI) RBRACE [ With Verbatim VBAR Type True Then TIMES String SLASH SEMI RPAR RBRACKET RBRACE PLUS Or Nat NE Mutez Mod MINUS Let LT LPAR LE LBRACKET LBRACE Int In Ident GT GE False End Else EQ EOF Constr CONS COMMA COLON CAT Bytes Begin BOOL_OR BOOL_AND Attr ] ## ## The known suffix of the stack is as follows: -## field_path_assignment SEMI +## LBRACE ## interactive_expr: LBRACE Ident With Ident DOT Ident EQ Bytes With ## -## Ends in an error in state: 537. +## Ends in an error in state: 485. ## -## nsepseq(field_path_assignment,SEMI) -> field_path_assignment . [ RBRACE ] -## nsepseq(field_path_assignment,SEMI) -> field_path_assignment . SEMI nsepseq(field_path_assignment,SEMI) [ RBRACE ] -## nseq(__anonymous_0(field_path_assignment,SEMI)) -> field_path_assignment . SEMI seq(__anonymous_0(field_path_assignment,SEMI)) [ RBRACE ] +## code_insert -> LBRACKET PERCENT Constr expr . RBRACKET [ With Verbatim VBAR Type True Then TIMES String SLASH SEMI RPAR RBRACKET RBRACE PLUS Or Nat NE Mutez Mod MINUS Let LT LPAR LE LBRACKET LBRACE Int In Ident GT GE False End Else EQ EOF Constr CONS COMMA COLON CAT Bytes Begin BOOL_OR BOOL_AND Attr ] ## ## The known suffix of the stack is as follows: -## field_path_assignment +## LBRACKET PERCENT Constr expr ## ## WARNING: This example involves spurious reductions. ## This implies that, although the LR(1) items shown above provide an @@ -2250,7 +2242,7 @@ interactive_expr: LBRACE Ident With Ident DOT Ident With -interactive_expr: LBRACE Ident With Ident With +interactive_expr: LBRACKET PERCENT With ## ## Ends in an error in state: 529. ## @@ -2258,12 +2250,12 @@ interactive_expr: LBRACE Ident With Ident With ## projection -> Ident . DOT nsepseq(selection,DOT) [ EQ ] ## ## The known suffix of the stack is as follows: -## Ident +## LBRACKET PERCENT ## -interactive_expr: LBRACE Ident With With +interactive_expr: LBRACKET Verbatim End ## ## Ends in an error in state: 528. ## @@ -2290,10 +2282,10 @@ interactive_expr: LBRACE With interactive_expr: LBRACKET Verbatim SEMI Verbatim SEMI With ## -## Ends in an error in state: 567. +## Ends in an error in state: 254. ## -## nsepseq(expr,SEMI) -> expr SEMI . nsepseq(expr,SEMI) [ RBRACKET ] -## seq(__anonymous_0(expr,SEMI)) -> expr SEMI . seq(__anonymous_0(expr,SEMI)) [ RBRACKET ] +## nsepseq(expr,SEMI) -> expr SEMI . nsepseq(expr,SEMI) [ RBRACKET End ] +## seq(__anonymous_0(expr,SEMI)) -> expr SEMI . seq(__anonymous_0(expr,SEMI)) [ RBRACKET End ] ## ## The known suffix of the stack is as follows: ## expr SEMI @@ -2303,11 +2295,11 @@ interactive_expr: LBRACKET Verbatim SEMI Verbatim SEMI With interactive_expr: LBRACKET Verbatim SEMI Verbatim With ## -## Ends in an error in state: 566. +## Ends in an error in state: 253. ## -## nsepseq(expr,SEMI) -> expr . [ RBRACKET ] -## nsepseq(expr,SEMI) -> expr . SEMI nsepseq(expr,SEMI) [ RBRACKET ] -## seq(__anonymous_0(expr,SEMI)) -> expr . SEMI seq(__anonymous_0(expr,SEMI)) [ RBRACKET ] +## nsepseq(expr,SEMI) -> expr . [ RBRACKET End ] +## nsepseq(expr,SEMI) -> expr . SEMI nsepseq(expr,SEMI) [ RBRACKET End ] +## seq(__anonymous_0(expr,SEMI)) -> expr . SEMI seq(__anonymous_0(expr,SEMI)) [ RBRACKET End ] ## ## The known suffix of the stack is as follows: ## expr @@ -2334,10 +2326,10 @@ interactive_expr: LBRACKET Verbatim SEMI Verbatim With interactive_expr: LBRACKET Verbatim SEMI With ## -## Ends in an error in state: 563. +## Ends in an error in state: 250. ## -## nsepseq(expr,SEMI) -> expr SEMI . nsepseq(expr,SEMI) [ RBRACKET ] -## nseq(__anonymous_0(expr,SEMI)) -> expr SEMI . seq(__anonymous_0(expr,SEMI)) [ RBRACKET ] +## nsepseq(expr,SEMI) -> expr SEMI . nsepseq(expr,SEMI) [ RBRACKET End ] +## nseq(__anonymous_0(expr,SEMI)) -> expr SEMI . seq(__anonymous_0(expr,SEMI)) [ RBRACKET End ] ## ## The known suffix of the stack is as follows: ## expr SEMI @@ -2347,11 +2339,11 @@ interactive_expr: LBRACKET Verbatim SEMI With interactive_expr: LBRACKET Verbatim With ## -## Ends in an error in state: 562. +## Ends in an error in state: 249. ## -## nsepseq(expr,SEMI) -> expr . [ RBRACKET ] -## nsepseq(expr,SEMI) -> expr . SEMI nsepseq(expr,SEMI) [ RBRACKET ] -## nseq(__anonymous_0(expr,SEMI)) -> expr . SEMI seq(__anonymous_0(expr,SEMI)) [ RBRACKET ] +## nsepseq(expr,SEMI) -> expr . [ RBRACKET End ] +## nsepseq(expr,SEMI) -> expr . SEMI nsepseq(expr,SEMI) [ RBRACKET End ] +## nseq(__anonymous_0(expr,SEMI)) -> expr . SEMI seq(__anonymous_0(expr,SEMI)) [ RBRACKET End ] ## ## The known suffix of the stack is as follows: ## expr @@ -2411,7 +2403,7 @@ interactive_expr: LPAR Verbatim COLON Ident VBAR interactive_expr: LPAR Verbatim COLON With ## -## Ends in an error in state: 579. +## Ends in an error in state: 517. ## ## annot_expr -> expr COLON . type_expr [ RPAR ] ## @@ -2423,7 +2415,7 @@ interactive_expr: LPAR Verbatim COLON With interactive_expr: LPAR Verbatim With ## -## Ends in an error in state: 577. +## Ends in an error in state: 515. ## ## annot_expr -> expr . COLON type_expr [ RPAR ] ## par(expr) -> LPAR expr . RPAR [ With Verbatim VBAR Type True Then TIMES String SLASH SEMI RPAR RBRACKET RBRACE PLUS Or Nat NE Mutez Mod MINUS Let LT LPAR LE LBRACKET LBRACE Int In Ident GT GE False End Else EQ EOF Constr CONS COMMA COLON CAT Bytes Begin BOOL_OR BOOL_AND Attr ] @@ -2469,7 +2461,7 @@ interactive_expr: Let Rec WILD EQ Bytes Attr Type ## ## Ends in an error in state: 176. ## -## let_expr(expr) -> Let Rec let_binding seq(Attr) . In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let Rec let_binding seq(Attr) . In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let Rec let_binding seq(Attr) @@ -2488,7 +2480,7 @@ interactive_expr: Let Rec WILD EQ Bytes In With ## ## Ends in an error in state: 177. ## -## let_expr(expr) -> Let Rec let_binding seq(Attr) In . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let Rec let_binding seq(Attr) In . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let Rec let_binding seq(Attr) In @@ -2500,7 +2492,7 @@ interactive_expr: Let Rec WILD EQ Bytes With ## ## Ends in an error in state: 173. ## -## let_expr(expr) -> Let Rec let_binding . seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let Rec let_binding . seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let Rec let_binding @@ -2530,7 +2522,7 @@ interactive_expr: Let Rec With ## ## Ends in an error in state: 172. ## -## let_expr(expr) -> Let Rec . let_binding seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let Rec . let_binding seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let Rec @@ -2540,9 +2532,9 @@ interactive_expr: Let Rec With interactive_expr: Let WILD EQ Bytes Attr Type ## -## Ends in an error in state: 555. +## Ends in an error in state: 483. ## -## let_expr(expr) -> Let let_binding seq(Attr) . In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let let_binding seq(Attr) . In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let let_binding seq(Attr) @@ -2559,9 +2551,9 @@ interactive_expr: Let WILD EQ Bytes Attr Type interactive_expr: Let WILD EQ Bytes In With ## -## Ends in an error in state: 556. +## Ends in an error in state: 484. ## -## let_expr(expr) -> Let let_binding seq(Attr) In . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let let_binding seq(Attr) In . expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let let_binding seq(Attr) In @@ -2571,9 +2563,9 @@ interactive_expr: Let WILD EQ Bytes In With interactive_expr: Let WILD EQ Bytes With ## -## Ends in an error in state: 554. +## Ends in an error in state: 482. ## -## let_expr(expr) -> Let let_binding . seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let let_binding . seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let let_binding @@ -2603,8 +2595,8 @@ interactive_expr: Let With ## ## Ends in an error in state: 171. ## -## let_expr(expr) -> Let . let_binding seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## let_expr(expr) -> Let . Rec let_binding seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(expr) -> Let . let_binding seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## let_expr(expr) -> Let . Rec let_binding seq(Attr) In expr [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let @@ -2626,9 +2618,9 @@ interactive_expr: MINUS With interactive_expr: Match Verbatim Type ## -## Ends in an error in state: 570. +## Ends in an error in state: 490. ## -## match_expr(base_cond) -> Match expr . With option(VBAR) cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## match_expr(base_cond) -> Match expr . With option(VBAR) cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Match expr @@ -2668,9 +2660,9 @@ interactive_expr: Match Verbatim With LPAR Bytes RPAR With interactive_expr: Match Verbatim With VBAR Begin ## -## Ends in an error in state: 572. +## Ends in an error in state: 492. ## -## match_expr(base_cond) -> Match expr With option(VBAR) . cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## match_expr(base_cond) -> Match expr With option(VBAR) . cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Match expr With option(VBAR) @@ -2680,9 +2672,9 @@ interactive_expr: Match Verbatim With VBAR Begin interactive_expr: Match Verbatim With WILD ARROW Bytes VBAR With ## -## Ends in an error in state: 576. +## Ends in an error in state: 514. ## -## cases(base_cond) -> cases(base_cond) VBAR . case_clause(base_cond) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## cases(base_cond) -> cases(base_cond) VBAR . case_clause(base_cond) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## cases(base_cond) VBAR @@ -2694,7 +2686,7 @@ interactive_expr: Match Verbatim With WILD ARROW Fun WILD ARROW With ## ## Ends in an error in state: 416. ## -## fun_expr(base_cond) -> Fun nseq(irrefutable) ARROW . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## fun_expr(base_cond) -> Fun nseq(irrefutable) ARROW . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Fun nseq(irrefutable) ARROW @@ -2706,7 +2698,7 @@ interactive_expr: Match Verbatim With WILD ARROW Fun With ## ## Ends in an error in state: 414. ## -## fun_expr(base_cond) -> Fun . nseq(irrefutable) ARROW base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## fun_expr(base_cond) -> Fun . nseq(irrefutable) ARROW base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Fun @@ -2718,7 +2710,7 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Fun WILD ARROW ## ## Ends in an error in state: 289. ## -## fun_expr(base_cond) -> Fun nseq(irrefutable) ARROW . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## fun_expr(base_cond) -> Fun nseq(irrefutable) ARROW . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## fun_expr(closed_if) -> Fun nseq(irrefutable) ARROW . closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2731,7 +2723,7 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Fun With ## ## Ends in an error in state: 287. ## -## fun_expr(base_cond) -> Fun . nseq(irrefutable) ARROW base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## fun_expr(base_cond) -> Fun . nseq(irrefutable) ARROW base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## fun_expr(closed_if) -> Fun . nseq(irrefutable) ARROW closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2744,7 +2736,7 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then If Verbatim Th ## ## Ends in an error in state: 364. ## -## if_then_else(base_cond) -> If expr Then closed_if Else . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then_else(base_cond) -> If expr Then closed_if Else . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## if_then_else(closed_if) -> If expr Then closed_if Else . closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2757,8 +2749,8 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then If Verbatim Th ## ## Ends in an error in state: 286. ## -## if_then(base_cond) -> If expr Then . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## if_then_else(base_cond) -> If expr Then . closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(base_cond) -> If expr Then . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## if_then_else(base_cond) -> If expr Then . closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## if_then_else(closed_if) -> If expr Then . closed_if Else closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2771,8 +2763,8 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then If Verbatim Wi ## ## Ends in an error in state: 285. ## -## if_then(base_cond) -> If expr . Then base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## if_then_else(base_cond) -> If expr . Then closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(base_cond) -> If expr . Then base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## if_then_else(base_cond) -> If expr . Then closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## if_then_else(closed_if) -> If expr . Then closed_if Else closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2802,8 +2794,8 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then If With ## ## Ends in an error in state: 284. ## -## if_then(base_cond) -> If . expr Then base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## if_then_else(base_cond) -> If . expr Then closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(base_cond) -> If . expr Then base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## if_then_else(base_cond) -> If . expr Then closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## if_then_else(closed_if) -> If . expr Then closed_if Else closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2816,7 +2808,7 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Let Rec WILD E ## ## Ends in an error in state: 282. ## -## let_expr(base_cond) -> Let Rec let_binding seq(Attr) . In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let Rec let_binding seq(Attr) . In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(closed_if) -> Let Rec let_binding seq(Attr) . In closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2836,7 +2828,7 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Let Rec WILD E ## ## Ends in an error in state: 283. ## -## let_expr(base_cond) -> Let Rec let_binding seq(Attr) In . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let Rec let_binding seq(Attr) In . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(closed_if) -> Let Rec let_binding seq(Attr) In . closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2849,7 +2841,7 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Let Rec WILD E ## ## Ends in an error in state: 281. ## -## let_expr(base_cond) -> Let Rec let_binding . seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let Rec let_binding . seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(closed_if) -> Let Rec let_binding . seq(Attr) In closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2880,7 +2872,7 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Let Rec With ## ## Ends in an error in state: 280. ## -## let_expr(base_cond) -> Let Rec . let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let Rec . let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(closed_if) -> Let Rec . let_binding seq(Attr) In closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2893,7 +2885,7 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Let WILD EQ By ## ## Ends in an error in state: 379. ## -## let_expr(base_cond) -> Let let_binding seq(Attr) . In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let let_binding seq(Attr) . In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(closed_if) -> Let let_binding seq(Attr) . In closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2913,7 +2905,7 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Let WILD EQ By ## ## Ends in an error in state: 380. ## -## let_expr(base_cond) -> Let let_binding seq(Attr) In . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let let_binding seq(Attr) In . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(closed_if) -> Let let_binding seq(Attr) In . closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2926,7 +2918,7 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Let WILD EQ By ## ## Ends in an error in state: 378. ## -## let_expr(base_cond) -> Let let_binding . seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let let_binding . seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(closed_if) -> Let let_binding . seq(Attr) In closed_if [ Else ] ## ## The known suffix of the stack is as follows: @@ -2957,8 +2949,8 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Let With ## ## Ends in an error in state: 279. ## -## let_expr(base_cond) -> Let . let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## let_expr(base_cond) -> Let . Rec let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let . let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## let_expr(base_cond) -> Let . Rec let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## let_expr(closed_if) -> Let . let_binding seq(Attr) In closed_if [ Else ] ## let_expr(closed_if) -> Let . Rec let_binding seq(Attr) In closed_if [ Else ] ## @@ -2972,10 +2964,27 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Verbatim Else ## ## Ends in an error in state: 413. ## -## if_then_else(base_cond) -> If expr Then closed_if Else . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## match_expr(base_if_then_else) -> Match expr . With option(VBAR) cases(base_if_then_else) [ Else ] ## ## The known suffix of the stack is as follows: -## If expr Then closed_if Else +## Match expr +## +## WARNING: This example involves spurious reductions. +## This implies that, although the LR(1) items shown above provide an +## accurate view of the past (what has been recognized so far), they +## may provide an INCOMPLETE view of the future (what was expected next). +## In state 231, spurious reduction of production call_expr_level -> core_expr +## In state 238, spurious reduction of production unary_expr_level -> call_expr_level +## In state 220, spurious reduction of production mult_expr_level -> unary_expr_level +## In state 228, spurious reduction of production add_expr_level -> mult_expr_level +## In state 268, spurious reduction of production cons_expr_level -> add_expr_level +## In state 258, spurious reduction of production cat_expr_level -> cons_expr_level +## In state 290, spurious reduction of production comp_expr_level -> cat_expr_level +## In state 297, spurious reduction of production conj_expr_level -> comp_expr_level +## In state 304, spurious reduction of production disj_expr_level -> conj_expr_level +## In state 256, spurious reduction of production base_expr(expr) -> disj_expr_level +## In state 310, spurious reduction of production base_cond__open(expr) -> base_expr(expr) +## In state 311, spurious reduction of production expr -> base_cond__open(expr) ## @@ -2984,14 +2993,23 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Verbatim End ## ## Ends in an error in state: 299. ## -## base_expr(base_cond) -> disj_expr_level . [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## base_expr(closed_if) -> disj_expr_level . [ Else ] -## bin_op(disj_expr_level,BOOL_OR,conj_expr_level) -> disj_expr_level . BOOL_OR conj_expr_level [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Or Let In Else EOF COMMA COLON BOOL_OR Attr ] -## bin_op(disj_expr_level,Or,conj_expr_level) -> disj_expr_level . Or conj_expr_level [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Or Let In Else EOF COMMA COLON BOOL_OR Attr ] -## tuple(disj_expr_level) -> disj_expr_level . COMMA nsepseq(disj_expr_level,COMMA) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In Else EOF COLON Attr ] +## match_expr(base_if_then_else) -> Match expr With option(VBAR) . cases(base_if_then_else) [ Else ] ## ## The known suffix of the stack is as follows: -## disj_expr_level +## Match expr With option(VBAR) +## + + + +interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then Match Verbatim With WILD ARROW Bytes With +## +## Ends in an error in state: 350. +## +## cases(base_cond) -> cases(base_cond) . VBAR case_clause(base_cond) [ VBAR ] +## cases(base_if_then_else) -> cases(base_cond) . VBAR case_clause(base_if_then_else) [ Else ] +## +## The known suffix of the stack is as follows: +## cases(base_cond) ## ## WARNING: This example involves spurious reductions. ## This implies that, although the LR(1) items shown above provide an @@ -3014,8 +3032,8 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim Then With ## ## Ends in an error in state: 264. ## -## if_then(base_cond) -> If expr Then . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## if_then_else(base_cond) -> If expr Then . closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(base_cond) -> If expr Then . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## if_then_else(base_cond) -> If expr Then . closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## If expr Then @@ -3027,8 +3045,8 @@ interactive_expr: Match Verbatim With WILD ARROW If Verbatim With ## ## Ends in an error in state: 263. ## -## if_then(base_cond) -> If expr . Then base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## if_then_else(base_cond) -> If expr . Then closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(base_cond) -> If expr . Then base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## if_then_else(base_cond) -> If expr . Then closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## If expr @@ -3057,8 +3075,8 @@ interactive_expr: Match Verbatim With WILD ARROW If With ## ## Ends in an error in state: 262. ## -## if_then(base_cond) -> If . expr Then base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## if_then_else(base_cond) -> If . expr Then closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## if_then(base_cond) -> If . expr Then base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## if_then_else(base_cond) -> If . expr Then closed_if Else base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## If @@ -3070,7 +3088,7 @@ interactive_expr: Match Verbatim With WILD ARROW Let Rec WILD EQ Bytes Attr Type ## ## Ends in an error in state: 260. ## -## let_expr(base_cond) -> Let Rec let_binding seq(Attr) . In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let Rec let_binding seq(Attr) . In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let Rec let_binding seq(Attr) @@ -3089,7 +3107,7 @@ interactive_expr: Match Verbatim With WILD ARROW Let Rec WILD EQ Bytes In With ## ## Ends in an error in state: 261. ## -## let_expr(base_cond) -> Let Rec let_binding seq(Attr) In . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let Rec let_binding seq(Attr) In . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let Rec let_binding seq(Attr) In @@ -3101,7 +3119,7 @@ interactive_expr: Match Verbatim With WILD ARROW Let Rec WILD EQ Bytes With ## ## Ends in an error in state: 259. ## -## let_expr(base_cond) -> Let Rec let_binding . seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let Rec let_binding . seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let Rec let_binding @@ -3131,7 +3149,7 @@ interactive_expr: Match Verbatim With WILD ARROW Let Rec With ## ## Ends in an error in state: 258. ## -## let_expr(base_cond) -> Let Rec . let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let Rec . let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let Rec @@ -3143,7 +3161,7 @@ interactive_expr: Match Verbatim With WILD ARROW Let WILD EQ Bytes Attr Type ## ## Ends in an error in state: 420. ## -## let_expr(base_cond) -> Let let_binding seq(Attr) . In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let let_binding seq(Attr) . In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let let_binding seq(Attr) @@ -3162,7 +3180,7 @@ interactive_expr: Match Verbatim With WILD ARROW Let WILD EQ Bytes In With ## ## Ends in an error in state: 421. ## -## let_expr(base_cond) -> Let let_binding seq(Attr) In . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let let_binding seq(Attr) In . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let let_binding seq(Attr) In @@ -3174,7 +3192,7 @@ interactive_expr: Match Verbatim With WILD ARROW Let WILD EQ Bytes With ## ## Ends in an error in state: 419. ## -## let_expr(base_cond) -> Let let_binding . seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let let_binding . seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let let_binding @@ -3204,8 +3222,8 @@ interactive_expr: Match Verbatim With WILD ARROW Let With ## ## Ends in an error in state: 257. ## -## let_expr(base_cond) -> Let . let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## let_expr(base_cond) -> Let . Rec let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## let_expr(base_cond) -> Let . let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## let_expr(base_cond) -> Let . Rec let_binding seq(Attr) In base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Let @@ -3215,10 +3233,10 @@ interactive_expr: Match Verbatim With WILD ARROW Let With interactive_expr: Match Verbatim With WILD ARROW Verbatim COMMA Bytes Else ## -## Ends in an error in state: 575. +## Ends in an error in state: 513. ## -## cases(base_cond) -> cases(base_cond) . VBAR case_clause(base_cond) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## match_expr(base_cond) -> Match expr With option(VBAR) cases(base_cond) . [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## cases(base_cond) -> cases(base_cond) . VBAR case_clause(base_cond) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## match_expr(base_cond) -> Match expr With option(VBAR) cases(base_cond) . [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Match expr With option(VBAR) cases(base_cond) @@ -3252,10 +3270,10 @@ interactive_expr: Match Verbatim With WILD ARROW Verbatim End ## ## Ends in an error in state: 418. ## -## base_expr(base_cond) -> disj_expr_level . [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] -## bin_op(disj_expr_level,BOOL_OR,conj_expr_level) -> disj_expr_level . BOOL_OR conj_expr_level [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Or Let In EOF COMMA COLON BOOL_OR Attr ] -## bin_op(disj_expr_level,Or,conj_expr_level) -> disj_expr_level . Or conj_expr_level [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Or Let In EOF COMMA COLON BOOL_OR Attr ] -## tuple(disj_expr_level) -> disj_expr_level . COMMA nsepseq(disj_expr_level,COMMA) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## base_expr(base_cond) -> disj_expr_level . [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] +## bin_op(disj_expr_level,BOOL_OR,conj_expr_level) -> disj_expr_level . BOOL_OR conj_expr_level [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Or Let In End EOF COMMA COLON BOOL_OR Attr ] +## bin_op(disj_expr_level,Or,conj_expr_level) -> disj_expr_level . Or conj_expr_level [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Or Let In End EOF COMMA COLON BOOL_OR Attr ] +## tuple(disj_expr_level) -> disj_expr_level . COMMA nsepseq(disj_expr_level,COMMA) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## disj_expr_level @@ -3279,9 +3297,9 @@ interactive_expr: Match Verbatim With WILD ARROW Verbatim End interactive_expr: Match Verbatim With WILD ARROW With ## -## Ends in an error in state: 574. +## Ends in an error in state: 494. ## -## case_clause(base_cond) -> pattern ARROW . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## case_clause(base_cond) -> pattern ARROW . base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## pattern ARROW @@ -3328,9 +3346,9 @@ interactive_expr: Match Verbatim With WILD COMMA With interactive_expr: Match Verbatim With WILD CONS Bytes SEMI ## -## Ends in an error in state: 573. +## Ends in an error in state: 493. ## -## case_clause(base_cond) -> pattern . ARROW base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## case_clause(base_cond) -> pattern . ARROW base_cond [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## pattern @@ -3372,9 +3390,9 @@ interactive_expr: Match Verbatim With WILD With interactive_expr: Match Verbatim With With ## -## Ends in an error in state: 571. +## Ends in an error in state: 491. ## -## match_expr(base_cond) -> Match expr With . option(VBAR) cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## match_expr(base_cond) -> Match expr With . option(VBAR) cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Match expr With @@ -3386,7 +3404,7 @@ interactive_expr: Match With ## ## Ends in an error in state: 168. ## -## match_expr(base_cond) -> Match . expr With option(VBAR) cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In EOF COLON Attr ] +## match_expr(base_cond) -> Match . expr With option(VBAR) cases(base_cond) [ With Type Then SEMI RPAR RBRACKET RBRACE Let In End EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## Match @@ -3446,7 +3464,7 @@ interactive_expr: Verbatim COMMA Verbatim COMMA With ## ## Ends in an error in state: 345. ## -## nsepseq(disj_expr_level,COMMA) -> disj_expr_level COMMA . nsepseq(disj_expr_level,COMMA) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In Else EOF COLON Attr ] +## nsepseq(disj_expr_level,COMMA) -> disj_expr_level COMMA . nsepseq(disj_expr_level,COMMA) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End Else EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## disj_expr_level COMMA @@ -3487,7 +3505,7 @@ interactive_expr: Verbatim COMMA With ## ## Ends in an error in state: 342. ## -## tuple(disj_expr_level) -> disj_expr_level COMMA . nsepseq(disj_expr_level,COMMA) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In Else EOF COLON Attr ] +## tuple(disj_expr_level) -> disj_expr_level COMMA . nsepseq(disj_expr_level,COMMA) [ With VBAR Type Then SEMI RPAR RBRACKET RBRACE Let In End Else EOF COLON Attr ] ## ## The known suffix of the stack is as follows: ## disj_expr_level COMMA @@ -4866,4 +4884,3 @@ contract: With ## - diff --git a/src/passes/04-imperative_to_sugar/imperative_to_sugar.ml b/src/passes/04-imperative_to_sugar/imperative_to_sugar.ml index d495e87ee..5b826ef38 100644 --- a/src/passes/04-imperative_to_sugar/imperative_to_sugar.ml +++ b/src/passes/04-imperative_to_sugar/imperative_to_sugar.ml @@ -617,7 +617,7 @@ let rec uncompile_expression : O.expression -> I.expression result = let%bind let_result = uncompile_expression let_result in return @@ I.E_let_in {let_binder=(binder,ty_opt);inline;rhs;let_result} | O.E_raw_code {language;code} -> - let%bind code = uncompile_expression' code in + let%bind code = uncompile_expression code in return @@ I.E_raw_code {language;code} | O.E_constructor {constructor;element} -> let%bind element = uncompile_expression element in