julia.opp.exp 483 Bytes
Newer Older
1 2 3
%{ %}
%start main
%token EOF
4
%token TCPar
5
%token TElse
6 7 8 9
%token TIdent
%token TIf
%token TOPar
%token TReturn
10 11
%nonassoc TIf
%nonassoc TElse
12 13 14 15
%type <void> main
%%

main:
16
  _1 = statement _2 = EOF
17
    {                 ( )}
18 19

statement:
20
  _1 = TReturn
21 22 23 24 25
    {  (  )}
| _1 = TIf _2 = TOPar _3 = expr _4 = TCPar _5 = statement %prec TIf
    {  (  )}
| _1 = TIf _2 = TOPar _3 = expr _4 = TCPar _5 = statement _6 = TElse _7 = statement
    {  (  )}
26 27

expr:
28
  _1 = TIdent
29
    {         ( )}
30 31 32 33

%%