]> git.saurik.com Git - bison.git/blobdiff - src/parse-gram.h
portability: fix pointer arithmetic to conform to C standard.
[bison.git] / src / parse-gram.h
index 978f4e0fdbd131e2a5734a552cb496390d2b1f84..3363499a5a33f3b9f9f81990b21b7e1dbfa22cc9 100644 (file)
@@ -1,25 +1,21 @@
+/* A Bison parser, made by GNU Bison 2.4.483-4ad39-dirty.  */
 
-/* A Bison parser, made by GNU Bison 2.3a+.  */
+/* Interface for Bison's Yacc-like parsers in C
 
-/* Skeleton interface for Bison's Yacc-like parsers in C
-   
-      Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
-   Free Software Foundation, Inc.
-   
-   This program is free software; you can redistribute it and/or modify
+   Copyright (C) 1984, 1989-1990, 2000-2010 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2, or (at your option)
-   any later version.
-   
+   the Free Software Foundation, either version 3 of the License, or
+   (at your option) any later version.
+
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
-   
+
    You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor,
-   Boston, MA 02110-1301, USA.  */
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
 /* As a special exception, you may create a larger work that contains
    part or all of the Bison parser skeleton and distribute that work
    special exception, which will cause the skeleton and the resulting
    Bison output files to be licensed under the GNU General Public
    License without this special exception.
-   
+
    This special exception was added by the Free Software Foundation in
    version 2.2 of Bison.  */
+/* "%code requires" blocks.  */
+/* Line 1658 of yacc.c  */
+#line 201 "src/parse-gram.y"
+
+# ifndef PARAM_TYPE
+#  define PARAM_TYPE
+  typedef enum
+  {
+    param_none   = 0,
+    param_lex    = 1 << 0,
+    param_parse  = 1 << 1,
+    param_both   = param_lex | param_parse
+  } param_type;
+# endif
 
 
+/* Line 1658 of yacc.c  */
+#line 50 "src/parse-gram.h"
+
 /* Tokens.  */
 #ifndef YYTOKENTYPE
 # define YYTOKENTYPE
      PERCENT_LEFT = 265,
      PERCENT_RIGHT = 266,
      PERCENT_NONASSOC = 267,
-     PERCENT_PREC = 268,
-     PERCENT_DPREC = 269,
-     PERCENT_MERGE = 270,
-     PERCENT_CODE = 271,
-     PERCENT_DEBUG = 272,
+     PERCENT_PRECEDENCE = 268,
+     PERCENT_PREC = 269,
+     PERCENT_DPREC = 270,
+     PERCENT_MERGE = 271,
+     PERCENT_CODE = 272,
      PERCENT_DEFAULT_PREC = 273,
      PERCENT_DEFINE = 274,
      PERCENT_DEFINES = 275,
      PERCENT_ERROR_VERBOSE = 276,
      PERCENT_EXPECT = 277,
      PERCENT_EXPECT_RR = 278,
-     PERCENT_FILE_PREFIX = 279,
-     PERCENT_GLR_PARSER = 280,
-     PERCENT_INITIAL_ACTION = 281,
-     PERCENT_LANGUAGE = 282,
-     PERCENT_LEX_PARAM = 283,
-     PERCENT_LOCATIONS = 284,
-     PERCENT_NAME_PREFIX = 285,
-     PERCENT_NO_DEFAULT_PREC = 286,
-     PERCENT_NO_LINES = 287,
-     PERCENT_NONDETERMINISTIC_PARSER = 288,
-     PERCENT_OUTPUT = 289,
-     PERCENT_PARSE_PARAM = 290,
-     PERCENT_PURE_PARSER = 291,
-     PERCENT_PUSH_PARSER = 292,
-     PERCENT_PUSH_PULL_PARSER = 293,
-     PERCENT_REQUIRE = 294,
-     PERCENT_SKELETON = 295,
-     PERCENT_START = 296,
-     PERCENT_TOKEN_TABLE = 297,
-     PERCENT_VERBOSE = 298,
-     PERCENT_YACC = 299,
-     BRACED_CODE = 300,
-     CHAR = 301,
-     EPILOGUE = 302,
-     EQUAL = 303,
-     ID = 304,
-     ID_COLON = 305,
-     PERCENT_PERCENT = 306,
-     PIPE = 307,
-     PROLOGUE = 308,
-     SEMICOLON = 309,
-     TYPE = 310,
-     TYPE_TAG_ANY = 311,
-     TYPE_TAG_NONE = 312,
-     PERCENT_UNION = 313
+     PERCENT_FLAG = 279,
+     PERCENT_FILE_PREFIX = 280,
+     PERCENT_GLR_PARSER = 281,
+     PERCENT_INITIAL_ACTION = 282,
+     PERCENT_LANGUAGE = 283,
+     PERCENT_NAME_PREFIX = 284,
+     PERCENT_NO_DEFAULT_PREC = 285,
+     PERCENT_NO_LINES = 286,
+     PERCENT_NONDETERMINISTIC_PARSER = 287,
+     PERCENT_OUTPUT = 288,
+     PERCENT_REQUIRE = 289,
+     PERCENT_SKELETON = 290,
+     PERCENT_START = 291,
+     PERCENT_TOKEN_TABLE = 292,
+     PERCENT_VERBOSE = 293,
+     PERCENT_YACC = 294,
+     BRACED_CODE = 295,
+     BRACKETED_ID = 296,
+     CHAR = 297,
+     EPILOGUE = 298,
+     EQUAL = 299,
+     ID = 300,
+     ID_COLON = 301,
+     PERCENT_PERCENT = 302,
+     PIPE = 303,
+     PROLOGUE = 304,
+     SEMICOLON = 305,
+     TAG = 306,
+     TAG_ANY = 307,
+     TAG_NONE = 308,
+     PERCENT_PARAM = 309,
+     PERCENT_UNION = 310
    };
 #endif
 /* Tokens.  */
 #define PERCENT_LEFT 265
 #define PERCENT_RIGHT 266
 #define PERCENT_NONASSOC 267
-#define PERCENT_PREC 268
-#define PERCENT_DPREC 269
-#define PERCENT_MERGE 270
-#define PERCENT_CODE 271
-#define PERCENT_DEBUG 272
+#define PERCENT_PRECEDENCE 268
+#define PERCENT_PREC 269
+#define PERCENT_DPREC 270
+#define PERCENT_MERGE 271
+#define PERCENT_CODE 272
 #define PERCENT_DEFAULT_PREC 273
 #define PERCENT_DEFINE 274
 #define PERCENT_DEFINES 275
 #define PERCENT_ERROR_VERBOSE 276
 #define PERCENT_EXPECT 277
 #define PERCENT_EXPECT_RR 278
-#define PERCENT_FILE_PREFIX 279
-#define PERCENT_GLR_PARSER 280
-#define PERCENT_INITIAL_ACTION 281
-#define PERCENT_LANGUAGE 282
-#define PERCENT_LEX_PARAM 283
-#define PERCENT_LOCATIONS 284
-#define PERCENT_NAME_PREFIX 285
-#define PERCENT_NO_DEFAULT_PREC 286
-#define PERCENT_NO_LINES 287
-#define PERCENT_NONDETERMINISTIC_PARSER 288
-#define PERCENT_OUTPUT 289
-#define PERCENT_PARSE_PARAM 290
-#define PERCENT_PURE_PARSER 291
-#define PERCENT_PUSH_PARSER 292
-#define PERCENT_PUSH_PULL_PARSER 293
-#define PERCENT_REQUIRE 294
-#define PERCENT_SKELETON 295
-#define PERCENT_START 296
-#define PERCENT_TOKEN_TABLE 297
-#define PERCENT_VERBOSE 298
-#define PERCENT_YACC 299
-#define BRACED_CODE 300
-#define CHAR 301
-#define EPILOGUE 302
-#define EQUAL 303
-#define ID 304
-#define ID_COLON 305
-#define PERCENT_PERCENT 306
-#define PIPE 307
-#define PROLOGUE 308
-#define SEMICOLON 309
-#define TYPE 310
-#define TYPE_TAG_ANY 311
-#define TYPE_TAG_NONE 312
-#define PERCENT_UNION 313
+#define PERCENT_FLAG 279
+#define PERCENT_FILE_PREFIX 280
+#define PERCENT_GLR_PARSER 281
+#define PERCENT_INITIAL_ACTION 282
+#define PERCENT_LANGUAGE 283
+#define PERCENT_NAME_PREFIX 284
+#define PERCENT_NO_DEFAULT_PREC 285
+#define PERCENT_NO_LINES 286
+#define PERCENT_NONDETERMINISTIC_PARSER 287
+#define PERCENT_OUTPUT 288
+#define PERCENT_REQUIRE 289
+#define PERCENT_SKELETON 290
+#define PERCENT_START 291
+#define PERCENT_TOKEN_TABLE 292
+#define PERCENT_VERBOSE 293
+#define PERCENT_YACC 294
+#define BRACED_CODE 295
+#define BRACKETED_ID 296
+#define CHAR 297
+#define EPILOGUE 298
+#define EQUAL 299
+#define ID 300
+#define ID_COLON 301
+#define PERCENT_PERCENT 302
+#define PIPE 303
+#define PROLOGUE 304
+#define SEMICOLON 305
+#define TAG 306
+#define TAG_ANY 307
+#define TAG_NONE 308
+#define PERCENT_PARAM 309
+#define PERCENT_UNION 310
 
 
 
 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
 typedef union YYSTYPE
 {
-/* Line 1535 of yacc.c  */
-#line 97 "parse-gram.y"
+/* Line 1658 of yacc.c  */
+#line 87 "src/parse-gram.y"
 
+  assoc assoc;
+  char *code;
+  char const *chars;
+  int integer;
+  named_ref *named_ref;
   symbol *symbol;
   symbol_list *list;
-  int integer;
-  char const *chars;
-  char *code;
-  assoc assoc;
   uniqstr uniqstr;
   unsigned char character;
-}
 
-/* Line 1535 of yacc.c  */
-#line 183 "parse-gram.h"
-       YYSTYPE;
+/* Line 1658 of yacc.c  */
+#line 225 "src/parse-gram.y"
+
+  param_type param;
+
+
+/* Line 1658 of yacc.c  */
+#line 196 "src/parse-gram.h"
+} YYSTYPE;
 # define YYSTYPE_IS_TRIVIAL 1
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
@@ -203,4 +216,3 @@ typedef struct YYLTYPE
 
 
 
-