]> git.saurik.com Git - bison.git/blobdiff - src/reduce.c
Kill GCC warnings.
[bison.git] / src / reduce.c
index 2d51a24c9f55742c4578eea4169c1df7dfc6e9a6..fd6f9e15c1921b6fa2ffabf6da7d1f9bdbafbbf0 100644 (file)
@@ -306,11 +306,17 @@ nonterminals_reduce (void)
     free (symbols_sorted + ntokens);
   }
 
     free (symbols_sorted + ntokens);
   }
 
-  for (i = 0; i < nritems; ++i)
-    if (ISVAR (ritem[i]))
-      ritem[i] = token_number_as_item_number (nontermmap[ritem[i]]);
-
-  start_symbol = nontermmap[start_symbol];
+  {
+    int r;
+    for (r = 1; r < nrules + 1; ++r)
+      {
+       item_number_t *rhsp;
+       for (rhsp = rules[r].rhs; *rhsp >= 0; ++rhsp)
+         if (ISVAR (*rhsp))
+           *rhsp =  token_number_as_item_number (nontermmap[*rhsp]);
+      }
+    start_symbol = nontermmap[start_symbol];
+  }
 
   nsyms -= nuseless_nonterminals;
   nvars -= nuseless_nonterminals;
 
   nsyms -= nuseless_nonterminals;
   nvars -= nuseless_nonterminals;