PIPS
syn_yacc.h
Go to the documentation of this file.
1 /* A Bison parser, made by GNU Bison 3.8.2. */
2 
3 /* Bison interface for Yacc-like parsers in C
4 
5  Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
6  Inc.
7 
8  This program is free software: you can redistribute it and/or modify
9  it under the terms of the GNU General Public License as published by
10  the Free Software Foundation, either version 3 of the License, or
11  (at your option) any later version.
12 
13  This program is distributed in the hope that it will be useful,
14  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  GNU General Public License for more details.
17 
18  You should have received a copy of the GNU General Public License
19  along with this program. If not, see <https://www.gnu.org/licenses/>. */
20 
21 /* As a special exception, you may create a larger work that contains
22  part or all of the Bison parser skeleton and distribute that work
23  under terms of your choice, so long as that work isn't itself a
24  parser generator using the skeleton or a modified version thereof
25  as a parser skeleton. Alternatively, if you modify or redistribute
26  the parser skeleton itself, you may (at your option) remove this
27  special exception, which will cause the skeleton and the resulting
28  Bison output files to be licensed under the GNU General Public
29  License without this special exception.
30 
31  This special exception was added by the Free Software Foundation in
32  version 2.2 of Bison. */
33 
34 /* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
35  especially those whose name start with YY_ or yy_. They are
36  private implementation details that can be changed or removed. */
37 
38 #ifndef YY_SYN_Y_TAB_H_INCLUDED
39 # define YY_SYN_Y_TAB_H_INCLUDED
40 /* Debug traces. */
41 #ifndef YYDEBUG
42 # define YYDEBUG 0
43 #endif
44 #if YYDEBUG
45 extern int syn_debug;
46 #endif
47 
48 /* Token kinds. */
49 #ifndef YYTOKENTYPE
50 # define YYTOKENTYPE
52  {
53  YYEMPTY = -2,
54  YYEOF = 0, /* "end of file" */
55  YYerror = 256, /* error */
56  YYUNDEF = 257, /* "invalid token" */
57  TK_ASSIGN = 258, /* TK_ASSIGN */
58  TK_BACKSPACE = 259, /* TK_BACKSPACE */
59  TK_BLANK = 260, /* TK_BLANK */
60  TK_BLOCKDATA = 261, /* TK_BLOCKDATA */
61  TK_BUFFERIN = 262, /* TK_BUFFERIN */
62  TK_BUFFEROUT = 263, /* TK_BUFFEROUT */
63  TK_CALL = 264, /* TK_CALL */
64  TK_CHARACTER = 265, /* TK_CHARACTER */
65  TK_CLOSE = 266, /* TK_CLOSE */
66  TK_COMMON = 267, /* TK_COMMON */
67  TK_COMPLEX = 268, /* TK_COMPLEX */
68  TK_CONTINUE = 269, /* TK_CONTINUE */
69  TK_CYCLE = 270, /* TK_CYCLE */
70  TK_DATA = 271, /* TK_DATA */
71  TK_DIMENSION = 272, /* TK_DIMENSION */
72  TK_DOUBLEPRECISION = 273, /* TK_DOUBLEPRECISION */
73  TK_DOUBLECOMPLEX = 274, /* TK_DOUBLECOMPLEX */
74  TK_DO = 275, /* TK_DO */
75  TK_ELSEIF = 276, /* TK_ELSEIF */
76  TK_ELSE = 277, /* TK_ELSE */
77  TK_ENDFILE = 278, /* TK_ENDFILE */
78  TK_ENDDO = 279, /* TK_ENDDO */
79  TK_ENDIF = 280, /* TK_ENDIF */
80  TK_END = 281, /* TK_END */
81  TK_ENTRY = 282, /* TK_ENTRY */
82  TK_EQUIVALENCE = 283, /* TK_EQUIVALENCE */
83  TK_EXIT = 284, /* TK_EXIT */
84  TK_EXTERNAL = 285, /* TK_EXTERNAL */
85  TK_FORMAT = 286, /* TK_FORMAT */
86  TK_FUNCTION = 287, /* TK_FUNCTION */
87  TK_GOTO = 288, /* TK_GOTO */
88  TK_IF = 289, /* TK_IF */
89  TK_IMPLICIT = 290, /* TK_IMPLICIT */
90  TK_INCLUDE = 291, /* TK_INCLUDE */
91  TK_INQUIRE = 292, /* TK_INQUIRE */
92  TK_INTEGER = 293, /* TK_INTEGER */
93  TK_INTRINSIC = 294, /* TK_INTRINSIC */
94  TK_IOSTAT = 295, /* TK_IOSTAT */
95  TK_LOGICAL = 296, /* TK_LOGICAL */
96  TK_OPEN = 297, /* TK_OPEN */
97  TK_PARAMETER = 298, /* TK_PARAMETER */
98  TK_PAUSE = 299, /* TK_PAUSE */
99  TK_POINTER = 300, /* TK_POINTER */
100  TK_PRINT = 301, /* TK_PRINT */
101  TK_PROGRAM = 302, /* TK_PROGRAM */
102  TK_READ = 303, /* TK_READ */
103  TK_REAL = 304, /* TK_REAL */
104  TK_RETURN = 305, /* TK_RETURN */
105  TK_REWIND = 306, /* TK_REWIND */
106  TK_SAVE = 307, /* TK_SAVE */
107  TK_STATIC = 308, /* TK_STATIC */
108  TK_STOP = 309, /* TK_STOP */
109  TK_SUBROUTINE = 310, /* TK_SUBROUTINE */
110  TK_THEN = 311, /* TK_THEN */
111  TK_TO = 312, /* TK_TO */
112  TK_WHILE = 313, /* TK_WHILE */
113  TK_WRITE = 314, /* TK_WRITE */
114  TK_INOUT = 315, /* TK_INOUT */
115  TK_IN = 316, /* TK_IN */
116  TK_OUT = 317, /* TK_OUT */
117  TK_AND = 318, /* TK_AND */
118  TK_EQ = 319, /* TK_EQ */
119  TK_EQV = 320, /* TK_EQV */
120  TK_GE = 321, /* TK_GE */
121  TK_GT = 322, /* TK_GT */
122  TK_LE = 323, /* TK_LE */
123  TK_LT = 324, /* TK_LT */
124  TK_NE = 325, /* TK_NE */
125  TK_NEQV = 326, /* TK_NEQV */
126  TK_NOT = 327, /* TK_NOT */
127  TK_OR = 328, /* TK_OR */
128  TK_TRUE = 329, /* TK_TRUE */
129  TK_FALSE = 330, /* TK_FALSE */
130  TK_NAME = 331, /* TK_NAME */
131  TK_ICON = 332, /* TK_ICON */
132  TK_SCON = 333, /* TK_SCON */
133  TK_RCON = 334, /* TK_RCON */
134  TK_DCON = 335, /* TK_DCON */
135  TK_MINUS = 336, /* TK_MINUS */
136  TK_PLUS = 337, /* TK_PLUS */
137  TK_SLASH = 338, /* TK_SLASH */
138  TK_STAR = 339, /* TK_STAR */
139  TK_POWER = 340, /* TK_POWER */
140  TK_LPAR = 341, /* TK_LPAR */
141  TK_RPAR = 342, /* TK_RPAR */
142  TK_COMMA = 343, /* TK_COMMA */
143  TK_COLON = 344, /* TK_COLON */
144  TK_EQUALS = 345, /* TK_EQUALS */
145  TK_CURRENCY = 346, /* TK_CURRENCY */
146  TK_CONCAT = 347, /* TK_CONCAT */
147  TK_EOS = 348, /* TK_EOS */
148  TK_IOLPAR = 349 /* TK_IOLPAR */
149  };
150  typedef enum yytokentype yytoken_kind_t;
151 #endif
152 /* Token kinds. */
153 #define YYEMPTY -2
154 #define YYEOF 0
155 #define YYerror 256
156 #define YYUNDEF 257
157 #define TK_ASSIGN 258
158 #define TK_BACKSPACE 259
159 #define TK_BLANK 260
160 #define TK_BLOCKDATA 261
161 #define TK_BUFFERIN 262
162 #define TK_BUFFEROUT 263
163 #define TK_CALL 264
164 #define TK_CHARACTER 265
165 #define TK_CLOSE 266
166 #define TK_COMMON 267
167 #define TK_COMPLEX 268
168 #define TK_CONTINUE 269
169 #define TK_CYCLE 270
170 #define TK_DATA 271
171 #define TK_DIMENSION 272
172 #define TK_DOUBLEPRECISION 273
173 #define TK_DOUBLECOMPLEX 274
174 #define TK_DO 275
175 #define TK_ELSEIF 276
176 #define TK_ELSE 277
177 #define TK_ENDFILE 278
178 #define TK_ENDDO 279
179 #define TK_ENDIF 280
180 #define TK_END 281
181 #define TK_ENTRY 282
182 #define TK_EQUIVALENCE 283
183 #define TK_EXIT 284
184 #define TK_EXTERNAL 285
185 #define TK_FORMAT 286
186 #define TK_FUNCTION 287
187 #define TK_GOTO 288
188 #define TK_IF 289
189 #define TK_IMPLICIT 290
190 #define TK_INCLUDE 291
191 #define TK_INQUIRE 292
192 #define TK_INTEGER 293
193 #define TK_INTRINSIC 294
194 #define TK_IOSTAT 295
195 #define TK_LOGICAL 296
196 #define TK_OPEN 297
197 #define TK_PARAMETER 298
198 #define TK_PAUSE 299
199 #define TK_POINTER 300
200 #define TK_PRINT 301
201 #define TK_PROGRAM 302
202 #define TK_READ 303
203 #define TK_REAL 304
204 #define TK_RETURN 305
205 #define TK_REWIND 306
206 #define TK_SAVE 307
207 #define TK_STATIC 308
208 #define TK_STOP 309
209 #define TK_SUBROUTINE 310
210 #define TK_THEN 311
211 #define TK_TO 312
212 #define TK_WHILE 313
213 #define TK_WRITE 314
214 #define TK_INOUT 315
215 #define TK_IN 316
216 #define TK_OUT 317
217 #define TK_AND 318
218 #define TK_EQ 319
219 #define TK_EQV 320
220 #define TK_GE 321
221 #define TK_GT 322
222 #define TK_LE 323
223 #define TK_LT 324
224 #define TK_NE 325
225 #define TK_NEQV 326
226 #define TK_NOT 327
227 #define TK_OR 328
228 #define TK_TRUE 329
229 #define TK_FALSE 330
230 #define TK_NAME 331
231 #define TK_ICON 332
232 #define TK_SCON 333
233 #define TK_RCON 334
234 #define TK_DCON 335
235 #define TK_MINUS 336
236 #define TK_PLUS 337
237 #define TK_SLASH 338
238 #define TK_STAR 339
239 #define TK_POWER 340
240 #define TK_LPAR 341
241 #define TK_RPAR 342
242 #define TK_COMMA 343
243 #define TK_COLON 344
244 #define TK_EQUALS 345
245 #define TK_CURRENCY 346
246 #define TK_CONCAT 347
247 #define TK_EOS 348
248 #define TK_IOLPAR 349
249 
250 /* Value type. */
251 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
252 union YYSTYPE
253 {
254 #line 358 "yacc.in"
255 
256  basic basic;
257  chain chain;
258  char character;
259  cons * liste;
263  entity entity;
266  int integer;
267  range range;
268  string string;
269  syntax syntax;
270  tag tag;
271  type type;
272  value value;
273 
274 #line 275 "y.tab.h"
275 
276 };
277 typedef union YYSTYPE YYSTYPE;
278 # define YYSTYPE_IS_TRIVIAL 1
279 # define YYSTYPE_IS_DECLARED 1
280 #endif
281 
282 
283 extern YYSTYPE syn_lval;
284 
285 
286 int syn_parse (void);
287 
288 
289 #endif /* !YY_SYN_Y_TAB_H_INCLUDED */
yytokentype
Definition: genread.h:52
int tag
TAG.
Definition: newgen_types.h:92
The structure used to build lists in NewGen.
Definition: newgen_list.h:41
#define TK_EQUALS
Definition: syn_yacc.h:244
#define TK_CLOSE
Definition: syn_yacc.h:165
#define TK_GT
Definition: syn_yacc.h:221
#define TK_STATIC
Definition: syn_yacc.h:207
#define TK_STOP
Definition: syn_yacc.h:208
#define TK_ENDFILE
Definition: syn_yacc.h:177
#define TK_LPAR
Definition: syn_yacc.h:240
#define TK_SAVE
Definition: syn_yacc.h:206
#define TK_SUBROUTINE
Definition: syn_yacc.h:209
YYSTYPE syn_lval
#define TK_ENDIF
Definition: syn_yacc.h:179
#define TK_NOT
Definition: syn_yacc.h:226
#define TK_WHILE
Definition: syn_yacc.h:212
#define TK_EOS
Definition: syn_yacc.h:247
#define TK_CALL
Definition: syn_yacc.h:163
#define TK_FALSE
Definition: syn_yacc.h:229
#define TK_ASSIGN
Definition: syn_yacc.h:157
#define TK_POWER
Definition: syn_yacc.h:239
#define TK_RETURN
Definition: syn_yacc.h:204
#define TK_CURRENCY
Definition: syn_yacc.h:245
#define TK_CHARACTER
Definition: syn_yacc.h:164
#define TK_BACKSPACE
Definition: syn_yacc.h:158
#define YYEOF
Definition: syn_yacc.h:154
#define TK_ICON
Definition: syn_yacc.h:231
#define TK_STAR
Definition: syn_yacc.h:238
#define TK_CYCLE
Definition: syn_yacc.h:169
#define TK_SLASH
Definition: syn_yacc.h:237
#define TK_FUNCTION
Definition: syn_yacc.h:186
#define TK_DOUBLECOMPLEX
Definition: syn_yacc.h:173
#define TK_EQV
Definition: syn_yacc.h:219
#define TK_PAUSE
Definition: syn_yacc.h:198
#define TK_RCON
Definition: syn_yacc.h:233
#define TK_DIMENSION
Definition: syn_yacc.h:171
#define TK_COMPLEX
Definition: syn_yacc.h:167
#define TK_BUFFEROUT
Definition: syn_yacc.h:162
#define TK_DATA
Definition: syn_yacc.h:170
#define TK_PLUS
Definition: syn_yacc.h:236
#define TK_PARAMETER
Definition: syn_yacc.h:197
#define TK_GOTO
Definition: syn_yacc.h:187
#define TK_ENDDO
Definition: syn_yacc.h:178
#define TK_EQ
Definition: syn_yacc.h:218
#define YYerror
Definition: syn_yacc.h:155
#define TK_EXIT
Definition: syn_yacc.h:183
#define YYUNDEF
Definition: syn_yacc.h:156
#define TK_IN
Definition: syn_yacc.h:215
#define TK_BUFFERIN
Definition: syn_yacc.h:161
#define TK_INTRINSIC
Definition: syn_yacc.h:193
#define TK_ELSEIF
Definition: syn_yacc.h:175
#define TK_RPAR
Definition: syn_yacc.h:241
#define TK_NEQV
Definition: syn_yacc.h:225
#define TK_ENTRY
Definition: syn_yacc.h:181
int syn_parse(void)
#define TK_IOLPAR
Definition: syn_yacc.h:248
#define TK_DCON
Definition: syn_yacc.h:234
#define TK_THEN
Definition: syn_yacc.h:210
#define TK_REAL
Definition: syn_yacc.h:203
#define TK_COMMA
Definition: syn_yacc.h:242
#define TK_GE
Definition: syn_yacc.h:220
#define TK_NAME
Definition: syn_yacc.h:230
#define TK_INOUT
Definition: syn_yacc.h:214
#define TK_LT
Definition: syn_yacc.h:223
#define TK_CONTINUE
Definition: syn_yacc.h:168
#define TK_BLANK
Definition: syn_yacc.h:159
#define TK_OUT
Definition: syn_yacc.h:216
#define TK_END
Definition: syn_yacc.h:180
#define TK_INTEGER
Definition: syn_yacc.h:192
#define TK_LOGICAL
Definition: syn_yacc.h:195
#define TK_WRITE
Definition: syn_yacc.h:213
#define TK_REWIND
Definition: syn_yacc.h:205
#define TK_ELSE
Definition: syn_yacc.h:176
#define TK_COMMON
Definition: syn_yacc.h:166
#define TK_OPEN
Definition: syn_yacc.h:196
#define TK_TO
Definition: syn_yacc.h:211
#define TK_COLON
Definition: syn_yacc.h:243
#define TK_IF
Definition: syn_yacc.h:188
#define TK_PRINT
Definition: syn_yacc.h:200
#define TK_PROGRAM
Definition: syn_yacc.h:201
#define TK_LE
Definition: syn_yacc.h:222
#define TK_CONCAT
Definition: syn_yacc.h:246
#define TK_SCON
Definition: syn_yacc.h:232
#define TK_BLOCKDATA
Definition: syn_yacc.h:160
#define TK_NE
Definition: syn_yacc.h:224
#define TK_DO
Definition: syn_yacc.h:174
#define TK_MINUS
Definition: syn_yacc.h:235
#define TK_INCLUDE
Definition: syn_yacc.h:190
#define TK_IOSTAT
Definition: syn_yacc.h:194
enum yytokentype yytoken_kind_t
Definition: syn_yacc.h:150
#define TK_AND
Definition: syn_yacc.h:217
#define TK_READ
Definition: syn_yacc.h:202
#define TK_OR
Definition: syn_yacc.h:227
#define TK_DOUBLEPRECISION
Definition: syn_yacc.h:172
#define TK_IMPLICIT
Definition: syn_yacc.h:189
#define TK_POINTER
Definition: syn_yacc.h:199
#define TK_TRUE
Definition: syn_yacc.h:228
#define YYEMPTY
Token kinds.
Definition: syn_yacc.h:153
#define TK_FORMAT
Definition: syn_yacc.h:185
#define TK_INQUIRE
Definition: syn_yacc.h:191
#define TK_EXTERNAL
Definition: syn_yacc.h:184
#define TK_EQUIVALENCE
Definition: syn_yacc.h:182
Value type.
Definition: genread.h:115
expression expression
Definition: cyacc.h:185
syntax syntax
Definition: splitc.c:887
string string
Definition: cyacc.h:187
cons * liste
Definition: cyacc.h:183
dimension dimension
Definition: splitc.c:881
dataval dataval
Definition: syn_yacc.c:384
range range
Definition: syn_yacc.c:391
datavar datavar
Definition: syn_yacc.c:385
chain chain
Definition: syn_yacc.c:381
basic basic
Definition: splitc.c:878
instruction instruction
Definition: syn_yacc.c:389
char character
Definition: splitc.c:879
value value
Definition: splitc.c:890
entity entity
Definition: cyacc.h:184
int integer
Definition: cyacc.h:190
type type
Definition: cyacc.h:188