mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-11 05:13:04 +00:00
* src/symtab.h, src/symtab.c (symbol_t): printer and
printer_location are new members. (symbol_printer_set): New. * src/parse-gram.y (PERCENT_PRINTER): New token. Handle its associated rule. * src/scan-gram.l: Adjust. (handle_destructor_at, handle_destructor_dollar): Rename as... (handle_symbol_code_at, handle_symbol_code_dollar): these. * src/output.c (symbol_printers_output): New. (output_skeleton): Call it. * data/bison.simple (yysymprint): New. Cannot be named yyprint since there are already many grammar files with a user `yyprint'. Replace the calls to YYPRINT to calls to yysymprint. * tests/calc.at: Adjust. * tests/torture.at (AT_DATA_STACK_TORTURE): Remove YYPRINT: it was taking advantage of parser very internal details (stack size!).
This commit is contained in:
@@ -52,7 +52,8 @@ int gram_parse (void *control);
|
||||
typedef enum braced_code_e
|
||||
{
|
||||
action_braced_code,
|
||||
destructor_braced_code
|
||||
destructor_braced_code,
|
||||
printer_braced_code
|
||||
} braced_code_t;
|
||||
/* FIXME: This is really a dirty hack which demonstrates that we
|
||||
should probably not try to parse the actions now. */
|
||||
|
||||
Reference in New Issue
Block a user