a/c2iec.y | b/c2iec.y | ||
---|---|---|---|
... |
... |
||
116 | | postfix_expression '.' IDENTIFIER |
116 | | postfix_expression '.' IDENTIFIER |
117 | { sprintf($<str>$, "%s.%s",$<str>1,$<str>3); } |
117 | { sprintf($<str>$, "%s.%s",$<str>1,$<str>3); } |
118 | | postfix_expression PTR_OP IDENTIFIER |
118 | | postfix_expression PTR_OP IDENTIFIER |
119 | { sprintf($<str>$, "%s %s %s",$<str>1, $<str>2, $<str>3);} |
119 | { sprintf($<str>$, "%s %s %s",$<str>1, $<str>2, $<str>3);} |
120 | | postfix_expression INC_OP |
120 | | postfix_expression INC_OP |
121 | { sprintf($<str>$, "((%s:=%s+1)-1)",$<str>1, $<str>1); } |
121 | { sprintf($<str>$, "%s:=%s+1",$<str>1, $<str>1); } |
122 | | postfix_expression DEC_OP |
122 | | postfix_expression DEC_OP |
123 | { sprintf($<str>$, "((%s:=%s-1)+1)",$<str>1, $<str>1); } |
123 | { sprintf($<str>$, "%s:=%s-1",$<str>1, $<str>1); } |
124 | | '(' type_name ')' '{' initializer_list '}' |
124 | | '(' type_name ')' '{' initializer_list '}' |
125 | | '(' type_name ')' '{' initializer_list ',' '}' |
125 | | '(' type_name ')' '{' initializer_list ',' '}' |
126 | ; |
126 | ; |
127 | 127 | ||
128 | argument_expression_list |
128 | argument_expression_list |
... |
... |
||
270 | : conditional_expression |
270 | : conditional_expression |
271 | ; |
271 | ; |
272 | 272 | ||
273 | declaration |
273 | declaration |
274 | : declaration_specifiers ';' |
274 | : declaration_specifiers ';' |
275 | { sprintf($<str>$, "%s %s\n",$<str>1, $<str>2); } |
275 | { sprintf($<str>$, "%s %s;\n",$<str>1, $<str>2); } |
276 | | TYPEDEF declaration_specifiers init_declarator_list ';' |
276 | | TYPEDEF declaration_specifiers init_declarator_list ';' |
277 | { |
277 | { |
278 | char *p; |
278 | char *p; |
279 | while( (p=fifo_pop(decl_func)) != NULL) |
279 | while( (p=fifo_pop(decl_func)) != NULL) |
280 | /* noop */; |
280 | /* noop */; |
... |
... |
||
693 | ; |
693 | ; |
694 | 694 | ||
695 | block_item |
695 | block_item |
696 | : declaration |
696 | : declaration |
697 | | statement |
697 | | statement |
698 | // { printf("%s\n",$<str>1); } |
698 | //{ printf("%s\n",$<str>1); } |
699 | ; |
699 | ; |
700 | 700 | ||
701 | expression_statement |
701 | expression_statement |
702 | : ';' |
702 | : ';' |
703 | | expression ';' |
703 | | expression ';' |