]> git.saurik.com Git - bison.git/blobdiff - src/gram.h
2007-01-30 Paolo Bonzini <bonzini@gnu.org>
[bison.git] / src / gram.h
index a5dfc1e93ba4fa40f5786650d6f41943f300be3c..3b742d565e8be947365dccc14b6561b140bd5c3b 100644 (file)
@@ -1,6 +1,6 @@
 /* Data definitions for internal representation of Bison's input.
 
 /* Data definitions for internal representation of Bison's input.
 
-   Copyright (C) 1984, 1986, 1989, 1992, 2001, 2002, 2003, 2004
+   Copyright (C) 1984, 1986, 1989, 1992, 2001, 2002, 2003, 2004, 2005, 2006
    Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
    Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
@@ -115,6 +115,7 @@ extern int ntokens;
 extern int nvars;
 
 typedef int item_number;
 extern int nvars;
 
 typedef int item_number;
+#define ITEM_NUMBER_MAX INT_MAX
 extern item_number *ritem;
 extern unsigned int nritems;
 
 extern item_number *ritem;
 extern unsigned int nritems;
 
@@ -138,8 +139,15 @@ item_number_as_symbol_number (item_number i)
   return i;
 }
 
   return i;
 }
 
+static inline bool
+item_number_is_symbol_number (item_number i)
+{
+  return i >= 0;
+}
+
 /* Rule numbers.  */
 typedef int rule_number;
 /* Rule numbers.  */
 typedef int rule_number;
+#define RULE_NUMBER_MAX INT_MAX
 extern rule_number nrules;
 
 static inline item_number
 extern rule_number nrules;
 
 static inline item_number
@@ -154,6 +162,11 @@ item_number_as_rule_number (item_number i)
   return -1 - i;
 }
 
   return -1 - i;
 }
 
+static inline bool
+item_number_is_rule_number (item_number i)
+{
+  return i < 0;
+}
 
 /*--------.
 | Rules.  |
 
 /*--------.
 | Rules.  |