fork download
  1. %{
  2. #include "y.tab.h"
  3. %}
  4.  
  5. %%
  6. "if" { return IF; }
  7. "else" { return ELSE; }
  8. "while" { return WHILE; }
  9. "for" { return FOR; }
  10. "int" { return INT; }
  11. "float" { return FLOAT; }
  12. "char" { return CHAR; }
  13. "return" { return RETURN; }
  14.  
  15. [0-9]+ { return NUMBER; }
  16. [a-zA-Z_][a-zA-Z0-9_]* { return ID; }
  17.  
  18. "==" { return EQ; }
  19. "!=" { return NEQ; }
  20. "<=" { return LE; }
  21. ">=" { return GE; }
  22. "<" { return LT; }
  23. ">" { return GT; }
  24.  
  25. "=" { return ASSIGN; }
  26. ";" { return SEMI; }
  27. "," { return COMMA; }
  28. "(" { return LPAREN; }
  29. ")" { return RPAREN; }
  30. "{" { return LBRACE; }
  31. "}" { return RBRACE; }
  32.  
  33. "+" { return PLUS; }
  34. "-" { return MINUS; }
  35. "*" { return MUL; }
  36. "/" { return DIV; }
  37.  
  38. [ \t\n]+ ; /* ignore whitespace */
  39.  
  40. . { return yytext[0]; }
  41.  
  42. %%
  43.  
  44. int yywrap() {
  45. return 1;
  46. }
  47.  
Success #stdin #stdout #stderr 0.04s 6952KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
ERROR: /home/dP3Lkf/prog:2:1: Syntax error: Operator expected
ERROR: /home/dP3Lkf/prog:46:1: Syntax error: Unexpected end of file
ERROR: '$runtoplevel'/0: Undefined procedure: program/0
   Exception: (3) program ? EOF: exit