1 | /* A Bison parser, made by GNU Bison 3.5.1. */ 2 | 3 | /* Bison interface for Yacc-like parsers in C 4 | 5 | Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2020 Free Software Foundation, 6 | 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 3 of the License, or 11 | (at your option) 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, see <http://www.gnu.org/licenses/>. */ 20 | 21 | /* As a special exception, you may create a larger work that contains 22 | part or all of the Bison parser skeleton and distribute that work 23 | under terms of your choice, so long as that work isn't itself a 24 | parser generator using the skeleton or a modified version thereof 25 | as a parser skeleton. Alternatively, if you modify or redistribute 26 | the parser skeleton itself, you may (at your option) remove this 27 | special exception, which will cause the skeleton and the resulting 28 | Bison output files to be licensed under the GNU General Public 29 | License without this special exception. 30 | 31 | This special exception was added by the Free Software Foundation in 32 | version 2.2 of Bison. */ 33 | 34 | /* Undocumented macros, especially those whose name start with YY_, 35 | are private implementation details. Do not rely on them. */ 36 | 37 | #ifndef YY_YY_Y_TAB_H_INCLUDED 38 | # define YY_YY_Y_TAB_H_INCLUDED 39 | /* Debug traces. */ 40 | #ifndef YYDEBUG 41 | # define YYDEBUG 0 42 | #endif 43 | #if YYDEBUG 44 | extern int yydebug; 45 | #endif 46 | 47 | /* Token type. */ 48 | #ifndef YYTOKENTYPE 49 | # define YYTOKENTYPE 50 | enum yytokentype 51 | { 52 | IDENTIFIER = 258, 53 | TYPE_NAME = 259, 54 | LITERAL = 260, 55 | STRING_LITERAL = 261, 56 | ELLIPSES = 262, 57 | MUL_ASSIGN = 263, 58 | DIV_ASSIGN = 264, 59 | MOD_ASSIGN = 265, 60 | ADD_ASSIGN = 266, 61 | SUB_ASSIGN = 267, 62 | LEFT_ASSIGN = 268, 63 | RIGHT_ASSIGN = 269, 64 | AND_ASSIGN = 270, 65 | XOR_ASSIGN = 271, 66 | OR_ASSIGN = 272, 67 | EQ_OP = 273, 68 | NE_OP = 274, 69 | PTR_OP = 275, 70 | AND_OP = 276, 71 | OR_OP = 277, 72 | DEC_OP = 278, 73 | INC_OP = 279, 74 | LE_OP = 280, 75 | GE_OP = 281, 76 | LEFT_SHIFT = 282, 77 | RIGHT_SHIFT = 283, 78 | SIZEOF = 284, 79 | TYPEDEF = 285, 80 | EXTERN = 286, 81 | STATIC = 287, 82 | AUTO = 288, 83 | REGISTER = 289, 84 | CONST = 290, 85 | VOLATILE = 291, 86 | VOID = 292, 87 | INLINE = 293, 88 | CHAR = 294, 89 | SHORT = 295, 90 | INT = 296, 91 | LONG = 297, 92 | SIGNED = 298, 93 | UNSIGNED = 299, 94 | FLOAT = 300, 95 | DOUBLE = 301, 96 | BOOL = 302, 97 | STRUCT = 303, 98 | UNION = 304, 99 | ENUM = 305, 100 | CASE = 306, 101 | DEFAULT = 307, 102 | IF = 308, 103 | ELSE = 309, 104 | SWITCH = 310, 105 | WHILE = 311, 106 | DO = 312, 107 | FOR = 313, 108 | GOTO = 314, 109 | CONTINUE = 315, 110 | BREAK = 316, 111 | RETURN = 317, 112 | ASM = 318 113 | }; 114 | #endif 115 | /* Tokens. */ 116 | #define IDENTIFIER 258 117 | #define TYPE_NAME 259 118 | #define LITERAL 260 119 | #define STRING_LITERAL 261 120 | #define ELLIPSES 262 121 | #define MUL_ASSIGN 263 122 | #define DIV_ASSIGN 264 123 | #define MOD_ASSIGN 265 124 | #define ADD_ASSIGN 266 125 | #define SUB_ASSIGN 267 126 | #define LEFT_ASSIGN 268 127 | #define RIGHT_ASSIGN 269 128 | #define AND_ASSIGN 270 129 | #define XOR_ASSIGN 271 130 | #define OR_ASSIGN 272 131 | #define EQ_OP 273 132 | #define NE_OP 274 133 | #define PTR_OP 275 134 | #define AND_OP 276 135 | #define OR_OP 277 136 | #define DEC_OP 278 137 | #define INC_OP 279 138 | #define LE_OP 280 139 | #define GE_OP 281 140 | #define LEFT_SHIFT 282 141 | #define RIGHT_SHIFT 283 142 | #define SIZEOF 284 143 | #define TYPEDEF 285 144 | #define EXTERN 286 145 | #define STATIC 287 146 | #define AUTO 288 147 | #define REGISTER 289 148 | #define CONST 290 149 | #define VOLATILE 291 150 | #define VOID 292 151 | #define INLINE 293 152 | #define CHAR 294 153 | #define SHORT 295 154 | #define INT 296 155 | #define LONG 297 156 | #define SIGNED 298 157 | #define UNSIGNED 299 158 | #define FLOAT 300 159 | #define DOUBLE 301 160 | #define BOOL 302 161 | #define STRUCT 303 162 | #define UNION 304 163 | #define ENUM 305 164 | #define CASE 306 165 | #define DEFAULT 307 166 | #define IF 308 167 | #define ELSE 309 168 | #define SWITCH 310 169 | #define WHILE 311 170 | #define DO 312 171 | #define FOR 313 172 | #define GOTO 314 173 | #define CONTINUE 315 174 | #define BREAK 316 175 | #define RETURN 317 176 | #define ASM 318 177 | 178 | /* Value type. */ 179 | #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED 180 | typedef int YYSTYPE; 181 | # define YYSTYPE_IS_TRIVIAL 1 182 | # define YYSTYPE_IS_DECLARED 1 183 | #endif 184 | 185 | 186 | extern YYSTYPE yylval; 187 | 188 | int yyparse (void); 189 | 190 | #endif /* !YY_YY_Y_TAB_H_INCLUDED */