+[[input-c++-glr.y:1.7-11: `bad' is not a recognized %code qualifier
+input-c++-glr.y:2.7-8: `' is not a recognized %code qualifier
+input-c++-glr.y:3.7-8: `' is not a recognized %code qualifier
+]])
+
+AT_DATA([special-char-@@.y],
+[[%code "bad" {}
+%code "" {}
+%code "" {}
+%%
+start: ;
+]])
+AT_CHECK([[bison special-char-@@.y]], [1], [],
+[[special-char-@@.y:1.7-11: `bad' is not a recognized %code qualifier
+special-char-@@.y:2.7-8: `' is not a recognized %code qualifier
+special-char-@@.y:3.7-8: `' is not a recognized %code qualifier
+]])
+
+AT_DATA([special-char-@:>@.y],
+[[%code "bad" {}
+%code "" {}
+%code "" {}
+%%
+start: ;
+]])
+AT_CHECK([[bison special-char-@:>@.y]], [1], [],
+[[special-char-@:>@.y:1.7-11: `bad' is not a recognized %code qualifier
+special-char-@:>@.y:2.7-8: `' is not a recognized %code qualifier
+special-char-@:>@.y:3.7-8: `' is not a recognized %code qualifier