1 | /* A Bison parser, made by GNU Bison 2.5. */ 2 | 3 | /* Bison interface for Yacc-like parsers in C 4 | 5 | Copyright (C) 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. 6 | 7 | This program is free software: you can redistribute it and/or modify 8 | it under the terms of the GNU General Public License as published by 9 | the Free Software Foundation, either version 3 of the License, or 10 | (at your option) any later version. 11 | 12 | This program is distributed in the hope that it will be useful, 13 | but WITHOUT ANY WARRANTY; without even the implied warranty of 14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 | GNU General Public License for more details. 16 | 17 | You should have received a copy of the GNU General Public License 18 | along with this program. If not, see <http://www.gnu.org/licenses/>. */ 19 | 20 | /* As a special exception, you may create a larger work that contains 21 | part or all of the Bison parser skeleton and distribute that work 22 | under terms of your choice, so long as that work isn't itself a 23 | parser generator using the skeleton or a modified version thereof 24 | as a parser skeleton. Alternatively, if you modify or redistribute 25 | the parser skeleton itself, you may (at your option) remove this 26 | special exception, which will cause the skeleton and the resulting 27 | Bison output files to be licensed under the GNU General Public 28 | License without this special exception. 29 | 30 | This special exception was added by the Free Software Foundation in 31 | version 2.2 of Bison. */ 32 | 33 | 34 | /* Tokens. */ 35 | #ifndef YYTOKENTYPE 36 | # define YYTOKENTYPE 37 | /* Put the tokens into the symbol table, so that GDB and other debuggers 38 | know about them. */ 39 | enum yytokentype { 40 | IDENTIFIER = 258, 41 | TYPE_NAME = 259, 42 | LITERAL = 260, 43 | STRING_LITERAL = 261, 44 | ELLIPSES = 262, 45 | MUL_ASSIGN = 263, 46 | DIV_ASSIGN = 264, 47 | MOD_ASSIGN = 265, 48 | ADD_ASSIGN = 266, 49 | SUB_ASSIGN = 267, 50 | LEFT_ASSIGN = 268, 51 | RIGHT_ASSIGN = 269, 52 | AND_ASSIGN = 270, 53 | XOR_ASSIGN = 271, 54 | OR_ASSIGN = 272, 55 | EQ_OP = 273, 56 | NE_OP = 274, 57 | PTR_OP = 275, 58 | AND_OP = 276, 59 | OR_OP = 277, 60 | DEC_OP = 278, 61 | INC_OP = 279, 62 | LE_OP = 280, 63 | GE_OP = 281, 64 | LEFT_SHIFT = 282, 65 | RIGHT_SHIFT = 283, 66 | SIZEOF = 284, 67 | TYPEDEF = 285, 68 | EXTERN = 286, 69 | STATIC = 287, 70 | AUTO = 288, 71 | REGISTER = 289, 72 | CONST = 290, 73 | VOLATILE = 291, 74 | VOID = 292, 75 | INLINE = 293, 76 | CHAR = 294, 77 | SHORT = 295, 78 | INT = 296, 79 | LONG = 297, 80 | SIGNED = 298, 81 | UNSIGNED = 299, 82 | FLOAT = 300, 83 | DOUBLE = 301, 84 | BOOL = 302, 85 | STRUCT = 303, 86 | UNION = 304, 87 | ENUM = 305, 88 | CASE = 306, 89 | DEFAULT = 307, 90 | IF = 308, 91 | ELSE = 309, 92 | SWITCH = 310, 93 | WHILE = 311, 94 | DO = 312, 95 | FOR = 313, 96 | GOTO = 314, 97 | CONTINUE = 315, 98 | BREAK = 316, 99 | RETURN = 317, 100 | ASM = 318 101 | }; 102 | #endif 103 | /* Tokens. */ 104 | #define IDENTIFIER 258 105 | #define TYPE_NAME 259 106 | #define LITERAL 260 107 | #define STRING_LITERAL 261 108 | #define ELLIPSES 262 109 | #define MUL_ASSIGN 263 110 | #define DIV_ASSIGN 264 111 | #define MOD_ASSIGN 265 112 | #define ADD_ASSIGN 266 113 | #define SUB_ASSIGN 267 114 | #define LEFT_ASSIGN 268 115 | #define RIGHT_ASSIGN 269 116 | #define AND_ASSIGN 270 117 | #define XOR_ASSIGN 271 118 | #define OR_ASSIGN 272 119 | #define EQ_OP 273 120 | #define NE_OP 274 121 | #define PTR_OP 275 122 | #define AND_OP 276 123 | #define OR_OP 277 124 | #define DEC_OP 278 125 | #define INC_OP 279 126 | #define LE_OP 280 127 | #define GE_OP 281 128 | #define LEFT_SHIFT 282 129 | #define RIGHT_SHIFT 283 130 | #define SIZEOF 284 131 | #define TYPEDEF 285 132 | #define EXTERN 286 133 | #define STATIC 287 134 | #define AUTO 288 135 | #define REGISTER 289 136 | #define CONST 290 137 | #define VOLATILE 291 138 | #define VOID 292 139 | #define INLINE 293 140 | #define CHAR 294 141 | #define SHORT 295 142 | #define INT 296 143 | #define LONG 297 144 | #define SIGNED 298 145 | #define UNSIGNED 299 146 | #define FLOAT 300 147 | #define DOUBLE 301 148 | #define BOOL 302 149 | #define STRUCT 303 150 | #define UNION 304 151 | #define ENUM 305 152 | #define CASE 306 153 | #define DEFAULT 307 154 | #define IF 308 155 | #define ELSE 309 156 | #define SWITCH 310 157 | #define WHILE 311 158 | #define DO 312 159 | #define FOR 313 160 | #define GOTO 314 161 | #define CONTINUE 315 162 | #define BREAK 316 163 | #define RETURN 317 164 | #define ASM 318 165 | 166 | 167 | 168 | 169 | #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 170 | typedef int YYSTYPE; 171 | # define YYSTYPE_IS_TRIVIAL 1 172 | # define yystype YYSTYPE /* obsolescent; will be withdrawn */ 173 | # define YYSTYPE_IS_DECLARED 1 174 | #endif 175 | 176 | extern YYSTYPE yylval; 177 | 178 |