-
Notifications
You must be signed in to change notification settings - Fork 1
/
y.tab.h
431 lines (379 loc) · 8.18 KB
/
y.tab.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
#ifndef YY_parse_h_included
#define YY_parse_h_included
/*#define YY_USE_CLASS
*/
#line 1 "/usr/share/bison++/bison.h"
/* before anything */
#ifdef c_plusplus
#ifndef __cplusplus
#define __cplusplus
#endif
#endif
#line 8 "/usr/share/bison++/bison.h"
#line 21 "/usr/share/bison++/bison.h"
/* %{ and %header{ and %union, during decl */
#ifndef YY_parse_COMPATIBILITY
#ifndef YY_USE_CLASS
#define YY_parse_COMPATIBILITY 1
#else
#define YY_parse_COMPATIBILITY 0
#endif
#endif
#if YY_parse_COMPATIBILITY != 0
/* backward compatibility */
#ifdef YYLTYPE
#ifndef YY_parse_LTYPE
#define YY_parse_LTYPE YYLTYPE
/* WARNING obsolete !!! user defined YYLTYPE not reported into generated header */
/* use %define LTYPE */
#endif
#endif
/*#ifdef YYSTYPE*/
#ifndef YY_parse_STYPE
#define YY_parse_STYPE YYSTYPE
/* WARNING obsolete !!! user defined YYSTYPE not reported into generated header */
/* use %define STYPE */
#endif
/*#endif*/
#ifdef YYDEBUG
#ifndef YY_parse_DEBUG
#define YY_parse_DEBUG YYDEBUG
/* WARNING obsolete !!! user defined YYDEBUG not reported into generated header */
/* use %define DEBUG */
#endif
#endif
/* use goto to be compatible */
#ifndef YY_parse_USE_GOTO
#define YY_parse_USE_GOTO 1
#endif
#endif
/* use no goto to be clean in C++ */
#ifndef YY_parse_USE_GOTO
#define YY_parse_USE_GOTO 0
#endif
#ifndef YY_parse_PURE
#line 65 "/usr/share/bison++/bison.h"
#line 65 "/usr/share/bison++/bison.h"
/* YY_parse_PURE */
#endif
#line 68 "/usr/share/bison++/bison.h"
#ifndef YY_USE_CLASS
# ifndef YYSTYPE
# define YYSTYPE int
# define YYSTYPE_IS_TRIVIAL 1
# endif
#endif
#line 68 "/usr/share/bison++/bison.h"
/* prefix */
#ifndef YY_parse_DEBUG
#line 71 "/usr/share/bison++/bison.h"
#line 71 "/usr/share/bison++/bison.h"
/* YY_parse_DEBUG */
#endif
#ifndef YY_parse_LSP_NEEDED
#line 75 "/usr/share/bison++/bison.h"
#line 75 "/usr/share/bison++/bison.h"
/* YY_parse_LSP_NEEDED*/
#endif
/* DEFAULT LTYPE*/
#ifdef YY_parse_LSP_NEEDED
#ifndef YY_parse_LTYPE
#ifndef BISON_YYLTYPE_ISDECLARED
#define BISON_YYLTYPE_ISDECLARED
typedef
struct yyltype
{
int timestamp;
int first_line;
int first_column;
int last_line;
int last_column;
char *text;
}
yyltype;
#endif
#define YY_parse_LTYPE yyltype
#endif
#endif
/* DEFAULT STYPE*/
#ifndef YY_parse_STYPE
#define YY_parse_STYPE int
#endif
/* DEFAULT MISCELANEOUS */
#ifndef YY_parse_PARSE
#define YY_parse_PARSE yyparse
#endif
#ifndef YY_parse_LEX
#define YY_parse_LEX yylex
#endif
#ifndef YY_parse_LVAL
#define YY_parse_LVAL yylval
#endif
#ifndef YY_parse_LLOC
#define YY_parse_LLOC yylloc
#endif
#ifndef YY_parse_CHAR
#define YY_parse_CHAR yychar
#endif
#ifndef YY_parse_NERRS
#define YY_parse_NERRS yynerrs
#endif
#ifndef YY_parse_DEBUG_FLAG
#define YY_parse_DEBUG_FLAG yydebug
#endif
#ifndef YY_parse_ERROR
#define YY_parse_ERROR yyerror
#endif
#ifndef YY_parse_PARSE_PARAM
#ifndef __STDC__
#ifndef __cplusplus
#ifndef YY_USE_CLASS
#define YY_parse_PARSE_PARAM
#ifndef YY_parse_PARSE_PARAM_DEF
#define YY_parse_PARSE_PARAM_DEF
#endif
#endif
#endif
#endif
#ifndef YY_parse_PARSE_PARAM
#define YY_parse_PARSE_PARAM void
#endif
#endif
/* TOKEN C */
#ifndef YY_USE_CLASS
#ifndef YY_parse_PURE
#ifndef yylval
extern YY_parse_STYPE YY_parse_LVAL;
#else
#if yylval != YY_parse_LVAL
extern YY_parse_STYPE YY_parse_LVAL;
#else
#warning "Namespace conflict, disabling some functionality (bison++ only)"
#endif
#endif
#endif
#line 169 "/usr/share/bison++/bison.h"
#define CHAR 258
#define INT 259
#define DOUBLE 260
#define PROGRAM 261
#define BOOL 262
#define FOR 263
#define TO 264
#define DOWN 265
#define WHILE 266
#define IF 267
#define THEN 268
#define ELSE 269
#define SWITCH 270
#define CASE 271
#define OF 272
#define BREAK 273
#define REPEAT 274
#define CONTINUE 275
#define RETURN 276
#define WRITE 277
#define READ 278
#define TRUE 279
#define FALSE 280
#define IN 281
#define END 282
#define ID 283
#define IntNumber 284
#define RealNumber 285
#define STRING 286
#define CHARACTER 287
#define LTE 288
#define GTE 289
#define EQU 290
#define NEQ 291
#define RANGE_DOTS 292
#define LOGIC_AND 293
#define LOGIC_OR 294
#define UNTIL 295
#define DO 296
#define VAR 297
#define DEF 298
#define IFX 299
#define NEG 300
#line 169 "/usr/share/bison++/bison.h"
/* #defines token */
/* after #define tokens, before const tokens S5*/
#else
#ifndef YY_parse_CLASS
#define YY_parse_CLASS parse
#endif
#ifndef YY_parse_INHERIT
#define YY_parse_INHERIT
#endif
#ifndef YY_parse_MEMBERS
#define YY_parse_MEMBERS
#endif
#ifndef YY_parse_LEX_BODY
#define YY_parse_LEX_BODY
#endif
#ifndef YY_parse_ERROR_BODY
#define YY_parse_ERROR_BODY
#endif
#ifndef YY_parse_CONSTRUCTOR_PARAM
#define YY_parse_CONSTRUCTOR_PARAM
#endif
/* choose between enum and const */
#ifndef YY_parse_USE_CONST_TOKEN
#define YY_parse_USE_CONST_TOKEN 0
/* yes enum is more compatible with flex, */
/* so by default we use it */
#endif
#if YY_parse_USE_CONST_TOKEN != 0
#ifndef YY_parse_ENUM_TOKEN
#define YY_parse_ENUM_TOKEN yy_parse_enum_token
#endif
#endif
class YY_parse_CLASS YY_parse_INHERIT
{
public:
#if YY_parse_USE_CONST_TOKEN != 0
/* static const int token ... */
#line 212 "/usr/share/bison++/bison.h"
static const int CHAR;
static const int INT;
static const int DOUBLE;
static const int PROGRAM;
static const int BOOL;
static const int FOR;
static const int TO;
static const int DOWN;
static const int WHILE;
static const int IF;
static const int THEN;
static const int ELSE;
static const int SWITCH;
static const int CASE;
static const int OF;
static const int BREAK;
static const int REPEAT;
static const int CONTINUE;
static const int RETURN;
static const int WRITE;
static const int READ;
static const int TRUE;
static const int FALSE;
static const int IN;
static const int END;
static const int ID;
static const int IntNumber;
static const int RealNumber;
static const int STRING;
static const int CHARACTER;
static const int LTE;
static const int GTE;
static const int EQU;
static const int NEQ;
static const int RANGE_DOTS;
static const int LOGIC_AND;
static const int LOGIC_OR;
static const int UNTIL;
static const int DO;
static const int VAR;
static const int DEF;
static const int IFX;
static const int NEG;
#line 212 "/usr/share/bison++/bison.h"
/* decl const */
#else
enum YY_parse_ENUM_TOKEN { YY_parse_NULL_TOKEN=0
#line 215 "/usr/share/bison++/bison.h"
,CHAR=258
,INT=259
,DOUBLE=260
,PROGRAM=261
,BOOL=262
,FOR=263
,TO=264
,DOWN=265
,WHILE=266
,IF=267
,THEN=268
,ELSE=269
,SWITCH=270
,CASE=271
,OF=272
,BREAK=273
,REPEAT=274
,CONTINUE=275
,RETURN=276
,WRITE=277
,READ=278
,TRUE=279
,FALSE=280
,IN=281
,END=282
,ID=283
,IntNumber=284
,RealNumber=285
,STRING=286
,CHARACTER=287
,LTE=288
,GTE=289
,EQU=290
,NEQ=291
,RANGE_DOTS=292
,LOGIC_AND=293
,LOGIC_OR=294
,UNTIL=295
,DO=296
,VAR=297
,DEF=298
,IFX=299
,NEG=300
#line 215 "/usr/share/bison++/bison.h"
/* enum token */
}; /* end of enum declaration */
#endif
public:
int YY_parse_PARSE(YY_parse_PARSE_PARAM);
virtual void YY_parse_ERROR(char *msg) YY_parse_ERROR_BODY;
#ifdef YY_parse_PURE
#ifdef YY_parse_LSP_NEEDED
virtual int YY_parse_LEX(YY_parse_STYPE *YY_parse_LVAL,YY_parse_LTYPE *YY_parse_LLOC) YY_parse_LEX_BODY;
#else
virtual int YY_parse_LEX(YY_parse_STYPE *YY_parse_LVAL) YY_parse_LEX_BODY;
#endif
#else
virtual int YY_parse_LEX() YY_parse_LEX_BODY;
YY_parse_STYPE YY_parse_LVAL;
#ifdef YY_parse_LSP_NEEDED
YY_parse_LTYPE YY_parse_LLOC;
#endif
int YY_parse_NERRS;
int YY_parse_CHAR;
#endif
#if YY_parse_DEBUG != 0
public:
int YY_parse_DEBUG_FLAG; /* nonzero means print parse trace */
#endif
public:
YY_parse_CLASS(YY_parse_CONSTRUCTOR_PARAM);
public:
YY_parse_MEMBERS
};
/* other declare folow */
#endif
#if YY_parse_COMPATIBILITY != 0
/* backward compatibility */
/* Removed due to bison problems
/#ifndef YYSTYPE
/ #define YYSTYPE YY_parse_STYPE
/#endif*/
#ifndef YYLTYPE
#define YYLTYPE YY_parse_LTYPE
#endif
#ifndef YYDEBUG
#ifdef YY_parse_DEBUG
#define YYDEBUG YY_parse_DEBUG
#endif
#endif
#endif
/* END */
#line 267 "/usr/share/bison++/bison.h"
#endif