1 | /* A Bison parser, made by GNU Bison 2.3. */ 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 | IDENTIFIER = 258, 43 | TYPE_NAME = 259, 44 | LITERAL = 260, 45 | STRING_LITERAL = 261, 46 | ELLIPSES = 262, 47 | MUL_ASSIGN = 263, 48 | DIV_ASSIGN = 264, 49 | MOD_ASSIGN = 265, 50 | ADD_ASSIGN = 266, 51 | SUB_ASSIGN = 267, 52 | LEFT_ASSIGN = 268, 53 | RIGHT_ASSIGN = 269, 54 | AND_ASSIGN = 270, 55 | XOR_ASSIGN = 271, 56 | OR_ASSIGN = 272, 57 | EQ_OP = 273, 58 | NE_OP = 274, 59 | PTR_OP = 275, 60 | AND_OP = 276, 61 | OR_OP = 277, 62 | DEC_OP = 278, 63 | INC_OP = 279, 64 | LE_OP = 280, 65 | GE_OP = 281, 66 | LEFT_SHIFT = 282, 67 | RIGHT_SHIFT = 283, 68 | SIZEOF = 284, 69 | TYPEDEF = 285, 70 | EXTERN = 286, 71 | STATIC = 287, 72 | AUTO = 288, 73 | REGISTER = 289, 74 | CONST = 290, 75 | VOLATILE = 291, 76 | VOID = 292, 77 | INLINE = 293, 78 | CHAR = 294, 79 | SHORT = 295, 80 | INT = 296, 81 | LONG = 297, 82 | SIGNED = 298, 83 | UNSIGNED = 299, 84 | FLOAT = 300, 85 | DOUBLE = 301, 86 | BOOL = 302, 87 | STRUCT = 303, 88 | UNION = 304, 89 | ENUM = 305, 90 | CASE = 306, 91 | DEFAULT = 307, 92 | IF = 308, 93 | ELSE = 309, 94 | SWITCH = 310, 95 | WHILE = 311, 96 | DO = 312, 97 | FOR = 313, 98 | GOTO = 314, 99 | CONTINUE = 315, 100 | BREAK = 316, 101 | RETURN = 317, 102 | ASM = 318 103 | }; 104 | #endif 105 | /* Tokens. */ 106 | #define IDENTIFIER 258 107 | #define TYPE_NAME 259 108 | #define LITERAL 260 109 | #define STRING_LITERAL 261 110 | #define ELLIPSES 262 111 | #define MUL_ASSIGN 263 112 | #define DIV_ASSIGN 264 113 | #define MOD_ASSIGN 265 114 | #define ADD_ASSIGN 266 115 | #define SUB_ASSIGN 267 116 | #define LEFT_ASSIGN 268 117 | #define RIGHT_ASSIGN 269 118 | #define AND_ASSIGN 270 119 | #define XOR_ASSIGN 271 120 | #define OR_ASSIGN 272 121 | #define EQ_OP 273 122 | #define NE_OP 274 123 | #define PTR_OP 275 124 | #define AND_OP 276 125 | #define OR_OP 277 126 | #define DEC_OP 278 127 | #define INC_OP 279 128 | #define LE_OP 280 129 | #define GE_OP 281 130 | #define LEFT_SHIFT 282 131 | #define RIGHT_SHIFT 283 132 | #define SIZEOF 284 133 | #define TYPEDEF 285 134 | #define EXTERN 286 135 | #define STATIC 287 136 | #define AUTO 288 137 | #define REGISTER 289 138 | #define CONST 290 139 | #define VOLATILE 291 140 | #define VOID 292 141 | #define INLINE 293 142 | #define CHAR 294 143 | #define SHORT 295 144 | #define INT 296 145 | #define LONG 297 146 | #define SIGNED 298 147 | #define UNSIGNED 299 148 | #define FLOAT 300 149 | #define DOUBLE 301 150 | #define BOOL 302 151 | #define STRUCT 303 152 | #define UNION 304 153 | #define ENUM 305 154 | #define CASE 306 155 | #define DEFAULT 307 156 | #define IF 308 157 | #define ELSE 309 158 | #define SWITCH 310 159 | #define WHILE 311 160 | #define DO 312 161 | #define FOR 313 162 | #define GOTO 314 163 | #define CONTINUE 315 164 | #define BREAK 316 165 | #define RETURN 317 166 | #define ASM 318 167 | 168 | 169 | 170 | 171 | #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 172 | typedef int YYSTYPE; 173 | # define yystype YYSTYPE /* obsolescent; will be withdrawn */ 174 | # define YYSTYPE_IS_DECLARED 1 175 | # define YYSTYPE_IS_TRIVIAL 1 176 | #endif 177 | 178 | extern YYSTYPE yylval; 179 |