mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 20:33:03 +00:00
style: make item_index a truly different type from item_number
See previous commit. * src/gram.h (item_index): Make it unsigned. Fix remaiming issues.
This commit is contained in:
@@ -60,10 +60,10 @@ closure_print (char const *title, item_index const *array, size_t size)
|
||||
for (size_t i = 0; i < size; ++i)
|
||||
{
|
||||
fprintf (stderr, " %2d: .", array[i]);
|
||||
item_index *rp;
|
||||
for (rp = &ritem[array[i]]; *rp >= 0; ++rp)
|
||||
item_number *rp;
|
||||
for (rp = &ritem[array[i]]; 0 <= *rp; ++rp)
|
||||
fprintf (stderr, " %s", symbols[*rp]->tag);
|
||||
fprintf (stderr, " (rule %d)\n", -*rp - 1);
|
||||
fprintf (stderr, " (rule %d)\n", item_number_as_rule_number (*rp));
|
||||
}
|
||||
fputs ("\n\n", stderr);
|
||||
}
|
||||
|
||||
@@ -111,14 +111,15 @@ extern int nsyms;
|
||||
extern int ntokens;
|
||||
extern int nvars;
|
||||
|
||||
/* elements of ritem */
|
||||
/* Elements of ritem. */
|
||||
typedef int item_number;
|
||||
/* indices into ritem */
|
||||
typedef int item_index;
|
||||
# define ITEM_NUMBER_MAX INT_MAX
|
||||
extern item_number *ritem;
|
||||
extern int nritems;
|
||||
|
||||
/* Indices into ritem. */
|
||||
typedef unsigned int item_index;
|
||||
|
||||
/* There is weird relationship between OT1H item_number and OTOH
|
||||
symbol_number and rule_number: we store the latter in
|
||||
item_number. symbol_number values are stored as-is, while
|
||||
|
||||
@@ -1030,7 +1030,7 @@ ielr_split_states (bitsetv follow_kernel_items, bitsetv always_follows,
|
||||
if (!node->state->consistent)
|
||||
{
|
||||
size_t i = 0;
|
||||
item_number *itemset = node->state->items;
|
||||
item_index *itemset = node->state->items;
|
||||
for (size_t r = 0; r < node->state->reductions->num; ++r)
|
||||
{
|
||||
rule *this_rule = node->state->reductions->rules[r];
|
||||
|
||||
@@ -57,7 +57,7 @@ static struct escape_buf escape_bufs[num_escape_bufs];
|
||||
static void
|
||||
print_core (FILE *out, int level, state *s)
|
||||
{
|
||||
item_number *sitems = s->items;
|
||||
item_index *sitems = s->items;
|
||||
size_t snritems = s->nitems;
|
||||
|
||||
/* Output all the items of a state, not only its kernel. */
|
||||
|
||||
@@ -61,7 +61,7 @@ max_length (size_t *width, const char *str)
|
||||
static void
|
||||
print_core (FILE *out, state *s)
|
||||
{
|
||||
item_number *sitems = s->items;
|
||||
item_index *sitems = s->items;
|
||||
size_t snritems = s->nitems;
|
||||
/* Output all the items of a state, not only its kernel. */
|
||||
if (report_flag & report_itemsets)
|
||||
|
||||
Reference in New Issue
Block a user