]> git.saurik.com Git - bison.git/blobdiff - src/symlist.c
Enable declaration of default %printer/%destructor. Make the parser
[bison.git] / src / symlist.c
index a277f36e4437c132718b21690dd244ebc672cc3e..e00814ed398c19d56e04408f6bab7df4da8531fb 100644 (file)
@@ -1,6 +1,6 @@
 /* Lists of symbols for Bison
 
-   Copyright (C) 2002, 2005 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2005, 2006 Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
 
@@ -38,6 +38,10 @@ symbol_list_new (symbol *sym, location loc)
   res->sym = sym;
   res->location = loc;
 
+  res->midrule = NULL;
+  res->midrule_parent_rule = NULL;
+  res->midrule_parent_rhs_index = 0;
+
   res->action = NULL;
   res->used = false;
 
@@ -96,11 +100,11 @@ symbol_list_free (symbol_list *list)
 | Return its length.  |
 `--------------------*/
 
-unsigned int
-symbol_list_length (const symbol_list *l)
+int
+symbol_list_length (symbol_list const *l)
 {
   int res = 0;
-  for (/* Nothing. */; l; l = l->next)
+  for (/* Nothing. */; l && l->sym; l = l->next)
     ++res;
   return res;
 }