X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/125ecb5684787648d54a799be962cc5c48098279..eeeb962b:/src/LR0.c diff --git a/src/LR0.c b/src/LR0.c index cecc0eae..06ee51f6 100644 --- a/src/LR0.c +++ b/src/LR0.c @@ -50,7 +50,7 @@ static short *redset = NULL; static short *shiftset = NULL; static short **kernel_base = NULL; -static size_t *kernel_size = NULL; +static int *kernel_size = NULL; static short *kernel_items = NULL; /* hash table for states, to recognize equivalent ones. */ @@ -94,7 +94,7 @@ allocate_itemsets (void) } shift_symbol = symbol_count; - kernel_size = XCALLOC (size_t, nsyms); + kernel_size = XCALLOC (int, nsyms); } @@ -150,7 +150,7 @@ new_itemsets (void) shiftcount = 0; - for (i = 0; i < itemsetend - itemset; ++i) + for (i = 0; i < itemsetsize; ++i) { int symbol = ritem[itemset[i]]; if (symbol > 0) @@ -213,7 +213,6 @@ static int get_state (int symbol) { int key; - short *isp2; int i; core *sp; @@ -236,7 +235,6 @@ get_state (int symbol) { if (sp->nitems == kernel_size[symbol]) { - int i; found = 1; for (i = 0; i < kernel_size[symbol]; ++i) if (kernel_base[symbol][i] != sp->items[i]) @@ -544,19 +542,15 @@ augment_automaton (void) static void save_reductions (void) { - short *isp; - int item; int count; - reductions *p; - - short *rend; + int i; /* Find and count the active items that represent ends of rules. */ count = 0; - for (isp = itemset; isp < itemsetend; isp++) + for (i = 0; i < itemsetsize; ++i) { - item = ritem[*isp]; + int item = ritem[itemset[i]]; if (item < 0) redset[count++] = -item; } @@ -565,7 +559,7 @@ save_reductions (void) if (count) { - p = REDUCTIONS_ALLOC (count); + reductions *p = REDUCTIONS_ALLOC (count); p->number = this_state->number; p->nreds = count;