/* 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
static void
parse_token_decl (symbol_class what_is, symbol_class what_is_not)
{
- int token = 0;
+ token_t token = 0;
char *typename = 0;
/* The symbol being defined. */
for (;;)
{
- int t;
+ token_t t;
int tmp_char = ungetc (skip_white_space (), finput);
if (tmp_char == '%')
for (;;)
{
- int t;
+ token_t t;
int tmp_char = ungetc (skip_white_space (), finput);
if (tmp_char == '%')
static void
parse_thong_decl (void)
{
- int token;
+ token_t token;
struct bucket *symbol;
char *typename = 0;
int usrtoknum;
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++;
get_type (void)
{
int k;
- int t;
+ token_t token;
char *name;
- t = lex ();
+ token = lex ();
- if (t != tok_typename)
+ if (token != tok_typename)
{
complain (_("invalid %s declaration"), "%type");
return t;
for (;;)
{
- t = lex ();
+ token = lex ();
- switch (t)
+ switch (token)
{
case tok_semicolon:
return lex ();
break;
default:
- return t;
+ return token;
}
}
}
static void
readgram (void)
{
- int t;
+ token_t t;
bucket *lhs = NULL;
symbol_list *p;
symbol_list *p1;
if (t == tok_identifier)
{
bucket *ssave;
- int t1;
+ token_t t1;
ssave = symval;
t1 = lex ();
typed = 0;
lastprec = 0;
- gensym_count = 0;
-
semantic_parser = 0;
pure_parser = 0;