Adjust to type name changes.

This commit is contained in:
Paul Eggert
2002-12-11 05:32:51 +00:00
parent 3de372bb1b
commit c7bd07f75a

View File

@@ -1,4 +1,5 @@
/* Subroutines for bison /* Closures for Bison
Copyright (C) 1984, 1989, 2000, 2001, 2002 Free Software Foundation, Inc. Copyright (C) 1984, 1989, 2000, 2001, 2002 Free Software Foundation, Inc.
This file is part of Bison, the GNU Compiler Compiler. This file is part of Bison, the GNU Compiler Compiler.
@@ -19,19 +20,21 @@
02111-1307, USA. */ 02111-1307, USA. */
#include "system.h" #include "system.h"
#include "quotearg.h"
#include "bitset.h" #include <bitset.h>
#include "bitsetv.h" #include <bitsetv-print.h>
#include "bitsetv-print.h" #include <bitsetv.h>
#include "getargs.h" #include <quotearg.h>
#include "symtab.h"
#include "gram.h"
#include "reader.h"
#include "closure.h" #include "closure.h"
#include "derives.h" #include "derives.h"
#include "getargs.h"
#include "gram.h"
#include "reader.h"
#include "symtab.h"
/* NITEMSET is the size of the array ITEMSET. */ /* NITEMSET is the size of the array ITEMSET. */
item_number_t *itemset; item_number *itemset;
int nritemset; int nritemset;
static bitset ruleset; static bitset ruleset;
@@ -50,13 +53,13 @@ static bitsetv firsts = NULL;
`-----------------*/ `-----------------*/
static void static void
print_closure (const char *title, item_number_t *array, size_t size) print_closure (char const *title, item_number *array, size_t size)
{ {
size_t i; size_t i;
fprintf (stderr, "Closure: %s\n", title); fprintf (stderr, "Closure: %s\n", title);
for (i = 0; i < size; ++i) for (i = 0; i < size; ++i)
{ {
item_number_t *rp; item_number *rp;
fprintf (stderr, " %2d: .", array[i]); fprintf (stderr, " %2d: .", array[i]);
for (rp = &ritem[array[i]]; *rp >= 0; ++rp) for (rp = &ritem[array[i]]; *rp >= 0; ++rp)
fprintf (stderr, " %s", symbols[*rp]->tag); fprintf (stderr, " %s", symbols[*rp]->tag);
@@ -69,7 +72,7 @@ print_closure (const char *title, item_number_t *array, size_t size)
static void static void
print_firsts (void) print_firsts (void)
{ {
symbol_number_t i, j; symbol_number i, j;
fprintf (stderr, "FIRSTS\n"); fprintf (stderr, "FIRSTS\n");
for (i = ntokens; i < nsyms; i++) for (i = ntokens; i < nsyms; i++)
@@ -90,7 +93,7 @@ static void
print_fderives (void) print_fderives (void)
{ {
int i; int i;
rule_number_t r; rule_number r;
fprintf (stderr, "FDERIVES\n"); fprintf (stderr, "FDERIVES\n");
for (i = ntokens; i < nsyms; i++) for (i = ntokens; i < nsyms; i++)
@@ -120,16 +123,16 @@ print_fderives (void)
static void static void
set_firsts (void) set_firsts (void)
{ {
symbol_number_t i, j; symbol_number i, j;
firsts = bitsetv_create (nvars, nvars, BITSET_FIXED); firsts = bitsetv_create (nvars, nvars, BITSET_FIXED);
for (i = ntokens; i < nsyms; i++) for (i = ntokens; i < nsyms; i++)
for (j = 0; derives[i][j]; ++j) for (j = 0; derives[i][j]; ++j)
{ {
int symbol = derives[i][j]->rhs[0]; item_number sym = derives[i][j]->rhs[0];
if (ISVAR (symbol)) if (ISVAR (sym))
bitset_set (FIRSTS (i), symbol - ntokens); bitset_set (FIRSTS (i), sym - ntokens);
} }
if (trace_flag & trace_sets) if (trace_flag & trace_sets)
@@ -155,8 +158,8 @@ set_firsts (void)
static void static void
set_fderives (void) set_fderives (void)
{ {
symbol_number_t i, j; symbol_number i, j;
rule_number_t k; rule_number k;
fderives = bitsetv_create (nvars, nrules, BITSET_FIXED); fderives = bitsetv_create (nvars, nrules, BITSET_FIXED);
@@ -179,7 +182,7 @@ set_fderives (void)
void void
new_closure (int n) new_closure (int n)
{ {
itemset = XCALLOC (item_number_t, n); itemset = XCALLOC (item_number, n);
ruleset = bitset_create (nrules, BITSET_FIXED); ruleset = bitset_create (nrules, BITSET_FIXED);
@@ -189,13 +192,13 @@ new_closure (int n)
void void
closure (item_number_t *core, int n) closure (item_number *core, int n)
{ {
/* Index over CORE. */ /* Index over CORE. */
int c; int c;
/* A bit index over RULESET. */ /* A bit index over RULESET. */
rule_number_t ruleno; rule_number ruleno;
bitset_iterator iter; bitset_iterator iter;
@@ -212,7 +215,7 @@ closure (item_number_t *core, int n)
c = 0; c = 0;
BITSET_FOR_EACH (iter, ruleset, ruleno, 0) BITSET_FOR_EACH (iter, ruleset, ruleno, 0)
{ {
item_number_t itemno = rules[ruleno].rhs - ritem; item_number itemno = rules[ruleno].rhs - ritem;
while (c < n && core[c] < itemno) while (c < n && core[c] < itemno)
{ {
itemset[nritemset] = core[c]; itemset[nritemset] = core[c];