/* Incremented for each %left, %right or %nonassoc seen */
static int lastprec;
-/* Incremented for each generated symbol */
-static int gensym_count;
-
static bucket *errtoken;
static bucket *undeftoken;
\f
else if (isdigit (c) || c == '-')
{
int n;
- char buf[4096];
ungetc (c, fin);
n = read_signed_integer (fin);
symbol_list *rule, int stack_offset)
{
int c = getc (fin);
- char *type_name = NULL;
+ const char *type_name = NULL;
/* Get the type name if explicit. */
if (c == '<')
static bucket *
gensym (void)
{
+ /* Incremented for each generated symbol */
+ static int gensym_count = 0;
+ static char buf[256];
+
bucket *sym;
- sprintf (token_buffer, "@%d", ++gensym_count);
+ sprintf (buf, "@%d", ++gensym_count);
+ token_buffer = buf;
sym = getsym (token_buffer);
sym->class = nterm_sym;
sym->value = nvars++;
else
{
- complain (_("invalid input: %s"), token_buffer);
+ complain (_("invalid input: %s"), quote (token_buffer));
t = lex ();
}
}
obstack_fgrow2 (oout, "#define\t%s\t%d\n",
symbol,
- ((translations && !raw_flag)
- ? bp->user_token_number : bp->value));
+ (translations ? bp->user_token_number : bp->value));
if (semantic_parser)
obstack_fgrow2 (oout, "#define\tT%s\t%d\n", symbol, bp->value);
}
typed = 0;
lastprec = 0;
- gensym_count = 0;
-
semantic_parser = 0;
pure_parser = 0;