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 |