7 %token FUNC END STRUCT VAR IF THEN ELSE WHILE DO RETURN OR NOT
8 %token ID NUM ASSIGN GREATER
12 Program: Funcdef ';' Program
13 | Structdef ';' Program
17 Funcdef: FUNC ID '(' Pars ')' Stats END
18 | FUNC ID '(' ')' Stats END
21 Structdef: STRUCT Ids END
36 Stat: VAR ID ASSIGN Expr
38 | IF Bool THEN Stats END
39 | IF Bool THEN Stats ELSE Stats END
40 | WHILE Bool DO Stats END
55 Plusterm: '+' Term Plusterm
59 Malterm: '*' Term Malterm
75 Orterm: OR Bterm Orterm
79 Bterm: Term GREATER Term
87 Call: ID '(' Exprs ')'
100 int yyerror(char *error_text) {
101 fprintf(stderr,"Line %i: %s\n",yylineno, error_text);
105 int main(int argc, char **argv) {