* src/LR0.c (generate_states): Use nritems, not nitems, nor using
authorAkim Demaille <akim@epita.fr>
Sat, 29 Dec 2001 14:15:12 +0000 (14:15 +0000)
committerAkim Demaille <akim@epita.fr>
Sat, 29 Dec 2001 14:15:12 +0000 (14:15 +0000)
the 0-sentinel.
* src/gram.c (ritem_longest_rhs): Likewise.
* src/reduce.c (nonterminals_reduce): Likewise.
* src/print_graph.c (print_graph): Likewise.
* src/output.c (output_rule_data): Likewise.
* src/nullable.c (set_nullable):  Likewise.

ChangeLog
src/LR0.c
src/gram.c
src/nullable.c
src/output.c
src/print.c
src/print_graph.c
src/reduce.c

index 3f29e7d..bb36209 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,15 @@
 2001-12-29  Akim Demaille  <akim@epita.fr>
 
+       * src/LR0.c (generate_states): Use nritems, not nitems, nor using
+       the 0-sentinel.
+       * src/gram.c (ritem_longest_rhs): Likewise.
+       * src/reduce.c (nonterminals_reduce): Likewise.
+       * src/print_graph.c (print_graph): Likewise.
+       * src/output.c (output_rule_data): Likewise.
+       * src/nullable.c (set_nullable):  Likewise.
+
+2001-12-29  Akim Demaille  <akim@epita.fr>
+
        * src/output.c: Comment changes.
 
 2001-12-27  Paul Eggert  <eggert@twinsun.com>
index c1a0a8c..3a036e8 100644 (file)
--- a/src/LR0.c
+++ b/src/LR0.c
@@ -391,7 +391,7 @@ void
 generate_states (void)
 {
   allocate_storage ();
-  new_closure (nitems);
+  new_closure (nritems);
   new_states ();
 
   while (this_state)
index 219bbee..6368051 100644 (file)
@@ -78,14 +78,14 @@ ritem_print (FILE *out)
 size_t
 ritem_longest_rhs (void)
 {
-  short *itemp;
   int length;
   int max;
+  int i;
 
   length = 0;
   max = 0;
-  for (itemp = ritem; *itemp; itemp++)
-    if (*itemp > 0)
+  for (i = 0; i < nritems; ++i)
+    if (ritem[i] >= 0)
       {
        length++;
       }
index 000b8b1..bce291c 100644 (file)
@@ -57,8 +57,8 @@ set_nullable (void)
      Hence we must allocate room for useless nonterminals too.  */
   shorts **rsets = XCALLOC (shorts *, nvars) - ntokens;
   /* This is said to be more elements than we actually use.
-     Supposedly nitems - nrules is enough.  But why take the risk?  */
-  shorts *relts = XCALLOC (shorts, nitems + nvars + 1);
+     Supposedly NRITEMS - NRULES is enough.  But why take the risk?  */
+  shorts *relts = XCALLOC (shorts, nritems + nvars + 1);
 
   if (trace_flag)
     fprintf (stderr, "Entering set_nullable\n");
index ffeac28..94ad425 100644 (file)
@@ -294,7 +294,7 @@ output_rule_data (void)
   short_tab = XMALLOC (short, nrules + 1);
   for (i = 1; i < nrules; i++)
     short_tab[i] = rule_table[i + 1].rhs - rule_table[i].rhs - 1;
-  short_tab[nrules] =  nitems - rule_table[nrules].rhs - 1;
+  short_tab[nrules] =  nritems - rule_table[nrules].rhs - 1;
   output_table_data (&format_obstack, short_tab,
                     0, 1, nrules + 1);
   muscle_insert ("r2", obstack_finish (&format_obstack));
index b893c5c..90685ba 100644 (file)
@@ -495,7 +495,7 @@ print_results (void)
      only its kernel.  Requires to run closure, which need memory
      allocation/deallocation.  */
   if (trace_flag)
-    new_closure (nitems);
+    new_closure (nritems);
   /* Storage for print_reductions.  */
   shiftset = XCALLOC (unsigned, tokensetsize);
   lookaheadset = XCALLOC (unsigned, tokensetsize);
index 0cdba5a..506d211 100644 (file)
@@ -199,7 +199,7 @@ print_graph (void)
   output_graph (&graph, fgraph);
 
   /* Output nodes and edges. */
-  new_closure (nitems);
+  new_closure (nritems);
   for (i = 0; i < nstates; i++)
     print_state (state_table[i]);
   free_closure ();
index 89ff3c3..2b633c2 100644 (file)
@@ -383,9 +383,9 @@ nonterminals_reduce (void)
        rule_table[i].precsym = nontermmap[rule_table[i].precsym];
     }
 
-  for (r = ritem; *r; r++)
-    if (ISVAR (*r))
-      *r = nontermmap[*r];
+  for (i = 0; i < nritems; ++i)
+    if (ISVAR (ritem[i]))
+      ritem[i] = nontermmap[ritem[i]];
 
   start_symbol = nontermmap[start_symbol];