mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-14 14:53:03 +00:00
* src/symtab.h, src/symtab.c (symbol_print): New.
* src/symlist.h, src/symlist.c (symbol_list_print): New. * src/symlist.c (symbol_list_n_type_name_get): Report the culprit.
This commit is contained in:
19
src/symtab.c
19
src/symtab.c
@@ -74,6 +74,25 @@ symbol_new (uniqstr tag, location loc)
|
||||
}
|
||||
|
||||
|
||||
/*-----------------.
|
||||
| Print a symbol. |
|
||||
`-----------------*/
|
||||
|
||||
#define SYMBOL_ATTR_PRINT(Attr) \
|
||||
if (s->Attr) \
|
||||
fprintf (stderr, " %s { %s }", #Attr, s->Attr)
|
||||
|
||||
void
|
||||
symbol_print (FILE *f, symbol *s)
|
||||
{
|
||||
fprintf (stderr, "\"%s\"", s->tag);
|
||||
SYMBOL_ATTR_PRINT (type_name);
|
||||
SYMBOL_ATTR_PRINT (destructor);
|
||||
SYMBOL_ATTR_PRINT (printer);
|
||||
}
|
||||
|
||||
#undef SYMBOL_ATTR_PRINT
|
||||
|
||||
/*------------------------------------------------------------------.
|
||||
| Complain that S's WHAT is redeclared at SECOND, and was first set |
|
||||
| at FIRST. |
|
||||
|
||||
Reference in New Issue
Block a user