/[bison]/bison/src/reader.c
ViewVC logotype

Diff of /bison/src/reader.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.160 by akim, Sun Apr 7 17:43:41 2002 UTC revision 1.161 by akim, Sun Apr 7 17:43:53 2002 UTC
# Line 190  symbol_check_alias_consistence (symbol_t Line 190  symbol_check_alias_consistence (symbol_t
190  static bool  static bool
191  symbol_pack (symbol_t *this)  symbol_pack (symbol_t *this)
192  {  {
   if (getenv ("DEBUG"))  
     fprintf (stderr, "Packing %s, %s, number = %d\n",  
              this->tag,  
              this->class == nterm_sym ? "nterm" : "TERM",  
              this->number);  
193    if (this->class == nterm_sym)    if (this->class == nterm_sym)
194      {      {
195        this->number += ntokens;        this->number += ntokens;
# Line 223  symbol_pack (symbol_t *this) Line 218  symbol_pack (symbol_t *this)
218        assert (this->number != -1);        assert (this->number != -1);
219      }      }
220    
   if (getenv ("DEBUG"))  
     fprintf (stderr, "Setting %d = %s\n", this->number, this->tag);  
221    symbols[this->number] = this;    symbols[this->number] = this;
222    return TRUE;    return TRUE;
223  }  }
# Line 239  symbol_pack (symbol_t *this) Line 232  symbol_pack (symbol_t *this)
232  static bool  static bool
233  symbol_translation (symbol_t *this)  symbol_translation (symbol_t *this)
234  {  {
   if (getenv ("DEBUG"))  
     fprintf (stderr, "Considering Setting UserVal %s = %d (val = %d)\n",  
              this->tag, this->user_token_number, this->number);  
   
235    /* Non-terminal? */    /* Non-terminal? */
236    if (this->class == token_sym    if (this->class == token_sym
237        && this->user_token_number != SALIAS)        && this->user_token_number != SALIAS)
# Line 253  symbol_translation (symbol_t *this) Line 242  symbol_translation (symbol_t *this)
242                    symbols[token_translations[this->user_token_number]]->tag,                    symbols[token_translations[this->user_token_number]]->tag,
243                    this->tag, this->user_token_number);                    this->tag, this->user_token_number);
244    
       if (getenv ("DEBUG"))  
         fprintf (stderr, "Setting UserVal %s = %d (val = %d)\n",  
                  this->tag, this->user_token_number, this->number);  
245        token_translations[this->user_token_number] = this->number;        token_translations[this->user_token_number] = this->number;
246      }      }
247    
# Line 720  parse_token_decl (symbol_class what_is, Line 706  parse_token_decl (symbol_class what_is,
706            if (what_is == nterm_sym && oldclass != nterm_sym)            if (what_is == nterm_sym && oldclass != nterm_sym)
707              symbol->number = nvars++;              symbol->number = nvars++;
708            if (what_is == token_sym && symbol->number == -1)            if (what_is == token_sym && symbol->number == -1)
709              {              symbol->number = ntokens++;
               symbol->number = ntokens++;  
               if (getenv ("DEBUG"))  
                 fprintf (stderr, "Set %s to %d\n",  
                          symbol->tag, symbol->number);  
             }  
710    
711            if (typename)            if (typename)
712              {              {
# Line 1659  readgram (void) Line 1640  readgram (void)
1640      fatal (_("too many symbols (tokens plus nonterminals); maximum %d"),      fatal (_("too many symbols (tokens plus nonterminals); maximum %d"),
1641             MAXSHORT);             MAXSHORT);
1642    
   if (getenv ("DEBUG"))  
     fprintf (stderr, "nsyms == ntokens + nvars: %d == %d + %d\n",  
              nsyms, ntokens, nvars);  
1643    assert (nsyms == ntokens + nvars);    assert (nsyms == ntokens + nvars);
1644  }  }
1645    
# Line 1706  token_translations_init (void) Line 1684  token_translations_init (void)
1684    for (i = 0; i < ntokens; ++i)    for (i = 0; i < ntokens; ++i)
1685      {      {
1686        symbol_t *this = symbols[i];        symbol_t *this = symbols[i];
       if (getenv ("DEBUG"))  
         fprintf (stderr, "UserVal %s = %d (val = %d)\n",  
                  this->tag, this->user_token_number, this->number);  
1687        if (this->user_token_number == SUNDEF)        if (this->user_token_number == SUNDEF)
1688          this->user_token_number = ++last_user_token_number;          this->user_token_number = ++last_user_token_number;
1689        if (this->user_token_number > max_user_token_number)        if (this->user_token_number > max_user_token_number)
1690          max_user_token_number = this->user_token_number;          max_user_token_number = this->user_token_number;
       if (getenv ("DEBUG"))  
         fprintf (stderr, "Now: UserVal %s = %d (val = %d)\n",  
                  this->tag, this->user_token_number, this->number);  
1691      }      }
1692    
1693    token_translations = XCALLOC (short, max_user_token_number + 1);    token_translations = XCALLOC (short, max_user_token_number + 1);

Legend:
Removed from v.1.160  
changed lines
  Added in v.1.161

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26