Commit 47bb88b9 authored by POTTIER Francois's avatar POTTIER Francois

Re-generated expected output due to whitespace adjustment.

parent 0fd68fa7
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -15,7 +15,7 @@ open Syntax.Raw
%%
expr:
_1 = VAR
_1 = VAR
{ ( EVar _1 )}
| _1 = CONST
{ ( EConst _1 )}
......@@ -25,7 +25,7 @@ _1 = VAR
{ ( EFail )}
declarations:
_1 = VAR _2 = EQUAL _3 = expr _4 = EOF
_1 = VAR _2 = EQUAL _3 = expr _4 = EOF
{ ( D (_1, _3, Suspension.create (fun () -> !ParserFix.declarations())) )}
%%
......
......@@ -35,7 +35,7 @@ open Mm.Raw
%%
atomic_expression:
_1 = LIDENT
_1 = LIDENT
{ ( EVar _1 )}
| _1 = LCURLY _2 = record_fields _3 = RCURLY
{ ( ERecord _2 )}
......@@ -48,7 +48,7 @@ _1 = LIDENT
{ ( _2 )}
unary_expression:
_1 = atomic_expression
_1 = atomic_expression
{ ( _1 )}
| _1 = CLOSE _2 = unary_expression
{ ( EClose _2 )}
......@@ -58,39 +58,39 @@ _1 = atomic_expression
{ ( EFakeDependency (_7, _2, _5) )}
summand_expression:
_1 = unary_expression
_1 = unary_expression
{ ( _1 )}
| _1 = summand_expression _2 = PLUS _3 = unary_expression
{ ( EComposition (_1, _3) )}
expression:
_1 = summand_expression
_1 = summand_expression
{ ( _1 )}
| _1 = LET _2 = REC _3 = bindings _4 = IN _5 = expression
{ ( ELetRec (List.rev _3, _5) )}
bindings:
_1 = binding
_1 = binding
{ ( [ _1 ] )}
| _1 = bindings _2 = AND _3 = binding
{ ( _3 :: _1 )}
binding:
_1 = LIDENT _2 = EQUAL _3 = expression
_1 = LIDENT _2 = EQUAL _3 = expression
{ ( (_1, _3) )}
toplevel:
_1 = expression _2 = EOF
_1 = expression _2 = EOF
{ ( _1 )}
record_fields:
{ ( StringMap.empty )}
| _1 = record_fields _2 = VAL _3 = LIDENT _4 = EQUAL _5 = expression
{ ( StringMap.add _3 _5 _1 )}
components:
{ ( 0, StringMap.empty, (StringMap.empty, []) )}
| _1 = components _2 = VAL _3 = lident_pun _4 = dependencies _5 = EQUAL _6 = expression
{ ( let xname, iname = _3 in
......@@ -108,25 +108,25 @@ components:
i+1, input, output )}
lident_pun:
_1 = LIDENT _2 = AS _3 = LIDENT
_1 = LIDENT _2 = AS _3 = LIDENT
{ ( _1, _3 )}
| _1 = LIDENT
{ ( _1, _1 )}
fields:
{ ( StringSet.empty )}
| _1 = fields _2 = LIDENT
{ ( StringSet.add _2 _1 )}
dependencies:
{ ( [] )}
| _1 = LSQUARE _2 = variables _3 = RSQUARE
{ ( _2 )}
variables:
{ ( [] )}
| _1 = variables _2 = LIDENT
{ ( _2 :: _1 )}
......
......@@ -32,7 +32,7 @@ open Fsub.Raw
%%
toplevel:
_1 = EOF
_1 = EOF
{ ( TopEOF )}
| _1 = Term _2 = SEMI _3 = toplevel
{ ( TopEval (_1, _3) )}
......@@ -42,17 +42,17 @@ _1 = EOF
{ ( TopTermBind (_1, _2, _4) )}
Binder:
_1 = COLON _2 = Type
_1 = COLON _2 = Type
{ ( _2 )}
Type:
_1 = ArrowType
_1 = ArrowType
{ ( _1 )}
| _1 = ALL _2 = UCID _3 = OType _4 = DOT _5 = Type
{ ( TForall (_2, _3, _5) )}
AType:
_1 = LPAREN _2 = Type _3 = RPAREN
_1 = LPAREN _2 = Type _3 = RPAREN
{ ( _2 )}
| _1 = UCID
{ ( TVar _1 )}
......@@ -62,19 +62,19 @@ _1 = LPAREN _2 = Type _3 = RPAREN
{ ( TRecord _2 )}
TyBinder:
{ ( TTop )}
| _1 = LEQ _2 = Type
{ ( _2 )}
ArrowType:
_1 = AType _2 = ARROW _3 = ArrowType
_1 = AType _2 = ARROW _3 = ArrowType
{ ( TArrow (_1, _3) )}
| _1 = AType
{ ( _1 )}
Term:
_1 = AppTerm
_1 = AppTerm
{ ( _1 )}
| _1 = LAMBDA _2 = LCID _3 = COLON _4 = Type _5 = DOT _6 = Term
{ ( EAbs (_2, _4, _6) )}
......@@ -84,7 +84,7 @@ _1 = AppTerm
{ ( ETyAbs (_2, _3, _5) )}
AppTerm:
_1 = PathTerm
_1 = PathTerm
{ ( _1 )}
| _1 = AppTerm _2 = PathTerm
{ ( EApp (_1, _2) )}
......@@ -92,31 +92,31 @@ _1 = PathTerm
{ ( ETyApp (_1, _3) )}
PathTerm:
_1 = PathTerm _2 = DOT _3 = LCID
_1 = PathTerm _2 = DOT _3 = LCID
{ ( EProj (_1, _3) )}
| _1 = ATerm
{ ( _1 )}
FieldTypes:
{ ( StringMap.empty )}
| _1 = NEFieldTypes
{ ( _1 )}
NEFieldTypes:
_1 = LCID _2 = COLON _3 = Type
_1 = LCID _2 = COLON _3 = Type
{ ( StringMap.singleton _1 _3 )}
| _1 = LCID _2 = COLON _3 = Type _4 = COMMA _5 = NEFieldTypes
{ ( StringMap.add _1 _3 _5 )}
TermSeq:
_1 = Term
_1 = Term
{ ( _1 )}
| _1 = Term _2 = SEMI _3 = TermSeq
{ ( ELet (PWildcard, _1, _3) )}
ATerm:
_1 = LPAREN _2 = TermSeq _3 = RPAREN
_1 = LPAREN _2 = TermSeq _3 = RPAREN
{ ( _2 )}
| _1 = LCID
{ ( EVar _1 )}
......@@ -124,25 +124,25 @@ _1 = LPAREN _2 = TermSeq _3 = RPAREN
{ ( ERecord _2 )}
Fields:
{ ( StringMap.empty )}
| _1 = NEFields
{ ( _1 )}
NEFields:
_1 = LCID _2 = EQ _3 = Term
_1 = LCID _2 = EQ _3 = Term
{ ( StringMap.singleton _1 _3 )}
| _1 = LCID _2 = EQ _3 = Term _4 = COMMA _5 = NEFields
{ ( StringMap.add _1 _3 _5 )}
OType:
{ ( TTop)}
| _1 = LEQ _2 = Type
{ ( _2 )}
Pattern:
_1 = USCORE
_1 = USCORE
{ ( PWildcard )}
| _1 = LCID _2 = COLON _3 = Type
{ ( PVar (_1, _3) )}
......@@ -150,13 +150,13 @@ _1 = USCORE
{ ( PRecord _2 )}
PatFields:
{ ( StringMap.empty )}
| _1 = NEPatFields
{ ( _1 )}
NEPatFields:
_1 = LCID _2 = EQ _3 = Pattern
_1 = LCID _2 = EQ _3 = Pattern
{ ( StringMap.singleton _1 _3 )}
| _1 = LCID _2 = EQ _3 = Pattern _4 = COMMA _5 = NEPatFields
{ ( StringMap.add _1 _3 _5 )}
......
......@@ -56,17 +56,17 @@ open Syntax
%%
typevar:
_1 = QUOTE _2 = LID
_1 = QUOTE _2 = LID
{ ( _2 )}
typevars:
_1 = typevar
_1 = typevar
{ ( [ _1 ] )}
| _1 = typevars _2 = COMMA _3 = typevar
{ ( _3 :: _1 )}
params:
{ ( [] )}
| _1 = typevar
{ ( [ _1 ] )}
......@@ -74,13 +74,13 @@ params:
{ ( List.rev _2 )}
params_and_set_current:
_1 = params
_1 = params
{ ( let params = _1 in
current_params := params;
params )}
identifier:
_1 = LID
_1 = LID
{ ( _1 )}
| _1 = UID _2 = DOT _3 = identifier
{ ( let (pos1, _, id1) = _1
......@@ -88,13 +88,13 @@ _1 = LID
(pos1, pos2, id1 ^ "." ^ id2) )}
container:
{ ( None )}
| _1 = identifier
{ ( Some _1 )}
expfactor:
_1 = ATOM _2 = LID
_1 = ATOM _2 = LID
{ ( EAtom _2 )}
| _1 = OCAML
{ ( EEscape _1 )}
......@@ -121,7 +121,7 @@ _1 = ATOM _2 = LID
{ ( error 1 "Invalid expression factor." )}
patfactor:
_1 = ATOM _2 = LID
_1 = ATOM _2 = LID
{ ( PAtom _2 )}
| _1 = OCAML
{ ( PEscape _1 )}
......@@ -139,7 +139,7 @@ _1 = ATOM _2 = LID
{ ( error 1 "Invalid pattern factor." )}
patmodifier:
_1 = INNER
_1 = INNER
{ ( MInner )}
| _1 = OUTER
{ ( MOuter )}
......@@ -147,7 +147,7 @@ _1 = INNER
{ ( MNeutral )}
expfactors:
_1 = expfactor
_1 = expfactor
{ ( [ (None, _1) ] )}
| _1 = expfactors _2 = STAR _3 = expfactor
{ ( (None, _3) :: _1 )}
......@@ -155,7 +155,7 @@ _1 = expfactor
{ ( error 2 "Undetermined syntax error." )}
patfactors:
_1 = patfactor
_1 = patfactor
{ ( [ (None, _1) ] )}
| _1 = patfactors _2 = STAR _3 = patfactor
{ ( (None, _3) :: _1 )}
......@@ -163,13 +163,13 @@ _1 = patfactor
{ ( error 2 "Undetermined syntax error." )}
explfactor:
_1 = LID _2 = COLON _3 = expfactor
_1 = LID _2 = COLON _3 = expfactor
{ ( (Some _1, _3) )}
| _1 = error
{ ( error 1 "\"<label> : <expression factor>\" expected." )}
explfactors:
_1 = explfactor
_1 = explfactor
{ ( [ _1 ] )}
| _1 = explfactors _2 = SEMICOLON _3 = explfactor
{ ( _3 :: _1 )}
......@@ -177,13 +177,13 @@ _1 = explfactor
{ ( error 2 "\";\" or \"}\" expected." )}
patlfactor:
_1 = LID _2 = COLON _3 = patfactor
_1 = LID _2 = COLON _3 = patfactor
{ ( (Some _1, _3) )}
| _1 = error
{ ( error 1 "\"<label> : <pattern factor>\" expected." )}
patlfactors:
_1 = patlfactor
_1 = patlfactor
{ ( [ _1 ] )}
| _1 = patlfactors _2 = SEMICOLON _3 = patlfactor
{ ( _3 :: _1 )}
......@@ -191,7 +191,7 @@ _1 = patlfactor
{ ( error 2 "\";\" or \"}\" expected." )}
expsummand:
_1 = BAR _2 = UID
_1 = BAR _2 = UID
{ ( Summand (Some _2, []) )}
| _1 = BAR _2 = UID _3 = OF _4 = expfactors
{ ( Summand (Some _2, List.rev _4) )}
......@@ -199,7 +199,7 @@ _1 = BAR _2 = UID
{ ( error 2 "\"| <uppercase identifier> [ of <expression factors> ]\" expected." )}
patsummand:
_1 = BAR _2 = UID
_1 = BAR _2 = UID
{ ( Summand (Some _2, []) )}
| _1 = BAR _2 = UID _3 = OF _4 = patfactors
{ ( Summand (Some _2, List.rev _4) )}
......@@ -207,31 +207,31 @@ _1 = BAR _2 = UID
{ ( error 2 "\"| <uppercase identifier> [ of <pattern factors> ]\" expected." )}
expsummands:
_1 = expsummand
_1 = expsummand
{ ( [ _1 ] )}
| _1 = expsummands _2 = expsummand
{ ( _2 :: _1 )}
patsummands:
_1 = patsummand
_1 = patsummand
{ ( [ _1 ] )}
| _1 = patsummands _2 = patsummand
{ ( _2 :: _1 )}
sorts:
_1 = LID
_1 = LID
{ ( [ _1 ] )}
| _1 = sorts _2 = COMMA _3 = LID
{ ( _3 :: _1 )}
optional_semicolon:
{ ( () )}
| _1 = SEMICOLON
{ ( () )}
exprhs:
_1 = expsummands
_1 = expsummands
{ ( List.rev _1 )}
| _1 = expfactors
{ ( [ Summand (None, List.rev _1) ] )}
......@@ -239,7 +239,7 @@ _1 = expsummands
{ ( [ Summand (None, List.rev _2) ] )}
patrhs:
_1 = patsummands
_1 = patsummands
{ ( List.rev _1 )}
| _1 = patfactors
{ ( [ Summand (None, List.rev _1) ] )}
......@@ -247,7 +247,7 @@ _1 = patsummands
{ ( [ Summand (None, List.rev _2) ] )}
declaration:
_1 = TYPE _2 = params_and_set_current _3 = LID _4 = EQUAL _5 = exprhs
_1 = TYPE _2 = params_and_set_current _3 = LID _4 = EQUAL _5 = exprhs
{ ( DeclExpType (_2, _3, _5) )}
| _1 = TYPE _2 = params_and_set_current _3 = LID _4 = BINDS _5 = sorts _6 = EQUAL _7 = patrhs
{ ( DeclPatType (_2, _3, _5, _7) )}
......@@ -268,19 +268,19 @@ _1 = TYPE _2 = params_and_set_current _3 = LID _4 = EQUAL _5 = exprhs
{ ( error 2 "\"identifier module <uppercase identifier>\" expected." )}
declarations:
{ ( [] )}
| _1 = declarations _2 = declaration
{ ( _2 :: _1 )}
prologue:
{ ( "\n\n" )}
| _1 = OCAML
{ ( "\n\n(* Prologue. *)" ^ _1 )}
phrase:
_1 = prologue _2 = declarations _3 = EOF
_1 = prologue _2 = declarations _3 = EOF
{ ( _1, List.rev (!inline_defs @ _2) )}
| _1 = error
{ ( error 1 "\"type\", \"sort\", \"container\",\nor \"identifier module\" declaration expected." )}
......
......@@ -197,17 +197,17 @@ let rec ty_app ts t =
%%
parse:
_1 = decls _2 = EOF
_1 = decls _2 = EOF
{ ( List.rev _1 )}
parse_input_line:
_1 = goal_decl _2 = DOT
_1 = goal_decl _2 = DOT
{ ( [mk_toplevel_decl _1] )}
| _1 = EOF
{ ( raise End_of_file )}
goal_decl:
_1 = goal
_1 = goal
{ ( Query(_1) )}
| _1 = directive
{ ( _1 )}
......@@ -215,13 +215,13 @@ _1 = goal
{ ( _1 )}
decls:
_1 = decls _2 = decl _3 = DOT
_1 = decls _2 = decl _3 = DOT
{ ( _2::_1 )}
|
{ ( [] )}
decl:
_1 = sig_decl
_1 = sig_decl
{ ( mk_decl _1)}
| _1 = prog
{ ( mk_decl (ClauseDecl(_1)))}
......@@ -238,7 +238,7 @@ _1 = sig_decl
)}
sig_decl:
_1 = ID _2 = COLON _3 = kind
_1 = ID _2 = COLON _3 = kind
{ ( KindDecl(_1,_3) )}
| _1 = ID _2 = COLON _3 = ty
{ ( SymDecl(_1,_3) )}
......@@ -253,13 +253,13 @@ _1 = ID _2 = COLON _3 = kind
TypeDefn(_2,List.rev rvs,_5) )}
vars:
{ ( [] )}
| _1 = vars _2 = ID
{ ( Var.mkvar' _2::_1 )}
kind:
_1 = TYPE
_1 = TYPE
{ ( TypeK )}
| _1 = NAME_TYPE
{ ( NameK )}
......@@ -267,7 +267,7 @@ _1 = TYPE
{ ( ArrowK(_1,_3) )}
directive:
_1 = USE _2 = LITERAL
_1 = USE _2 = LITERAL
{ ( UseDirective(_2) )}
| _1 = TRACE _2 = INT
{ ( TraceDirective (_2) )}
......@@ -281,7 +281,7 @@ _1 = USE _2 = LITERAL
{ ( HelpDirective(None) )}
infix_decl:
_1 = INFIXN _2 = ID _3 = INT
_1 = INFIXN _2 = ID _3 = INT
{ ( add_sym _2 _3 Non;
InfixDecl(Non,_2,_3) )}
| _1 = INFIXL _2 = ID _3 = INT
......@@ -292,19 +292,19 @@ _1 = INFIXN _2 = ID _3 = INT
InfixDecl(Right,_2,_3) )}
prog:
_1 = preterm
_1 = preterm
{ ( _1 )}
| _1 = dcg_rule
{ ( _1 )}
dcg_rule:
_1 = app_or_qid _2 = DCG_ARROW _3 = dcg_term
_1 = app_or_qid _2 = DCG_ARROW _3 = dcg_term
{ ( translate_dcg _1 _3 )}
| _1 = app_or_qid _2 = DCG_ARROW _3 = dcg_term _4 = SLASH _5 = constr
{ ( Constr(translate_dcg _1 _3,_5) )}
dcg_term:
_1 = LBRACE _2 = preterm _3 = RBRACE
_1 = LBRACE _2 = preterm _3 = RBRACE
{ ( Goal _2 )}
| _1 = dcg_term _2 = COMMA _3 = dcg_term
{ ( Seq (_1,_3) )}
......@@ -318,11 +318,11 @@ _1 = LBRACE _2 = preterm _3 = RBRACE
{ ( Literal _1 )}
goal:
_1 = preterm
_1 = preterm
{ ( _1 )}
quantifier:
_1 = FORALL
_1 = FORALL
{ ( QForall )}
| _1 = EXISTS
{ ( QExists )}
......@@ -330,19 +330,19 @@ _1 = FORALL
{ ( QNew )}
qv:
_1 = ID
_1 = ID
{ ( (Var.mkvar' _1,UnderscoreTy) )}
| _1 = ID _2 = COLON _3 = ty
{ ( (Var.mkvar' _1,_3) )}
qlist:
_1 = qv
_1 = qv
{ ( [_1] )}
| _1 = qlist _2 = COMMA _3 = qv
{ ( _3::_1 )}
const:
_1 = UNDERSCORE
_1 = UNDERSCORE
{ ( Underscore )}
| _1 = CUT
{ ( Cut )}
......@@ -360,13 +360,13 @@ _1 = UNDERSCORE
{ ( CharC _1 )}
qual_id:
_1 = QUAL_ID
_1 = QUAL_ID
{ ( _1 )}
| _1 = ID
{ ( Rel(Base(_1)) )}
preterm0:
_1 = LPAREN _2 = preterm _3 = RPAREN
_1 = LPAREN _2 = preterm _3 = RPAREN
{ ( _2 )}
| _1 = qual_id
{ ( Atomic(_1,[]) )}
......@@ -387,13 +387,13 @@ _1 = LPAREN _2 = preterm _3 = RPAREN
Var.mkvar' _4,_6) )}
constr:
_1 = ID _2 = HASH _3 = ID
_1 = ID _2 = HASH _3 = ID
{ ( [(Var.mkvar' _1,Var.mkvar' _3)] )}
| _1 = constr _2 = COMMA _3 = ID _4 = HASH _5 = ID
{ ( (Var.mkvar' _3,Var.mkvar' _5)::_1 )}
preterm:
_1 = quantifier _2 = qlist _3 = DOT _4 = preterm
_1 = quantifier _2 = qlist _3 = DOT _4 = preterm
{ ( do_quantify _1 (List.rev _2) _4 )}
| _1 = ID _2 = BACKSLASH _3 = preterm
{ ( Abs (Var.mkvar' _1,_3) )}
......@@ -432,7 +432,7 @@ _1 = quantifier _2 = qlist _3 = DOT _4 = preterm
{ (_1)}
preterm_brack:
_1 = ID _2 = BACKSLASH _3 = preterm_brack
_1 = ID _2 = BACKSLASH _3 = preterm_brack
{ ( Abs (Var.mkvar' _1,_3))}
| _1 = preterm_brack _2 = CONS _3 = preterm_brack
{ ( Cons(_1,_3) )}
......@@ -443,13 +443,13 @@ _1 = ID _2 = BACKSLASH _3 = preterm_brack
{ ( _1 )}
preterms_brack:
_1 = preterm_brack
_1 = preterm_brack
{ ( [_1] )}
| _1 = preterms_brack _2 = COMMA _3 = preterm_brack
{ ( _3::_1 )}
infixl_preterm:
_1 = preterm _2 = INFIXL1 _3 = preterm
_1 = preterm _2 = INFIXL1 _3 = preterm
{ ( Atomic(Rel(Base _2),[_1;_3]) )}
| _1 = preterm _2 = INFIXL2 _3 = preterm
{ ( Atomic(Rel(Base _2),[_1;_3]) )}
......@@ -469,7 +469,7 @@ _1 = preterm _2 = INFIXL1 _3 = preterm
{ ( Atomic(Rel(Base _2),[_1;_3]) )}
infixr_preterm:
_1 = preterm _2 = INFIXR1 _3 = preterm
_1 = preterm _2 = INFIXR1 _3 = preterm
{ ( Atomic(Rel(Base _2),[_1;_3]) )}
| _1 = preterm _2 = INFIXR2 _3 = preterm
{ ( Atomic(Rel(Base _2),[_1;_3]) )}
......@@ -489,7 +489,7 @@ _1 = preterm _2 = INFIXR1 _3 = preterm
{ ( Atomic(Rel(Base _2),[_1;_3]) )}
infixn_preterm:
_1 = preterm _2 = INFIXN1 _3 = preterm
_1 = preterm _2 = INFIXN1 _3 = preterm
{ ( Atomic(Rel(Base _2),[_1;_3]) )}
| _1 = preterm _2 = INFIXN2 _3 = preterm
{ ( Atomic(Rel(Base _2),[_1;_3]) )}
......@@ -509,28 +509,28 @@ _1 = preterm _2 = INFIXN1 _3 = preterm
{ ( Atomic(Rel(Base _2),[_1;_3]) )}
app:
_1 = qual_id _2 = preterm0
_1 = qual_id _2 = preterm0
{ ( (_1,[_2]) )}
| _1 = app _2 = preterm0
{ ( let (h,tl) = _1 in
(h,_2::tl) )}
app_or_qid: