lcc/grammar
Clemens-Dautermann 5ec5c64775 broken shitty code
2020-08-23 00:54:58 +02:00

10 lines
No EOL
314 B
Text

<program> ::= <function>
<function> ::= "int" <id> "(" ")" "{" <statement> "}"
<statement> ::= "return" <exp> ";"
<exp> ::= <term> { ("+" | "-") <term> }
<term> ::= <factor> { ("*" | "/") <factor> }
<factor> ::= "(" <exp> ")" | <unary_op> <factor> | <int>
<unary_op> ::= "!" | "~" | "-"
------------
6+5+2*(3-2)+9