source: src/Parser/parser.h@ a7c90d4

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 a7c90d4 was a7c90d4, checked in by Peter A. Buhr <pabuhr@…>, 9 years ago

change StorageClass to bitset, support _Thread_local as separate storage-class

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