source: src/Parser/parser.h@ 258eb5c9

ADT aaron-thesis arm-eh ast-experimental cleanup-dtors ctor deferred_resn demangler enum forall-pointer-decay gc_noraii jacob/cs343-translation jenkins-sandbox memory new-ast new-ast-unique-expr new-env no_list persistent-indexer pthread-emulation qualifiedEnum resolv-new string with_gc
Last change on this file since 258eb5c9 was 097e2b0, checked in by Peter A. Buhr <pabuhr@…>, 10 years ago

constructor/destructor, more example programs

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