source: src/Parser/parser.h @ d7bcbf5

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsdeferred_resndemanglerenumforall-pointer-decayjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newwith_gc
Last change on this file since d7bcbf5 was 148f7290, checked in by Thierry Delisle <tdelisle@…>, 7 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.