]> git.saurik.com Git - bison.git/blobdiff - src/output.c
* src/lalr.h (LA): New macro to access to the variable LA.
[bison.git] / src / output.c
index ff8b72c0409a1b44efd965c0aca8c2f77e6096c9..8ae1cff91d7f95f7f5f9c959dc958b3d7afa2b72 100644 (file)
@@ -338,7 +338,7 @@ action_row (int state)
 
   default_rule = 0;
   nreds = 0;
-  redp = reduction_table[state];
+  redp = state_table[state].reduction_table;
 
   if (redp)
     {
@@ -348,13 +348,13 @@ action_row (int state)
        {
          /* loop over all the rules available here which require
             lookahead */
-         m = lookaheads[state];
-         n = lookaheads[state + 1];
+         m = state_table[state].lookaheads;
+         n = state_table[state + 1].lookaheads;
 
          for (i = n - 1; i >= m; i--)
            {
              rule = -LAruleno[i];
-             wordp = LA + i * tokensetsize;
+             wordp = LA (i);
              mask = 1;
 
              /* and find each token which the rule finds acceptable
@@ -377,7 +377,7 @@ action_row (int state)
        }
     }
 
-  shiftp = shift_table[state];
+  shiftp = state_table[state].shift_table;
 
   /* Now see which tokens are allowed for shifts in this state.  For
      them, record the shift as the thing to do.  So shift is preferred
@@ -428,7 +428,7 @@ action_row (int state)
 
   if (nreds >= 1 && !nodefault)
     {
-      if (consistent[state])
+      if (state_table[state].consistent)
        default_rule = redp->rules[0];
       else
        {
@@ -552,8 +552,6 @@ free_shifts (void)
 {
   shifts *sp, *sptmp;  /* JF derefrenced freed ptr */
 
-  XFREE (shift_table);
-
   for (sp = first_shift; sp; sp = sptmp)
     {
       sptmp = sp->next;
@@ -567,8 +565,6 @@ free_reductions (void)
 {
   reductions *rp, *rptmp;      /* JF fixed freed ptr */
 
-  XFREE (reduction_table);
-
   for (rp = first_reduction; rp; rp = rptmp)
     {
       rptmp = rp->next;
@@ -932,7 +928,6 @@ output_actions (void)
   token_actions ();
   free_shifts ();
   free_reductions ();
-  XFREE (lookaheads);
   XFREE (LA);
   XFREE (LAruleno);