Commit 67d9d8f2 authored by POGODALLA Sylvain's avatar POGODALLA Sylvain

Intermediate state...

parent cd876851
#ACGC=acgc
ACGC=acgc
BUILD_PATH=../../../_build/default/src/
ACGC=$(BUILD_PATH)/grammars/acgc.exe
#ACGC=$(BUILD_PATH)/grammars/acgc.exe
#ACG=$(BUILD_PATH)/scripting/acg.exe
.PHONY: default clean all archive
......
term_alone: IDENT COLON IDENT TYPE
##
## Ends in an error in state: 197.
## Ends in an error in state: 9.
##
## term_alone -> term COLON type_expression . EOI [ # ]
## type_or_term -> type_or_term0 . [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## type_or_term -> type_or_term0 . ARROW type_or_term [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## type_or_term -> type_or_term0 . LIN_ARROW type_or_term [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## type_or_term -> type_or_term0 . nonempty_list(type_or_term0) [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
##
## The known suffix of the stack is as follows:
## term COLON type_expression
##
## 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 49, spurious reduction of production type_expression -> atomic_type_or_term
## type_or_term0
##
term_alone: IDENT COLON TYPE
##
## Ends in an error in state: 196.
## Ends in an error in state: 152.
##
## term_alone -> term COLON . type_expression EOI [ # ]
## term_alone -> type_or_term COLON . type_or_term EOI [ # ]
##
## The known suffix of the stack is as follows:
## term COLON
## type_or_term COLON
##
sig_entry_eoi: BINDER IDENT COLON TYPE
##
## Ends in an error in state: 131.
## Ends in an error in state: 91.
##
## term_declaration -> BINDER IDENT COLON . type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> BINDER IDENT COLON . type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## BINDER IDENT COLON
##
sig_entry_eoi: BINDER IDENT EQUAL IDENT COLON TYPE
##
## Ends in an error in state: 129.
## Ends in an error in state: 89.
##
## term_definition -> BINDER IDENT EQUAL term COLON . type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> BINDER IDENT EQUAL type_or_term COLON . type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## BINDER IDENT EQUAL term COLON
## BINDER IDENT EQUAL type_or_term COLON
##
main: SIG_OPEN IDENT EQUAL IDENT COLON IDENT TYPE
##
## Ends in an error in state: 140.
## Ends in an error in state: 9.
##
## end_of_dec(sig_entry) -> sig_entry . option(SEMICOLON) END_OF_DEC [ SIG_OPEN NL_LEX_OPEN LEX_OPEN EOI ]
## end_of_dec(sig_entry) -> sig_entry . SEMICOLON end_of_dec(sig_entry) [ SIG_OPEN NL_LEX_OPEN LEX_OPEN EOI ]
## type_or_term -> type_or_term0 . [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## type_or_term -> type_or_term0 . ARROW type_or_term [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## type_or_term -> type_or_term0 . LIN_ARROW type_or_term [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## type_or_term -> type_or_term0 . nonempty_list(type_or_term0) [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
##
## The known suffix of the stack is as follows:
## sig_entry
## type_or_term0
##
sig_entry_eoi: IDENT EQUAL SYMBOL COLON SIG_OPEN
##
## Ends in an error in state: 79.
##
## term_definition -> IDENT EQUAL type_or_term COLON . type_or_term [ SEMICOLON EOI END_OF_DEC ]
## type_definition -> IDENT EQUAL type_or_term COLON . TYPE [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## IDENT EQUAL type_or_term COLON
##
term_alone: SYMBOL COLON SYMBOL SEMICOLON
##
## Ends in an error in state: 153.
##
## term_alone -> type_or_term COLON type_or_term . EOI [ # ]
##
## The known suffix of the stack is as follows:
## type_or_term COLON type_or_term
##
## 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 49, spurious reduction of production type_expression -> atomic_type_or_term
## In state 145, spurious reduction of production term_declaration -> separated_nonempty_list(COMMA,IDENT) COLON type_expression
## In state 139, spurious reduction of production sig_entry -> term_declaration
## In state 9, spurious reduction of production type_or_term -> type_or_term0
##
A type expression is expected after ':'.
term_alone: IDENT SEMICOLON
##
## Ends in an error in state: 195.
## Ends in an error in state: 151.
##
## term_alone -> term . COLON type_expression EOI [ # ]
## term_alone -> type_or_term . COLON type_or_term EOI [ # ]
##
## The known suffix of the stack is as follows:
## term
## type_or_term
##
## 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 7, spurious reduction of production atomic_type_or_term -> IDENT
## In state 35, spurious reduction of production term -> atomic_type_or_term
## In state 9, spurious reduction of production type_or_term -> type_or_term0
##
A typing judgement in the form of ": <type>" is expected after a term.
term_alone: TYPE
##
## Ends in an error in state: 193.
## Ends in an error in state: 150.
##
## term_alone' -> . term_alone [ # ]
##
......@@ -91,44 +106,40 @@ term_alone: TYPE
##
heterogenous_term_and_type: IDENT IDENT TYPE
##
## Ends in an error in state: 8.
## Ends in an error in state: 14.
##
## bound_term_ending -> IDENT . DOT term [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## bound_term_ending -> IDENT . bound_term_ending [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## list(IDENT) -> IDENT . list(IDENT) [ SYMBOL ]
## nonempty_list(IDENT) -> IDENT . [ SEMICOLON RPAREN LPAREN EOI END_OF_DEC COLON ]
## nonempty_list(IDENT) -> IDENT . nonempty_list(IDENT) [ SEMICOLON RPAREN LPAREN EOI END_OF_DEC COLON ]
## nonempty_list(type_or_term0) -> type_or_term0 . [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## nonempty_list(type_or_term0) -> type_or_term0 . nonempty_list(type_or_term0) [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
##
## The known suffix of the stack is as follows:
## IDENT
## type_or_term0
##
A typing judgment in the form of "<term> : <type>" is expected.
sig_entry_eoi: BINDER IDENT EQUAL IDENT SEMICOLON
##
## Ends in an error in state: 128.
## Ends in an error in state: 88.
##
## term_definition -> BINDER IDENT EQUAL term . COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> BINDER IDENT EQUAL type_or_term . COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## BINDER IDENT EQUAL term
## BINDER IDENT EQUAL type_or_term
##
## 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 7, spurious reduction of production atomic_type_or_term -> IDENT
## In state 35, spurious reduction of production term -> atomic_type_or_term
## In state 9, spurious reduction of production type_or_term -> type_or_term0
##
A typing judgment in the form of ": <type>" is expected after defining a binder.
sig_entry_eoi: BINDER IDENT EQUAL TYPE
##
## Ends in an error in state: 127.
## Ends in an error in state: 87.
##
## term_definition -> BINDER IDENT EQUAL . term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> BINDER IDENT EQUAL . type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## BINDER IDENT EQUAL
......@@ -138,10 +149,10 @@ A term is expected as right hand side of a term definition.
sig_entry_eoi: BINDER IDENT TYPE
##
## Ends in an error in state: 126.
## Ends in an error in state: 86.
##
## term_declaration -> BINDER IDENT . COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> BINDER IDENT . EQUAL term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> BINDER IDENT . COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> BINDER IDENT . EQUAL type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## BINDER IDENT
......@@ -151,10 +162,10 @@ A typing judgement in the form of ": <type>" or a definition in the form of "= <
sig_entry_eoi: BINDER TYPE
##
## Ends in an error in state: 125.
## Ends in an error in state: 85.
##
## term_declaration -> BINDER . IDENT COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> BINDER . IDENT EQUAL term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> BINDER . IDENT COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> BINDER . IDENT EQUAL type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## BINDER
......@@ -164,40 +175,22 @@ An identidier (the name of the binder) is expected after the keyword 'binder'.
sig_entry_eoi: IDENT COLON IDENT TYPE
##
## Ends in an error in state: 191.
## Ends in an error in state: 9.
##
## sig_entry_eoi -> sig_entry . EOI [ # ]
## type_or_term -> type_or_term0 . [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## type_or_term -> type_or_term0 . ARROW type_or_term [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## type_or_term -> type_or_term0 . LIN_ARROW type_or_term [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## type_or_term -> type_or_term0 . nonempty_list(type_or_term0) [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
##
## The known suffix of the stack is as follows:
## sig_entry
##
## 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 49, spurious reduction of production type_expression -> atomic_type_or_term
## In state 145, spurious reduction of production term_declaration -> separated_nonempty_list(COMMA,IDENT) COLON type_expression
## In state 139, spurious reduction of production sig_entry -> term_declaration
## type_or_term0
##
After a term declaration of the form "<term>: <type>", a semicolon ';' is expected.
sig_entry_eoi: IDENT COLON SYMBOL
##
## Ends in an error in state: 143.
##
## term_declaration -> separated_nonempty_list(COMMA,IDENT) COLON . type_expression [ SEMICOLON EOI END_OF_DEC ]
## type_declaration -> separated_nonempty_list(COMMA,IDENT) COLON . TYPE [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## separated_nonempty_list(COMMA,IDENT) COLON
##
After a term declaration of the form "<term>: ", a type expression and a semicolon "<type> ;" are expected.
sig_entry_eoi: IDENT COMMA IDENT TYPE
##
## Ends in an error in state: 123.
## Ends in an error in state: 83.
##
## separated_nonempty_list(COMMA,IDENT) -> IDENT . [ COLON ]
## separated_nonempty_list(COMMA,IDENT) -> IDENT . COMMA separated_nonempty_list(COMMA,IDENT) [ COLON ]
......@@ -207,119 +200,103 @@ sig_entry_eoi: IDENT COMMA IDENT TYPE
##
sig_entry_eoi: IDENT COMMA TYPE
##
## Ends in an error in state: 122.
## Ends in an error in state: 82.
##
## separated_nonempty_list(COMMA,IDENT) -> IDENT COMMA . separated_nonempty_list(COMMA,IDENT) [ COLON ]
##
## The known suffix of the stack is as follows:
## IDENT COMMA
##
After a term or type declaration of the form "<ident1>, <ident2>", a type declaration of the form ": type;" (with the keyword 'type') or a typing judgment of the form ": <type>;" is expected.
sig_entry_eoi: IDENT EQUAL IDENT ARROW IDENT COLON SYMBOL
sig_entry_eoi: IDENT COLON SIG_OPEN
##
## Ends in an error in state: 115.
## Ends in an error in state: 100.
##
## type_definition -> IDENT EQUAL not_atomic_type_expression COLON . TYPE [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> separated_nonempty_list(COMMA,IDENT) COLON . type_or_term [ SEMICOLON EOI END_OF_DEC ]
## type_declaration -> separated_nonempty_list(COMMA,IDENT) COLON . TYPE [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## IDENT EQUAL not_atomic_type_expression COLON
## separated_nonempty_list(COMMA,IDENT) COLON
##
In a type definition, the keyword 'type' is expected after the colon ':'.
sig_entry_eoi: IDENT EQUAL IDENT ARROW IDENT TYPE
sig_entry_eoi: IDENT COLON SYMBOL RPAREN
##
## Ends in an error in state: 114.
## Ends in an error in state: 148.
##
## type_definition -> IDENT EQUAL not_atomic_type_expression . COLON TYPE [ SEMICOLON EOI END_OF_DEC ]
## sig_entry_eoi -> sig_entry . EOI [ # ]
##
## The known suffix of the stack is as follows:
## IDENT EQUAL not_atomic_type_expression
## sig_entry
##
## 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 49, spurious reduction of production type_expression -> atomic_type_or_term
## In state 53, spurious reduction of production not_atomic_type_expression -> atomic_type_or_term ARROW type_expression
## In state 9, spurious reduction of production type_or_term -> type_or_term0
## In state 102, spurious reduction of production term_declaration -> separated_nonempty_list(COMMA,IDENT) COLON type_or_term
## In state 96, spurious reduction of production sig_entry -> term_declaration
##
In a type definition, a colon ':' is expeced before the keyword 'type'.
After a term or type declaration of the form "<ident1>, <ident2>", a type declaration of the form ": type;" (with the keyword 'type') or a typing judgment of the form ": <type>;" is expected.
sig_entry_eoi: IDENT EQUAL IDENT COLON SYMBOL
sig_entry_eoi: IDENT EQUAL IDENT ARROW IDENT TYPE
##
## Ends in an error in state: 133.
## Ends in an error in state: 9.
##
## term_definition -> type_or_term_definition_prefix . type_expression [ SEMICOLON EOI END_OF_DEC ]
## type_definition -> type_or_term_definition_prefix . TYPE [ SEMICOLON EOI END_OF_DEC ]
## type_or_term -> type_or_term0 . [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## type_or_term -> type_or_term0 . ARROW type_or_term [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## type_or_term -> type_or_term0 . LIN_ARROW type_or_term [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
## type_or_term -> type_or_term0 . nonempty_list(type_or_term0) [ SEMICOLON RPAREN EOI END_OF_DEC COLON ]
##
## The known suffix of the stack is as follows:
## type_or_term_definition_prefix
## type_or_term0
##
The 'type' keyword or a typing judgement in the form of ": <type>;" is expected after the definition of a type or a term, resp.
In a type definition, a colon ':' is expeced before the keyword 'type'.
sig_entry_eoi: IDENT EQUAL IDENT SEMICOLON
##
## Ends in an error in state: 120.
## Ends in an error in state: 78.
##
## not_atomic_type_expression -> atomic_type_or_term . ARROW type_expression [ COLON ]
## not_atomic_type_expression -> atomic_type_or_term . LIN_ARROW type_expression [ COLON ]
## type_or_term_definition_prefix -> IDENT EQUAL atomic_type_or_term . COLON [ TYPE LPAREN IDENT ]
## term_definition -> IDENT EQUAL type_or_term . COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## type_definition -> IDENT EQUAL type_or_term . COLON TYPE [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## IDENT EQUAL atomic_type_or_term
## IDENT EQUAL type_or_term
##
## 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 7, spurious reduction of production atomic_type_or_term -> IDENT
## In state 9, spurious reduction of production type_or_term -> type_or_term0
##
A typing judgement in the form of ": <type>;" or a type definition with a colon ':' and the 'type' keyword in the form of ": type;" is expected in a term or a type definition.
sig_entry_eoi: IDENT EQUAL SYMBOL SYMBOL COLON TYPE
##
## Ends in an error in state: 118.
##
## term_definition -> IDENT EQUAL not_atomic_term COLON . type_expression [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## IDENT EQUAL not_atomic_term COLON
##
A type is expected in a term definition.
sig_entry_eoi: IDENT EQUAL SYMBOL SYMBOL SEMICOLON
##
## Ends in an error in state: 117.
## Ends in an error in state: 78.
##
## term_definition -> IDENT EQUAL not_atomic_term . COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> IDENT EQUAL type_or_term . COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## type_definition -> IDENT EQUAL type_or_term . COLON TYPE [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## IDENT EQUAL not_atomic_term
## IDENT EQUAL type_or_term
##
## 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 27, spurious reduction of production list(term0) ->
## In state 28, spurious reduction of production list(term0) -> term0 list(term0)
## In state 30, spurious reduction of production not_atomic_term -> list(IDENT) SYMBOL list(term0)
## In state 14, spurious reduction of production nonempty_list(type_or_term0) -> type_or_term0
## In state 16, spurious reduction of production type_or_term -> type_or_term0 nonempty_list(type_or_term0)
##
A typing judgement in the form of ": <type>" is expected in a term definition.
sig_entry_eoi: IDENT EQUAL TYPE
##
## Ends in an error in state: 113.
## Ends in an error in state: 77.
##
## term_definition -> IDENT EQUAL . not_atomic_term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## type_definition -> IDENT EQUAL . not_atomic_type_expression COLON TYPE [ SEMICOLON EOI END_OF_DEC ]
## type_or_term_definition_prefix -> IDENT EQUAL . atomic_type_or_term COLON [ TYPE LPAREN IDENT ]
## term_definition -> IDENT EQUAL . type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## type_definition -> IDENT EQUAL . type_or_term COLON TYPE [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## IDENT EQUAL
......@@ -329,13 +306,12 @@ A definition in the form of "<term> : <type>;" or a type definition of the form
sig_entry_eoi: IDENT TYPE
##
## Ends in an error in state: 112.
## Ends in an error in state: 76.
##
## separated_nonempty_list(COMMA,IDENT) -> IDENT . [ COLON ]
## separated_nonempty_list(COMMA,IDENT) -> IDENT . COMMA separated_nonempty_list(COMMA,IDENT) [ COLON ]
## term_definition -> IDENT . EQUAL not_atomic_term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## type_definition -> IDENT . EQUAL not_atomic_type_expression COLON TYPE [ SEMICOLON EOI END_OF_DEC ]
## type_or_term_definition_prefix -> IDENT . EQUAL atomic_type_or_term COLON [ TYPE LPAREN IDENT ]
## term_definition -> IDENT . EQUAL type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## type_definition -> IDENT . EQUAL type_or_term COLON TYPE [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## IDENT
......@@ -345,54 +321,54 @@ A comma ',' or a colon ':' are expected in a type or term declaration. An equali
sig_entry_eoi: INFIX SYMBOL COLON TYPE
##
## Ends in an error in state: 93.
## Ends in an error in state: 57.
##
## term_declaration -> INFIX SYMBOL COLON . type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> INFIX SYMBOL COLON . type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX SYMBOL COLON
##
sig_entry_eoi: INFIX SYMBOL EQUAL IDENT COLON TYPE
##
## Ends in an error in state: 91.
## Ends in an error in state: 55.
##
## term_definition -> INFIX SYMBOL EQUAL term COLON . type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX SYMBOL EQUAL type_or_term COLON . type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX SYMBOL EQUAL term COLON
## INFIX SYMBOL EQUAL type_or_term COLON
##
sig_entry_eoi: PREFIX SYMBOL COLON TYPE
##
## Ends in an error in state: 85.
## Ends in an error in state: 49.
##
## term_declaration -> PREFIX SYMBOL COLON . type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> PREFIX SYMBOL COLON . type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## PREFIX SYMBOL COLON
##
sig_entry_eoi: PREFIX SYMBOL EQUAL IDENT COLON TYPE
##
## Ends in an error in state: 83.
## Ends in an error in state: 47.
##
## term_definition -> PREFIX SYMBOL EQUAL term COLON . type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> PREFIX SYMBOL EQUAL type_or_term COLON . type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## PREFIX SYMBOL EQUAL term COLON
## PREFIX SYMBOL EQUAL type_or_term COLON
##
sig_entry_eoi: INFIX LSQBRACKET IDENT RSQBRACKET SYMBOL EQUAL SYMBOL COLON TYPE
##
## Ends in an error in state: 108.
## Ends in an error in state: 72.
##
## term_definition -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL term COLON . type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL type_or_term COLON . type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL term COLON
## INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL type_or_term COLON
##
sig_entry_eoi: INFIX LSQBRACKET IDENT RSQBRACKET SYMBOL COLON TYPE
##
## Ends in an error in state: 110.
## Ends in an error in state: 74.
##
## term_declaration -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL COLON . type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL COLON . type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL COLON
......@@ -402,79 +378,75 @@ A type is expected after the colon ':'.
sig_entry_eoi: INFIX SYMBOL EQUAL IDENT SEMICOLON
##
## Ends in an error in state: 90.
## Ends in an error in state: 54.
##
## term_definition -> INFIX SYMBOL EQUAL term . COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX SYMBOL EQUAL type_or_term . COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX SYMBOL EQUAL term
## INFIX SYMBOL EQUAL type_or_term
##
## 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 7, spurious reduction of production atomic_type_or_term -> IDENT
## In state 35, spurious reduction of production term -> atomic_type_or_term
## In state 9, spurious reduction of production type_or_term -> type_or_term0
##
sig_entry_eoi: PREFIX SYMBOL EQUAL IDENT SEMICOLON
##
## Ends in an error in state: 82.
## Ends in an error in state: 46.
##
## term_definition -> PREFIX SYMBOL EQUAL term . COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> PREFIX SYMBOL EQUAL type_or_term . COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## PREFIX SYMBOL EQUAL term
## PREFIX SYMBOL EQUAL type_or_term
##
## 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 7, spurious reduction of production atomic_type_or_term -> IDENT
## In state 35, spurious reduction of production term -> atomic_type_or_term
## In state 9, spurious reduction of production type_or_term -> type_or_term0
##
sig_entry_eoi: INFIX LSQBRACKET IDENT RSQBRACKET SYMBOL EQUAL SYMBOL SEMICOLON
##
## Ends in an error in state: 107.
## Ends in an error in state: 71.
##
## term_definition -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL term . COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL type_or_term . COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL term
## INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL type_or_term
##
## 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 25, spurious reduction of production list(term0) ->
## In state 30, spurious reduction of production not_atomic_term -> list(IDENT) SYMBOL list(term0)
## In state 15, spurious reduction of production term -> not_atomic_term
## In state 9, spurious reduction of production type_or_term -> type_or_term0
##
A typing judgment in the form ": <type>;" is expected.
sig_entry_eoi: INFIX SYMBOL EQUAL TYPE
##
## Ends in an error in state: 89.
## Ends in an error in state: 53.
##
## term_definition -> INFIX SYMBOL EQUAL . term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX SYMBOL EQUAL . type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX SYMBOL EQUAL
##
sig_entry_eoi: PREFIX SYMBOL EQUAL TYPE
##
## Ends in an error in state: 81.
## Ends in an error in state: 45.
##
## term_definition -> PREFIX SYMBOL EQUAL . term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> PREFIX SYMBOL EQUAL . type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## PREFIX SYMBOL EQUAL
##
sig_entry_eoi: INFIX LSQBRACKET IDENT RSQBRACKET SYMBOL EQUAL TYPE
##
## Ends in an error in state: 106.
## Ends in an error in state: 70.
##
## term_definition -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL . term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL . type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL
......@@ -484,30 +456,30 @@ A typing judgment in the form "<term> : <type>;" is expected.
sig_entry_eoi: INFIX SYMBOL TYPE
##
## Ends in an error in state: 88.
## Ends in an error in state: 52.
##
## term_declaration -> INFIX SYMBOL . COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX SYMBOL . EQUAL term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> INFIX SYMBOL . COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX SYMBOL . EQUAL type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX SYMBOL
##
sig_entry_eoi: PREFIX SYMBOL TYPE
##
## Ends in an error in state: 80.
## Ends in an error in state: 44.
##
## term_declaration -> PREFIX SYMBOL . COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> PREFIX SYMBOL . EQUAL term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> PREFIX SYMBOL . COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> PREFIX SYMBOL . EQUAL type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## PREFIX SYMBOL
##
sig_entry_eoi: INFIX LSQBRACKET IDENT RSQBRACKET SYMBOL TYPE
##
## Ends in an error in state: 105.
## Ends in an error in state: 69.
##
## term_declaration -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL . COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL . EQUAL term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL . COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL . EQUAL type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL
......@@ -517,22 +489,22 @@ A typing judgement in the form of ": <type>;" or a defintion in the form of "= <
sig_entry_eoi: INFIX TYPE
##
## Ends in an error in state: 87.
## Ends in an error in state: 51.
##
## term_declaration -> INFIX . SYMBOL COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> INFIX . LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX . SYMBOL EQUAL term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX . LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> INFIX . SYMBOL COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> INFIX . LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX . SYMBOL EQUAL type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX . LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX
##
sig_entry_eoi: INFIX LSQBRACKET IDENT RSQBRACKET TYPE
##
## Ends in an error in state: 104.
## Ends in an error in state: 68.
##
## term_declaration -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET . SYMBOL COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET . SYMBOL EQUAL term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET . SYMBOL COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET . SYMBOL EQUAL type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX LSQBRACKET separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET
......@@ -542,7 +514,7 @@ A symbol or a declaration of associativity an precedence property are expected.
sig_entry_eoi: INFIX LSQBRACKET SYMBOL TYPE
##
## Ends in an error in state: 96.
## Ends in an error in state: 60.
##
## separated_nonempty_list(COMMA,infix_option_value) -> SYMBOL . SYMBOL [ RSQBRACKET ]
## separated_nonempty_list(COMMA,infix_option_value) -> SYMBOL . SYMBOL COMMA separated_nonempty_list(COMMA,infix_option_value) [ RSQBRACKET ]
......@@ -555,7 +527,7 @@ An identifier is expected.
sig_entry_eoi: INFIX LSQBRACKET SYMBOL SYMBOL TYPE
##
## Ends in an error in state: 97.
## Ends in an error in state: 61.
##
## separated_nonempty_list(COMMA,infix_option_value) -> SYMBOL SYMBOL . [ RSQBRACKET ]
## separated_nonempty_list(COMMA,infix_option_value) -> SYMBOL SYMBOL . COMMA separated_nonempty_list(COMMA,infix_option_value) [ RSQBRACKET ]
......@@ -568,7 +540,7 @@ A right square bracket ']' or a comma ',' followed by an associativity specifica
sig_entry_eoi: INFIX LSQBRACKET IDENT COMMA TYPE
##
## Ends in an error in state: 100.
## Ends in an error in state: 64.
##
## separated_nonempty_list(COMMA,infix_option_value) -> IDENT COMMA . separated_nonempty_list(COMMA,infix_option_value) [ RSQBRACKET ]
##
......@@ -580,7 +552,7 @@ A precedence specification in the form of "< <sym>" where "<sym>" is an other in
sig_entry_eoi: INFIX LSQBRACKET SYMBOL SYMBOL COMMA TYPE
##
## Ends in an error in state: 98.
## Ends in an error in state: 62.
##
## separated_nonempty_list(COMMA,infix_option_value) -> SYMBOL SYMBOL COMMA . separated_nonempty_list(COMMA,infix_option_value) [ RSQBRACKET ]
##
......@@ -592,7 +564,7 @@ An associativity specification (one of the keywords 'Left', 'Right', or 'NonAsso
sig_entry_eoi: INFIX LSQBRACKET IDENT TYPE
##
## Ends in an error in state: 99.
## Ends in an error in state: 63.
##
## separated_nonempty_list(COMMA,infix_option_value) -> IDENT . [ RSQBRACKET ]
## separated_nonempty_list(COMMA,infix_option_value) -> IDENT . COMMA separated_nonempty_list(COMMA,infix_option_value) [ RSQBRACKET ]
......@@ -605,10 +577,10 @@ A right square bracket ']' or a comma "," followed by a precedence specification
sig_entry_eoi: INFIX LSQBRACKET TYPE
##
## Ends in an error in state: 95.
## Ends in an error in state: 59.
##
## term_declaration -> INFIX LSQBRACKET . separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX LSQBRACKET . separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> INFIX LSQBRACKET . separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> INFIX LSQBRACKET . separated_nonempty_list(COMMA,infix_option_value) RSQBRACKET SYMBOL EQUAL type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## INFIX LSQBRACKET
......@@ -618,10 +590,10 @@ An associativity specification (one of the keywords 'Left', 'Right', or 'NonAsso
sig_entry_eoi: PREFIX TYPE
##
## Ends in an error in state: 79.
## Ends in an error in state: 43.
##
## term_declaration -> PREFIX . SYMBOL COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> PREFIX . SYMBOL EQUAL term COLON type_expression [ SEMICOLON EOI END_OF_DEC ]
## term_declaration -> PREFIX . SYMBOL COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
## term_definition -> PREFIX . SYMBOL EQUAL type_or_term COLON type_or_term [ SEMICOLON EOI END_OF_DEC ]
##
## The known suffix of the stack is as follows:
## PREFIX
......@@ -631,7 +603,7 @@ A symbol is expected.
sig_entry_eoi: TYPE
##
## Ends in an error in state: 189.
## Ends in an error in state: 146.
##
## sig_entry_eoi' -> . sig_entry_eoi [ # ]
##
......@@ -643,7 +615,7 @@ An identifier or a keyword ('infix', 'prefix', or 'binder') is expected.
main: LEX_OPEN IDENT EQUAL IDENT COMPOSE TYPE
##
## Ends in an error in state: 177.
## Ends in an error in state: 134.
##
## lexicon_exp -> lexicon_exp0 COMPOSE . lexicon_exp [ SIG_OPEN RPAREN NL_LEX_OPEN LEX_OPEN EOI ]
##
......@@ -655,7 +627,7 @@ An identifier (the name of a lexicon), or an expression representing the composi
main: LEX_OPEN IDENT EQUAL IDENT TYPE