LPAREN, RPAREN added
parent
759749b254
commit
0810b7275c
|
@ -18,6 +18,8 @@ void yyerror(const char *s) {
|
|||
%%
|
||||
"{" { return LBRACE; }
|
||||
"}" { return RBRACE; }
|
||||
"(" { return LPAREN; }
|
||||
")" { return RPAREN; }
|
||||
";" { return SEMICOLON; }
|
||||
"=" { return ASSIGN; }
|
||||
"+" { return PLUS; }
|
||||
|
|
|
@ -12,7 +12,7 @@ extern FILE *yyin;
|
|||
}
|
||||
|
||||
%token <str> IDENTIFIER NUMBER
|
||||
%token LBRACE RBRACE SEMICOLON ASSIGN PLUS MINUS MULT DIV MOD RET PRINT
|
||||
%token LBRACE RBRACE LPAREN RPAREN SEMICOLON ASSIGN PLUS MINUS MULT DIV MOD RET PRINT
|
||||
|
||||
%type <str> expr program statement block
|
||||
|
||||
|
@ -50,6 +50,7 @@ expr:
|
|||
| expr MULT { printf("MULT\n") } expr // выражения вида expr*expr
|
||||
| expr DIV { printf("DIV\n") } expr // выражения вида expr/expr
|
||||
| expr MOD { printf("MOD\n") } expr // выражения вида expr%expr
|
||||
| LPAREN { printf("LPAREN\n") } expr RPAREN { printf("RPAREN\n") } // выражения вида (expr)
|
||||
| IDENTIFIER { printf("IDENTIFIER(%s)\n", $1); free($1); }
|
||||
| NUMBER { printf("NUMBER(%s)\n", $1); free($1); }
|
||||
;
|
||||
|
|
Loading…
Reference in New Issue