-input.y:12.10-26: %printer redeclaration for <field1>
-input.y:2.10-26: previous declaration
-input.y:12.10-26: %printer redeclaration for <field2>
-input.y:5.10-26: previous declaration
+input.y:12.10-24: %printer redeclaration for <field1>
+input.y:2.10-24: previous declaration
+input.y:12.10-24: %printer redeclaration for <field2>
+input.y:5.10-24: previous declaration
+]])
+
+AT_CLEANUP
+
+## ----------------------------------------------------- ##
+## Undeclared symbols used for a printer or destructor. ##
+## ----------------------------------------------------- ##
+
+AT_SETUP([Undeclared symbols used for a printer or destructor])
+
+AT_DATA([[input.y]],
+[[%printer {} foo baz
+%destructor {} bar
+
+%%
+exp: bar;
+]])
+
+AT_BISON_CHECK([input.y], [1], [],
+[[input.y:2.16-18: symbol bar is used, but is not defined as a token and has no rules
+input.y:1.17-19: warning: symbol baz is used, but is not defined as a token and has no rules
+input.y:1.13-15: warning: symbol foo is used, but is not defined as a token and has no rules