0 $accept: expr $end
- 1 $@1: /* empty */
+ 1 $@1: %empty
2 expr: 'a' $@1 'b'
- 3 $@2: /* empty */
+ 3 $@2: %empty
4 expr: $@2 'c'
%token <operator> LE 134 "<="
%left OR "<="
%%
-exp: ;
+exp: %empty;
%%
]])
AT_BISON_CHECK([-v -Wall -o input.c input.y], 0, [],
-[[input.y:1.29-32: warning: useless precedence and associativity for "||" [-Wprecedence]
-input.y:2.29-32: warning: useless precedence and associativity for "<=" [-Wprecedence]
+[[input.y:3.1-5: warning: useless precedence and associativity for "||" [-Wprecedence]
+input.y:3.1-5: warning: useless precedence and associativity for "<=" [-Wprecedence]
]])
AT_CLEANUP
2 CONST_DEC_LIST: CONST_DEC
3 | CONST_DEC_LIST CONST_DEC
- 4 $@1: /* empty */
+ 4 $@1: %empty
5 CONST_DEC: $@1 undef_id_tok '=' const_id_tok ';'
AT_DATA([input.y],
[[%%
statement: struct_stat;
-struct_stat: /* empty. */ | if else;
+struct_stat: %empty | if else;
if: "if" "const" "then" statement;
else: "else" statement;
%%
| INVALID
;
-body: /* empty */
+body: %empty
| body member
;
%token B
%%
-program: /* empty */
+program: %empty
| program e ';'
| program error ';';
]AT_YYLEX_DEFINE([{ 1, 2, 3, 0 }])[
]AT_MAIN_DEFINE[
]])
-AT_BISON_OPTION_POPDEFS
AT_BISON_CHECK([[-Wall -o input.c input.y]], [[0]],,
[[input.y:24.5-19: warning: rule useless in parser due to conflicts [-Wother]
input.y:28.5-19: warning: rule useless in parser due to conflicts [-Wother]
-input.y:18.7-9: warning: useless precedence and associativity for TK1 [-Wprecedence]
+input.y:18.1-5: warning: useless precedence and associativity for TK1 [-Wprecedence]
]])
AT_COMPILE([[input]])
AT_PARSER_CHECK([[./input]])
+AT_BISON_OPTION_POPDEFS
AT_CLEANUP