]> git.saurik.com Git - bison.git/blobdiff - src/closure.c
* src/files.c (open_files): Yipee! We no longer need all the code
[bison.git] / src / closure.c
index 31073257970bd2b0575fd252b322f90e0bb97054..6d3d22078faabdced2af1a5081d2b6e6c819e9d5 100644 (file)
@@ -1,5 +1,5 @@
 /* Subroutines for bison
-   Copyright (C) 1984, 1989, 2000 Free Software Foundation, Inc.
+   Copyright 1984, 1989, 2000 Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
 
    Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
    02111-1307, USA.  */
 
-
 #include "system.h"
-#include "alloc.h"
+#include "xalloc.h"
 #include "gram.h"
 #include "closure.h"
-
-extern short **derives;
-extern char **tags;
-
-extern void RTC PARAMS ((unsigned *, int));
+#include "derives.h"
+#include "warshall.h"
 
 short *itemset;
 short *itemsetend;
@@ -127,7 +123,7 @@ set_firsts (void)
 
   varsetsize = rowsize = WORDSIZE (nvars);
 
-  firsts = NEW2 (nvars * rowsize, unsigned);
+  firsts = XCALLOC (unsigned, nvars * rowsize);
 
   row = firsts;
   for (i = ntokens; i < nsyms; i++)
@@ -176,7 +172,7 @@ set_fderives (void)
   int ruleno;
   int i;
 
-  fderives = NEW2 (nvars * rulesetsize, unsigned) - ntokens * rulesetsize;
+  fderives = XCALLOC (unsigned, nvars * rulesetsize) - ntokens * rulesetsize;
 
   set_firsts ();
 
@@ -213,17 +209,17 @@ set_fderives (void)
   print_fderives ();
 #endif
 
-  FREE (firsts);
+  XFREE (firsts);
 }
 \f
 
 void
 new_closure (int n)
 {
-  itemset = NEW2 (n, short);
+  itemset = XCALLOC (short, n);
 
   rulesetsize = WORDSIZE (nrules + 1);
-  ruleset = NEW2 (rulesetsize, unsigned);
+  ruleset = XCALLOC (unsigned, rulesetsize);
 
   set_fderives ();
 }
@@ -315,7 +311,7 @@ closure (short *core, int n)
 void
 free_closure (void)
 {
-  FREE (itemset);
-  FREE (ruleset);
-  FREE (fderives + ntokens * rulesetsize);
+  XFREE (itemset);
+  XFREE (ruleset);
+  XFREE (fderives + ntokens * rulesetsize);
 }