%{ #include void yyerror(const char * str) { fprintf(stderr, "error: %s\n", str); } int yywrap() { return 1; } main() { yyparse(); } %} %token BIN_NUMBER OCT_NUMBER DEC_NUMBER HEX_NUMBER %% number: BIN_NUMBER | OCT_NUMBER | DEC_NUMBER | HEX_NUMBER { printf("Saw a number\n"); } ;