diff --git a/TODO b/TODO index e8509e3c..2a08164a 100644 --- a/TODO +++ b/TODO @@ -43,10 +43,6 @@ back-ported. yytoken = yytranslate_ (yychar); -** $ and others in epilogue -A stray $ is a warning in the actions, but an error in the epilogue. -IMHO, it should not even be a warning in the epilogue. - ** stack.hh Get rid of it. The original idea is nice, but actually it makes the code harder to follow, and uselessly different from the other diff --git a/tests/input.at b/tests/input.at index 385d0f3a..44a24770 100644 --- a/tests/input.at +++ b/tests/input.at @@ -1668,19 +1668,22 @@ AT_DATA_GRAMMAR([[input.y]], %destructor { $%; @%; } <*> exp TOK; %initial-action { $%; @%; }; %printer { $%; @%; } <*> exp TOK; +%{ $ @ %} // Should not warn. %% exp: TOK { $%; @%; $$ = $1; }; +%% +$ @ // Should not warn. ]]) -AT_BISON_CHECK([[input.y]], 0, [], +AT_BISON_CHECK([[-Wall input.y]], 0, [], [[input.y:11.19: warning: stray '$' [-Wother] input.y:11.23: warning: stray '@' [-Wother] input.y:12.19: warning: stray '$' [-Wother] input.y:12.23: warning: stray '@' [-Wother] input.y:13.19: warning: stray '$' [-Wother] input.y:13.23: warning: stray '@' [-Wother] -input.y:15.19: warning: stray '$' [-Wother] -input.y:15.23: warning: stray '@' [-Wother] +input.y:16.19: warning: stray '$' [-Wother] +input.y:16.23: warning: stray '@' [-Wother] ]]) AT_CLEANUP