-
-void
-output_defines (void)
-{
- fprintf(ftable, "\n\n#define\tYYFINAL\t\t%d\n", final_state);
- fprintf(ftable, "#define\tYYFLAG\t\t%d\n", MINSHORT);
- fprintf(ftable, "#define\tYYNTBASE\t%d\n", ntokens);
-}
-
-
-
-/* compute and output yydefact, yydefgoto, yypact, yypgoto, yytable and yycheck. */
-
-void
-output_actions (void)
-{
- nvectors = nstates + nvars;
-
- froms = NEW2(nvectors, short *);
- tos = NEW2(nvectors, short *);
- tally = NEW2(nvectors, short);
- width = NEW2(nvectors, short);
-
- token_actions();
- free_shifts();
- free_reductions();
- FREE(lookaheads);
- FREE(LA);
- FREE(LAruleno);
- FREE(accessing_symbol);
-
- goto_actions();
- FREE(goto_map + ntokens);
- FREE(from_state);
- FREE(to_state);
-
- sort_actions();
- pack_table();
- output_base();
- output_table();
- output_check();
-}
-
-
-
-/* figure out the actions for the specified state, indexed by lookahead token type.
-
- The yydefact table is output now. The detailed info
- is saved for putting into yytable later. */
-
-void
-token_actions (void)
-{
- register int i;
- register int j;
- register int k;
-
- actrow = NEW2(ntokens, short);
-
- k = action_row(0);
- fprintf(ftable, "\nstatic const short yydefact[] = {%6d", k);
- save_row(0);
-
- j = 10;
- for (i = 1; i < nstates; i++)
- {
- putc(',', ftable);
-
- if (j >= 10)
- {
- putc('\n', ftable);
- j = 1;
- }
- else
- {
- j++;
- }
-
- k = action_row(i);
- fprintf(ftable, "%6d", k);
- save_row(i);
- }
-
- fprintf(ftable, "\n};\n");
- FREE(actrow);
-}
-
-
-
-/* Decide what to do for each type of token if seen as the lookahead token in specified state.
- The value returned is used as the default action (yydefact) for the state.
- In addition, actrow is filled with what to do for each kind of token,
- index by symbol number, with zero meaning do the default action.
- The value MINSHORT, a very negative number, means this situation
- is an error. The parser recognizes this value specially.
-
- This is where conflicts are resolved. The loop over lookahead rules
- considered lower-numbered rules last, and the last rule considered that likes
- a token gets to handle it. */
-
-int
+/*------------------------------------------------------------------.
+| Decide what to do for each type of token if seen as the lookahead |
+| token in specified state. The value returned is used as the |
+| default action (yydefact) for the state. In addition, actrow is |
+| filled with what to do for each kind of token, index by symbol |
+| number, with zero meaning do the default action. The value |
+| MINSHORT, a very negative number, means this situation is an |
+| error. The parser recognizes this value specially. |
+| |
+| This is where conflicts are resolved. The loop over lookahead |
+| rules considered lower-numbered rules last, and the last rule |
+| considered that likes a token gets to handle it. |
+`------------------------------------------------------------------*/
+
+static int