source: src/Parser/parser.h@ 2d59d53

ADT aaron-thesis arm-eh ast-experimental cleanup-dtors deferred_resn demangler enum forall-pointer-decay jacob/cs343-translation jenkins-sandbox new-ast new-ast-unique-expr new-env no_list persistent-indexer pthread-emulation qualifiedEnum resolv-new with_gc
Last change on this file since 2d59d53 was 148f7290, checked in by Thierry Delisle <tdelisle@…>, 9 years ago

Propagate zero_t one_t from parser to backend

  • Property mode set to 100644
File size: 6.6 KB
Line 
1/* A Bison parser, made by GNU Bison 3.0.2. */
2
3/* Bison interface for Yacc-like parsers in C
4
5 Copyright (C) 1984, 1989-1990, 2000-2013 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#ifndef YY_YY_PARSER_PARSER_H_INCLUDED
34# define YY_YY_PARSER_PARSER_H_INCLUDED
35/* Debug traces. */
36#ifndef YYDEBUG
37# define YYDEBUG 1
38#endif
39#if YYDEBUG
40extern int yydebug;
41#endif
42
43/* Token type. */
44#ifndef YYTOKENTYPE
45# define YYTOKENTYPE
46 enum yytokentype
47 {
48 TYPEDEF = 258,
49 AUTO = 259,
50 EXTERN = 260,
51 REGISTER = 261,
52 STATIC = 262,
53 INLINE = 263,
54 FORTRAN = 264,
55 CONST = 265,
56 VOLATILE = 266,
57 RESTRICT = 267,
58 FORALL = 268,
59 LVALUE = 269,
60 VOID = 270,
61 CHAR = 271,
62 SHORT = 272,
63 INT = 273,
64 LONG = 274,
65 FLOAT = 275,
66 DOUBLE = 276,
67 SIGNED = 277,
68 UNSIGNED = 278,
69 ZERO_T = 279,
70 ONE_T = 280,
71 VALIST = 281,
72 BOOL = 282,
73 COMPLEX = 283,
74 IMAGINARY = 284,
75 TYPEOF = 285,
76 LABEL = 286,
77 ENUM = 287,
78 STRUCT = 288,
79 UNION = 289,
80 OTYPE = 290,
81 FTYPE = 291,
82 DTYPE = 292,
83 TRAIT = 293,
84 SIZEOF = 294,
85 OFFSETOF = 295,
86 ATTRIBUTE = 296,
87 EXTENSION = 297,
88 IF = 298,
89 ELSE = 299,
90 SWITCH = 300,
91 CASE = 301,
92 DEFAULT = 302,
93 DO = 303,
94 WHILE = 304,
95 FOR = 305,
96 BREAK = 306,
97 CONTINUE = 307,
98 GOTO = 308,
99 RETURN = 309,
100 CHOOSE = 310,
101 DISABLE = 311,
102 ENABLE = 312,
103 FALLTHRU = 313,
104 TRY = 314,
105 CATCH = 315,
106 CATCHRESUME = 316,
107 FINALLY = 317,
108 THROW = 318,
109 THROWRESUME = 319,
110 AT = 320,
111 ASM = 321,
112 ALIGNAS = 322,
113 ALIGNOF = 323,
114 ATOMIC = 324,
115 GENERIC = 325,
116 NORETURN = 326,
117 STATICASSERT = 327,
118 THREADLOCAL = 328,
119 IDENTIFIER = 329,
120 QUOTED_IDENTIFIER = 330,
121 TYPEDEFname = 331,
122 TYPEGENname = 332,
123 ATTR_IDENTIFIER = 333,
124 ATTR_TYPEDEFname = 334,
125 ATTR_TYPEGENname = 335,
126 INTEGERconstant = 336,
127 CHARACTERconstant = 337,
128 STRINGliteral = 338,
129 REALDECIMALconstant = 339,
130 REALFRACTIONconstant = 340,
131 FLOATINGconstant = 341,
132 ZERO = 342,
133 ONE = 343,
134 ARROW = 344,
135 ICR = 345,
136 DECR = 346,
137 LS = 347,
138 RS = 348,
139 LE = 349,
140 GE = 350,
141 EQ = 351,
142 NE = 352,
143 ANDAND = 353,
144 OROR = 354,
145 ELLIPSIS = 355,
146 MULTassign = 356,
147 DIVassign = 357,
148 MODassign = 358,
149 PLUSassign = 359,
150 MINUSassign = 360,
151 LSassign = 361,
152 RSassign = 362,
153 ANDassign = 363,
154 ERassign = 364,
155 ORassign = 365,
156 ATassign = 366,
157 THEN = 367
158 };
159#endif
160/* Tokens. */
161#define TYPEDEF 258
162#define AUTO 259
163#define EXTERN 260
164#define REGISTER 261
165#define STATIC 262
166#define INLINE 263
167#define FORTRAN 264
168#define CONST 265
169#define VOLATILE 266
170#define RESTRICT 267
171#define FORALL 268
172#define LVALUE 269
173#define VOID 270
174#define CHAR 271
175#define SHORT 272
176#define INT 273
177#define LONG 274
178#define FLOAT 275
179#define DOUBLE 276
180#define SIGNED 277
181#define UNSIGNED 278
182#define ZERO_T 279
183#define ONE_T 280
184#define VALIST 281
185#define BOOL 282
186#define COMPLEX 283
187#define IMAGINARY 284
188#define TYPEOF 285
189#define LABEL 286
190#define ENUM 287
191#define STRUCT 288
192#define UNION 289
193#define OTYPE 290
194#define FTYPE 291
195#define DTYPE 292
196#define TRAIT 293
197#define SIZEOF 294
198#define OFFSETOF 295
199#define ATTRIBUTE 296
200#define EXTENSION 297
201#define IF 298
202#define ELSE 299
203#define SWITCH 300
204#define CASE 301
205#define DEFAULT 302
206#define DO 303
207#define WHILE 304
208#define FOR 305
209#define BREAK 306
210#define CONTINUE 307
211#define GOTO 308
212#define RETURN 309
213#define CHOOSE 310
214#define DISABLE 311
215#define ENABLE 312
216#define FALLTHRU 313
217#define TRY 314
218#define CATCH 315
219#define CATCHRESUME 316
220#define FINALLY 317
221#define THROW 318
222#define THROWRESUME 319
223#define AT 320
224#define ASM 321
225#define ALIGNAS 322
226#define ALIGNOF 323
227#define ATOMIC 324
228#define GENERIC 325
229#define NORETURN 326
230#define STATICASSERT 327
231#define THREADLOCAL 328
232#define IDENTIFIER 329
233#define QUOTED_IDENTIFIER 330
234#define TYPEDEFname 331
235#define TYPEGENname 332
236#define ATTR_IDENTIFIER 333
237#define ATTR_TYPEDEFname 334
238#define ATTR_TYPEGENname 335
239#define INTEGERconstant 336
240#define CHARACTERconstant 337
241#define STRINGliteral 338
242#define REALDECIMALconstant 339
243#define REALFRACTIONconstant 340
244#define FLOATINGconstant 341
245#define ZERO 342
246#define ONE 343
247#define ARROW 344
248#define ICR 345
249#define DECR 346
250#define LS 347
251#define RS 348
252#define LE 349
253#define GE 350
254#define EQ 351
255#define NE 352
256#define ANDAND 353
257#define OROR 354
258#define ELLIPSIS 355
259#define MULTassign 356
260#define DIVassign 357
261#define MODassign 358
262#define PLUSassign 359
263#define MINUSassign 360
264#define LSassign 361
265#define RSassign 362
266#define ANDassign 363
267#define ERassign 364
268#define ORassign 365
269#define ATassign 366
270#define THEN 367
271
272/* Value type. */
273#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
274typedef union YYSTYPE YYSTYPE;
275union YYSTYPE
276{
277#line 120 "parser.yy" /* yacc.c:1909 */
278
279 Token tok;
280 ParseNode *pn;
281 ExpressionNode *en;
282 DeclarationNode *decl;
283 DeclarationNode::Aggregate aggKey;
284 DeclarationNode::TypeClass tclass;
285 StatementNode *sn;
286 ConstantExpr *constant;
287 ForCtl *fctl;
288 LabelNode *label;
289 InitializerNode *in;
290 OperKinds op;
291 std::string *str;
292 bool flag;
293
294#line 295 "Parser/parser.h" /* yacc.c:1909 */
295};
296# define YYSTYPE_IS_TRIVIAL 1
297# define YYSTYPE_IS_DECLARED 1
298#endif
299
300
301extern YYSTYPE yylval;
302
303int yyparse (void);
304
305#endif /* !YY_YY_PARSER_PARSER_H_INCLUDED */
Note: See TracBrowser for help on using the repository browser.