%{ /*C declarations */ %} %token INTEGER EOL %% /* the grammar section */ line: exp EOL { printf("%d\n", $1); } ; exp: INTEGER '+' INTEGER { $$ = $1 + $3; } | INTEGER '-' INTEGER { $$ = $1 - $3; } ; %% #include "gram6.yy.c" main() { yyparse(); } int yyerror(char *s) { fprintf(stderr, "%s\n", s); return 0; }