1 /* A Bison parser, made by GNU Bison 2.2a. */ 2 3 /* Skeleton interface for Bison's Yacc-like parsers in C 4 5 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 6 Free Software Foundation, Inc. 7 8 This program is free software; you can redistribute it and/or modify 9 it under the terms of the GNU General Public License as published by 10 the Free Software Foundation; either version 2, or (at your option) 11 any later version. 12 13 This program is distributed in the hope that it will be useful, 14 but WITHOUT ANY WARRANTY; without even the implied warranty of 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 GNU General Public License for more details. 17 18 You should have received a copy of the GNU General Public License 19 along with this program; if not, write to the Free Software 20 Foundation, Inc., 51 Franklin Street, Fifth Floor, 21 Boston, MA 02110-1301, USA. */ 22 23 /* As a special exception, you may create a larger work that contains 24 part or all of the Bison parser skeleton and distribute that work 25 under terms of your choice, so long as that work isn't itself a 26 parser generator using the skeleton or a modified version thereof 27 as a parser skeleton. Alternatively, if you modify or redistribute 28 the parser skeleton itself, you may (at your option) remove this 29 special exception, which will cause the skeleton and the resulting 30 Bison output files to be licensed under the GNU General Public 31 License without this special exception. 32 33 This special exception was added by the Free Software Foundation in 34 version 2.2 of Bison. */ 35 36 /* Tokens. */ 37 #ifndef YYTOKENTYPE 38 # define YYTOKENTYPE 39 /* Put the tokens into the symbol table, so that GDB and other debuggers 40 know about them. */ 41 enum yytokentype { 42 GRAM_EOF = 0, 43 STRING = 258, 44 INT = 259, 45 PERCENT_TOKEN = 260, 46 PERCENT_NTERM = 261, 47 PERCENT_TYPE = 262, 48 PERCENT_DESTRUCTOR = 263, 49 PERCENT_PRINTER = 264, 50 PERCENT_UNION = 265, 51 PERCENT_LEFT = 266, 52 PERCENT_RIGHT = 267, 53 PERCENT_NONASSOC = 268, 54 PERCENT_PREC = 269, 55 PERCENT_DPREC = 270, 56 PERCENT_MERGE = 271, 57 PERCENT_DEBUG = 272, 58 PERCENT_DEFAULT_PREC = 273, 59 PERCENT_DEFINE = 274, 60 PERCENT_DEFINES = 275, 61 PERCENT_ERROR_VERBOSE = 276, 62 PERCENT_EXPECT = 277, 63 PERCENT_EXPECT_RR = 278, 64 PERCENT_FILE_PREFIX = 279, 65 PERCENT_GLR_PARSER = 280, 66 PERCENT_INITIAL_ACTION = 281, 67 PERCENT_LEX_PARAM = 282, 68 PERCENT_LOCATIONS = 283, 69 PERCENT_NAME_PREFIX = 284, 70 PERCENT_NO_DEFAULT_PREC = 285, 71 PERCENT_NO_LINES = 286, 72 PERCENT_NONDETERMINISTIC_PARSER = 287, 73 PERCENT_OUTPUT = 288, 74 PERCENT_PARSE_PARAM = 289, 75 PERCENT_PURE_PARSER = 290, 76 PERCENT_REQUIRE = 291, 77 PERCENT_SKELETON = 292, 78 PERCENT_START = 293, 79 PERCENT_TOKEN_TABLE = 294, 80 PERCENT_VERBOSE = 295, 81 PERCENT_YACC = 296, 82 TYPE = 297, 83 EQUAL = 298, 84 SEMICOLON = 299, 85 PIPE = 300, 86 ID = 301, 87 ID_COLON = 302, 88 PERCENT_PERCENT = 303, 89 PROLOGUE = 304, 90 EPILOGUE = 305, 91 BRACED_CODE = 306 92 }; 93 #endif 94 /* Tokens. */ 95 #define GRAM_EOF 0 96 #define STRING 258 97 #define INT 259 98 #define PERCENT_TOKEN 260 99 #define PERCENT_NTERM 261 100 #define PERCENT_TYPE 262 101 #define PERCENT_DESTRUCTOR 263 102 #define PERCENT_PRINTER 264 103 #define PERCENT_UNION 265 104 #define PERCENT_LEFT 266 105 #define PERCENT_RIGHT 267 106 #define PERCENT_NONASSOC 268 107 #define PERCENT_PREC 269 108 #define PERCENT_DPREC 270 109 #define PERCENT_MERGE 271 110 #define PERCENT_DEBUG 272 111 #define PERCENT_DEFAULT_PREC 273 112 #define PERCENT_DEFINE 274 113 #define PERCENT_DEFINES 275 114 #define PERCENT_ERROR_VERBOSE 276 115 #define PERCENT_EXPECT 277 116 #define PERCENT_EXPECT_RR 278 117 #define PERCENT_FILE_PREFIX 279 118 #define PERCENT_GLR_PARSER 280 119 #define PERCENT_INITIAL_ACTION 281 120 #define PERCENT_LEX_PARAM 282 121 #define PERCENT_LOCATIONS 283 122 #define PERCENT_NAME_PREFIX 284 123 #define PERCENT_NO_DEFAULT_PREC 285 124 #define PERCENT_NO_LINES 286 125 #define PERCENT_NONDETERMINISTIC_PARSER 287 126 #define PERCENT_OUTPUT 288 127 #define PERCENT_PARSE_PARAM 289 128 #define PERCENT_PURE_PARSER 290 129 #define PERCENT_REQUIRE 291 130 #define PERCENT_SKELETON 292 131 #define PERCENT_START 293 132 #define PERCENT_TOKEN_TABLE 294 133 #define PERCENT_VERBOSE 295 134 #define PERCENT_YACC 296 135 #define TYPE 297 136 #define EQUAL 298 137 #define SEMICOLON 299 138 #define PIPE 300 139 #define ID 301 140 #define ID_COLON 302 141 #define PERCENT_PERCENT 303 142 #define PROLOGUE 304 143 #define EPILOGUE 305 144 #define BRACED_CODE 306 145 146 147 148 149 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 150 typedef union YYSTYPE 151 #line 94 "parse-gram.y" 152 { 153 symbol *symbol; 154 symbol_list *list; 155 int integer; 156 char *chars; 157 assoc assoc; 158 uniqstr uniqstr; 159 } 160 /* Line 1529 of yacc.c. */ 161 #line 162 "parse-gram.h" 162 YYSTYPE; 163 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ 164 # define YYSTYPE_IS_DECLARED 1 165 # define YYSTYPE_IS_TRIVIAL 1 166 #endif 167 168 169 170 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED 171 typedef struct YYLTYPE 172 { 173 int first_line; 174 int first_column; 175 int last_line; 176 int last_column; 177 } YYLTYPE; 178 # define yyltype YYLTYPE /* obsolescent; will be withdrawn */ 179 # define YYLTYPE_IS_DECLARED 1 180 # define YYLTYPE_IS_TRIVIAL 1 181 #endif 182 183 184