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

Diff of /bison/src/output.c

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

revision 1.200 by akim, Sun Oct 20 11:18:14 2002 UTC revision 1.201 by akim, Sun Oct 20 11:20:15 2002 UTC
# Line 107  GENERATE_MUSCLE_INSERT_TABLE(muscle_inse Line 107  GENERATE_MUSCLE_INSERT_TABLE(muscle_inse
107  GENERATE_MUSCLE_INSERT_TABLE(muscle_insert_state_number_table, state_number_t)  GENERATE_MUSCLE_INSERT_TABLE(muscle_insert_state_number_table, state_number_t)
108    
109    
110  /*-----------------------------------------------------------------.  /*------------------------------------------------------------------.
111  | Prepare the muscles related to the tokens: translate, tname, and |  | Prepare the muscles related to the symbols: translate, tname, and |
112  | toknum.                                                          |  | toknum.                                                           |
113  `-----------------------------------------------------------------*/  `------------------------------------------------------------------*/
114    
115  static void  static void
116  prepare_tokens (void)  prepare_symbols (void)
117  {  {
118      MUSCLE_INSERT_INT ("tokens_number", ntokens);
119      MUSCLE_INSERT_INT ("nterms_number", nvars);
120      MUSCLE_INSERT_INT ("undef_token_number", undeftoken->number);
121      MUSCLE_INSERT_INT ("user_token_number_max", max_user_token_number);
122    
123    muscle_insert_symbol_number_table ("translate",    muscle_insert_symbol_number_table ("translate",
124                                       token_translations,                                       token_translations,
125                                       token_translations[0],                                       token_translations[0],
126                                       1, max_user_token_number + 1);                                       1, max_user_token_number + 1);
127    
128      /* tname -- token names.  */
129    {    {
130      int i;      int i;
131      int j = 0;      int j = 0;
# Line 215  prepare_rules (void) Line 221  prepare_rules (void)
221    muscle_insert_short_table ("dprec", dprec, 0, 0, nrules);    muscle_insert_short_table ("dprec", dprec, 0, 0, nrules);
222    muscle_insert_short_table ("merger", merger, 0, 0, nrules);    muscle_insert_short_table ("merger", merger, 0, 0, nrules);
223    
224      MUSCLE_INSERT_INT ("rules_number", nrules);
225    
226    free (rhs);    free (rhs);
227    free (prhs);    free (prhs);
228    free (rline);    free (rline);
# Line 238  prepare_states (void) Line 246  prepare_states (void)
246      values[i] = states[i]->accessing_symbol;      values[i] = states[i]->accessing_symbol;
247    muscle_insert_symbol_number_table ("stos", values,    muscle_insert_symbol_number_table ("stos", values,
248                                       0, 1, nstates);                                       0, 1, nstates);
249    
250      MUSCLE_INSERT_INT ("last", high);
251      MUSCLE_INSERT_INT ("final_state_number", final_state->number);
252      MUSCLE_INSERT_INT ("states_number", nstates);
253  }  }
254    
255    
# Line 449  prepare_actions (void) Line 461  prepare_actions (void)
461       that case.  Nevertheless, it seems even better to be able to use       that case.  Nevertheless, it seems even better to be able to use
462       the GLR skeletons even without the non-deterministic tables.  */       the GLR skeletons even without the non-deterministic tables.  */
463    muscle_insert_unsigned_int_table ("conflict_list_heads", conflict_table,    muscle_insert_unsigned_int_table ("conflict_list_heads", conflict_table,
464                                      conflict_table[0], 1, high+1);                                      conflict_table[0], 1, high + 1);
465    muscle_insert_unsigned_int_table ("conflicting_rules", conflict_list,    muscle_insert_unsigned_int_table ("conflicting_rules", conflict_list,
466                                      conflict_list[0], 1, conflict_list_cnt);                                      conflict_list[0], 1, conflict_list_cnt);
467  }  }
# Line 566  prepare (void) Line 578  prepare (void)
578    MUSCLE_INSERT_STRING ("output_parser_name", parser_file_name);    MUSCLE_INSERT_STRING ("output_parser_name", parser_file_name);
579    MUSCLE_INSERT_STRING ("output_header_name", spec_defines_file);    MUSCLE_INSERT_STRING ("output_header_name", spec_defines_file);
580    
   /* Symbols. */  
   MUSCLE_INSERT_INT ("tokens_number", ntokens);  
   MUSCLE_INSERT_INT ("nterms_number", nvars);  
   MUSCLE_INSERT_INT ("undef_token_number", undeftoken->number);  
   MUSCLE_INSERT_INT ("user_token_number_max", max_user_token_number);  
   
   /* Rules. */  
   MUSCLE_INSERT_INT ("rules_number", nrules);  
   
   /* States. */  
   MUSCLE_INSERT_INT ("last", high);  
   MUSCLE_INSERT_INT ("final_state_number", final_state->number);  
   MUSCLE_INSERT_INT ("states_number", nstates);  
   
581    /* User Code.  */    /* User Code.  */
582    obstack_1grow (&pre_prologue_obstack, 0);    obstack_1grow (&pre_prologue_obstack, 0);
583    obstack_1grow (&post_prologue_obstack, 0);    obstack_1grow (&post_prologue_obstack, 0);
# Line 609  output (void) Line 607  output (void)
607  {  {
608    obstack_init (&format_obstack);    obstack_init (&format_obstack);
609    
610    prepare_tokens ();    prepare_symbols ();
611    prepare_rules ();    prepare_rules ();
612    prepare_states ();    prepare_states ();
613    prepare_actions ();    prepare_actions ();

Legend:
Removed from v.1.200  
changed lines
  Added in v.1.201

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