1 #ifdef HOST_GENERATOR_FILE
2 #include "config.h"
3 #else
4 #include "bconfig.h"
5 #endif
6 #line 1 "gengtype-lex.c"
7
8 #line 3 "gengtype-lex.c"
9
10 #define YY_INT_ALIGNED short int
11
12 /* A lexical scanner generated by flex */
13
14 #define FLEX_SCANNER
15 #define YY_FLEX_MAJOR_VERSION 2
16 #define YY_FLEX_MINOR_VERSION 6
17 #define YY_FLEX_SUBMINOR_VERSION 4
18 #if YY_FLEX_SUBMINOR_VERSION > 0
19 #define FLEX_BETA
20 #endif
21
22 /* First, we deal with platform-specific or compiler-specific issues. */
23
24 /* begin standard C headers. */
25 #include <stdio.h>
26 #include <string.h>
27 #include <errno.h>
28 #include <stdlib.h>
29
30 /* end standard C headers. */
31
32 /* flex integer type definitions */
33
34 #ifndef FLEXINT_H
35 #define FLEXINT_H
36
37 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
38
39 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
40
41 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
42 * if you want the limit (max/min) macros for int types.
43 */
44 #ifndef __STDC_LIMIT_MACROS
45 #define __STDC_LIMIT_MACROS 1
46 #endif
47
48 #include <inttypes.h>
49 typedef int8_t flex_int8_t;
50 typedef uint8_t flex_uint8_t;
51 typedef int16_t flex_int16_t;
52 typedef uint16_t flex_uint16_t;
53 typedef int32_t flex_int32_t;
54 typedef uint32_t flex_uint32_t;
55 #else
56 typedef signed char flex_int8_t;
57 typedef short int flex_int16_t;
58 typedef int flex_int32_t;
59 typedef unsigned char flex_uint8_t;
60 typedef unsigned short int flex_uint16_t;
61 typedef unsigned int flex_uint32_t;
62
63 /* Limits of integral types. */
64 #ifndef INT8_MIN
65 #define INT8_MIN (-128)
66 #endif
67 #ifndef INT16_MIN
68 #define INT16_MIN (-32767-1)
69 #endif
70 #ifndef INT32_MIN
71 #define INT32_MIN (-2147483647-1)
72 #endif
73 #ifndef INT8_MAX
74 #define INT8_MAX (127)
75 #endif
76 #ifndef INT16_MAX
77 #define INT16_MAX (32767)
78 #endif
79 #ifndef INT32_MAX
80 #define INT32_MAX (2147483647)
81 #endif
82 #ifndef UINT8_MAX
83 #define UINT8_MAX (255U)
84 #endif
85 #ifndef UINT16_MAX
86 #define UINT16_MAX (65535U)
87 #endif
88 #ifndef UINT32_MAX
89 #define UINT32_MAX (4294967295U)
90 #endif
91
92 #ifndef SIZE_MAX
93 #define SIZE_MAX (~(size_t)0)
94 #endif
95
96 #endif /* ! C99 */
97
98 #endif /* ! FLEXINT_H */
99
100 /* begin standard C++ headers. */
101
102 /* TODO: this is always defined, so inline it */
103 #define yyconst const
104
105 #if defined(__GNUC__) && __GNUC__ >= 3
106 #define yynoreturn __attribute__((__noreturn__))
107 #else
108 #define yynoreturn
109 #endif
110
111 /* Returned upon end-of-file. */
112 #define YY_NULL 0
113
114 /* Promotes a possibly negative, possibly signed char to an
115 * integer in range [0..255] for use as an array index.
116 */
117 #define YY_SC_TO_UI(c) ((YY_CHAR) (c))
118
119 /* Enter a start condition. This macro really ought to take a parameter,
120 * but we do it the disgusting crufty way forced on us by the ()-less
121 * definition of BEGIN.
122 */
123 #define BEGIN (yy_start) = 1 + 2 *
124 /* Translate the current start state into a value that can be later handed
125 * to BEGIN to return to the state. The YYSTATE alias is for lex
126 * compatibility.
127 */
128 #define YY_START (((yy_start) - 1) / 2)
129 #define YYSTATE YY_START
130 /* Action number for EOF rule of a given start state. */
131 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
132 /* Special action meaning "start processing a new file". */
133 #define YY_NEW_FILE yyrestart( yyin )
134 #define YY_END_OF_BUFFER_CHAR 0
135
136 /* Size of default input buffer. */
137 #ifndef YY_BUF_SIZE
138 #ifdef __ia64__
139 /* On IA-64, the buffer size is 16k, not 8k.
140 * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
141 * Ditto for the __ia64__ case accordingly.
142 */
143 #define YY_BUF_SIZE 32768
144 #else
145 #define YY_BUF_SIZE 16384
146 #endif /* __ia64__ */
147 #endif
148
149 /* The state buf must be large enough to hold one state per character in the main buffer.
150 */
151 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
152
153 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
154 #define YY_TYPEDEF_YY_BUFFER_STATE
155 typedef struct yy_buffer_state *YY_BUFFER_STATE;
156 #endif
157
158 #ifndef YY_TYPEDEF_YY_SIZE_T
159 #define YY_TYPEDEF_YY_SIZE_T
160 typedef size_t yy_size_t;
161 #endif
162
163 extern int yyleng;
164
165 extern FILE *yyin, *yyout;
166
167 #define EOB_ACT_CONTINUE_SCAN 0
168 #define EOB_ACT_END_OF_FILE 1
169 #define EOB_ACT_LAST_MATCH 2
170
171 #define YY_LESS_LINENO(n)
172 #define YY_LINENO_REWIND_TO(ptr)
173
174 /* Return all but the first "n" matched characters back to the input stream. */
175 #define yyless(n) \
176 do \
177 { \
178 /* Undo effects of setting up yytext. */ \
179 int yyless_macro_arg = (n); \
180 YY_LESS_LINENO(yyless_macro_arg);\
181 *yy_cp = (yy_hold_char); \
182 YY_RESTORE_YY_MORE_OFFSET \
183 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
184 YY_DO_BEFORE_ACTION; /* set up yytext again */ \
185 } \
186 while ( 0 )
187 #define unput(c) yyunput( c, (yytext_ptr) )
188
189 #ifndef YY_STRUCT_YY_BUFFER_STATE
190 #define YY_STRUCT_YY_BUFFER_STATE
191 struct yy_buffer_state
192 {
193 FILE *yy_input_file;
194
195 char *yy_ch_buf; /* input buffer */
196 char *yy_buf_pos; /* current position in input buffer */
197
198 /* Size of input buffer in bytes, not including room for EOB
199 * characters.
200 */
201 int yy_buf_size;
202
203 /* Number of characters read into yy_ch_buf, not including EOB
204 * characters.
205 */
206 int yy_n_chars;
207
208 /* Whether we "own" the buffer - i.e., we know we created it,
209 * and can realloc() it to grow it, and should free() it to
210 * delete it.
211 */
212 int yy_is_our_buffer;
213
214 /* Whether this is an "interactive" input source; if so, and
215 * if we're using stdio for input, then we want to use getc()
216 * instead of fread(), to make sure we stop fetching input after
217 * each newline.
218 */
219 int yy_is_interactive;
220
221 /* Whether we're considered to be at the beginning of a line.
222 * If so, '^' rules will be active on the next match, otherwise
223 * not.
224 */
225 int yy_at_bol;
226
227 int yy_bs_lineno; /**< The line count. */
228 int yy_bs_column; /**< The column count. */
229
230 /* Whether to try to fill the input buffer when we reach the
231 * end of it.
232 */
233 int yy_fill_buffer;
234
235 int yy_buffer_status;
236
237 #define YY_BUFFER_NEW 0
238 #define YY_BUFFER_NORMAL 1
239 /* When an EOF's been seen but there's still some text to process
240 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
241 * shouldn't try reading from the input source any more. We might
242 * still have a bunch of tokens to match, though, because of
243 * possible backing-up.
244 *
245 * When we actually see the EOF, we change the status to "new"
246 * (via yyrestart()), so that the user can continue scanning by
247 * just pointing yyin at a new input file.
248 */
249 #define YY_BUFFER_EOF_PENDING 2
250
251 };
252 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
253
254 /* Stack of input buffers. */
255 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
256 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
257 static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */
258
259 /* We provide macros for accessing buffer states in case in the
260 * future we want to put the buffer states in a more general
261 * "scanner state".
262 *
263 * Returns the top of the stack, or NULL.
264 */
265 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
266 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
267 : NULL)
268 /* Same as previous macro, but useful when we know that the buffer stack is not
269 * NULL or when we need an lvalue. For internal use only.
270 */
271 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
272
273 /* yy_hold_char holds the character lost when yytext is formed. */
274 static char yy_hold_char;
275 static int yy_n_chars; /* number of characters read into yy_ch_buf */
276 int yyleng;
277
278 /* Points to current character in buffer. */
279 static char *yy_c_buf_p = NULL;
280 static int yy_init = 0; /* whether we need to initialize */
281 static int yy_start = 0; /* start state number */
282
283 /* Flag which is used to allow yywrap()'s to do buffer switches
284 * instead of setting up a fresh yyin. A bit of a hack ...
285 */
286 static int yy_did_buffer_switch_on_eof;
287
288 void yyrestart ( FILE *input_file );
289 void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer );
290 YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size );
291 void yy_delete_buffer ( YY_BUFFER_STATE b );
292 void yy_flush_buffer ( YY_BUFFER_STATE b );
293 void yypush_buffer_state ( YY_BUFFER_STATE new_buffer );
294 void yypop_buffer_state ( void );
295
296 static void yyensure_buffer_stack ( void );
297 static void yy_load_buffer_state ( void );
298 static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file );
299 #define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER )
300
301 YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size );
302 YY_BUFFER_STATE yy_scan_string ( const char *yy_str );
303 YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len );
304
305 void *yyalloc ( yy_size_t );
306 void *yyrealloc ( void *, yy_size_t );
307 void yyfree ( void * );
308
309 #define yy_new_buffer yy_create_buffer
310 #define yy_set_interactive(is_interactive) \
311 { \
312 if ( ! YY_CURRENT_BUFFER ){ \
313 yyensure_buffer_stack (); \
314 YY_CURRENT_BUFFER_LVALUE = \
315 yy_create_buffer( yyin, YY_BUF_SIZE ); \
316 } \
317 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
318 }
319 #define yy_set_bol(at_bol) \
320 { \
321 if ( ! YY_CURRENT_BUFFER ){\
322 yyensure_buffer_stack (); \
323 YY_CURRENT_BUFFER_LVALUE = \
324 yy_create_buffer( yyin, YY_BUF_SIZE ); \
325 } \
326 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
327 }
328 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
329
330 /* Begin user sect3 */
331
332 #define yywrap() (/*CONSTCOND*/1)
333 #define YY_SKIP_YYWRAP
334 typedef flex_uint8_t YY_CHAR;
335
336 FILE *yyin = NULL, *yyout = NULL;
337
338 typedef int yy_state_type;
339
340 extern int yylineno;
341 int yylineno = 1;
342
343 extern char *yytext;
344 #ifdef yytext_ptr
345 #undef yytext_ptr
346 #endif
347 #define yytext_ptr yytext
348
349 static yy_state_type yy_get_previous_state ( void );
350 static yy_state_type yy_try_NUL_trans ( yy_state_type current_state );
351 static int yy_get_next_buffer ( void );
352 static void yynoreturn yy_fatal_error ( const char* msg );
353
354 /* Done after the current pattern has been matched and before the
355 * corresponding action - sets up yytext.
356 */
357 #define YY_DO_BEFORE_ACTION \
358 (yytext_ptr) = yy_bp; \
359 yyleng = (int) (yy_cp - yy_bp); \
360 (yy_hold_char) = *yy_cp; \
361 *yy_cp = '\0'; \
362 (yy_c_buf_p) = yy_cp;
363 #define YY_NUM_RULES 53
364 #define YY_END_OF_BUFFER 54
365 /* This struct is not used in this scanner,
366 but its presence is necessary. */
367 struct yy_trans_info
368 {
369 flex_int32_t yy_verify;
370 flex_int32_t yy_nxt;
371 };
372 static const flex_int16_t yy_accept[567] =
373 { 0,
374 0, 0, 0, 0, 0, 0, 0, 0, 54, 41,
375 38, 50, 41, 50, 39, 41, 41, 39, 39, 39,
376 39, 39, 35, 9, 9, 33, 35, 15, 35, 33,
377 33, 25, 35, 35, 35, 35, 35, 35, 35, 35,
378 14, 35, 35, 35, 35, 35, 35, 35, 35, 35,
379 35, 35, 35, 35, 35, 13, 9, 35, 46, 44,
380 51, 51, 0, 42, 0, 0, 0, 43, 36, 43,
381 0, 39, 0, 0, 0, 0, 0, 0, 0, 0,
382 0, 0, 39, 39, 39, 39, 39, 9, 0, 29,
383 0, 0, 0, 0, 7, 0, 25, 28, 28, 0,
384
385 28, 0, 0, 0, 0, 0, 0, 0, 30, 10,
386 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
387 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
388 0, 0, 0, 9, 0, 0, 0, 0, 47, 49,
389 48, 40, 0, 37, 0, 0, 0, 0, 0, 0,
390 0, 39, 39, 39, 39, 39, 39, 31, 32, 0,
391 8, 0, 0, 0, 0, 0, 0, 0, 0, 0,
392 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
393 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
394 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
395
396 34, 0, 0, 0, 39, 0, 0, 0, 0, 0,
397 0, 0, 39, 39, 39, 39, 39, 39, 0, 0,
398 0, 0, 0, 16, 16, 16, 0, 0, 0, 0,
399 0, 0, 0, 0, 0, 0, 26, 26, 26, 0,
400 26, 0, 0, 0, 0, 0, 0, 0, 0, 0,
401 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
402 39, 0, 0, 0, 0, 0, 0, 0, 39, 39,
403 39, 39, 39, 39, 0, 0, 0, 0, 0, 0,
404 0, 0, 21, 21, 21, 0, 0, 0, 0, 0,
405 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
406
407 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
408 0, 0, 0, 0, 0, 24, 24, 24, 0, 0,
409 0, 0, 0, 0, 0, 0, 4, 4, 4, 39,
410 39, 39, 39, 3, 3, 3, 0, 0, 0, 0,
411 0, 19, 19, 19, 11, 11, 11, 0, 0, 0,
412 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
413 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
414 0, 0, 0, 17, 17, 17, 0, 0, 0, 0,
415 0, 0, 5, 5, 5, 6, 6, 6, 2, 2,
416 2, 39, 0, 0, 0, 0, 0, 12, 12, 12,
417
418 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
419 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
420 28, 18, 18, 18, 0, 0, 0, 0, 0, 0,
421 1, 1, 1, 0, 0, 0, 0, 0, 0, 0,
422 0, 0, 0, 0, 0, 26, 26, 0, 0, 0,
423 0, 0, 0, 0, 0, 0, 12, 12, 20, 20,
424 20, 0, 0, 0, 0, 0, 0, 0, 0, 0,
425 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
426 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
427 0, 0, 0, 22, 22, 22, 0, 0, 0, 0,
428
429 0, 0, 0, 0, 0, 0, 0, 0, 23, 23,
430 23, 0, 52, 0, 0, 0, 0, 0, 0, 0,
431 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
432 28, 28, 28, 0, 0, 0, 0, 0, 0, 0,
433 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
434 0, 27, 0, 0, 0, 0, 0, 45, 0, 0,
435 0, 0, 0, 0, 0, 0
436 } ;
437
438 static const YY_CHAR yy_ec[256] =
439 { 0,
440 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
441 2, 2, 2, 1, 1, 1, 1, 1, 1, 1,
442 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
443 1, 2, 4, 5, 6, 1, 4, 7, 8, 9,
444 10, 11, 4, 4, 4, 12, 13, 14, 14, 14,
445 14, 15, 14, 16, 14, 14, 14, 17, 4, 4,
446 4, 4, 4, 1, 18, 19, 20, 21, 22, 23,
447 24, 25, 26, 27, 27, 28, 29, 30, 31, 32,
448 27, 33, 34, 35, 36, 27, 37, 27, 38, 27,
449 39, 40, 41, 42, 43, 1, 44, 45, 46, 47,
450
451 48, 49, 50, 51, 52, 53, 53, 54, 55, 56,
452 57, 58, 53, 59, 60, 61, 62, 63, 53, 64,
453 65, 66, 4, 4, 4, 67, 1, 1, 1, 1,
454 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
455 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
456 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
457 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
458 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
459 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
460 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
461
462 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
463 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
464 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
465 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
466 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
467 1, 1, 1, 1, 1
468 } ;
469
470 static const YY_CHAR yy_meta[68] =
471 { 0,
472 1, 2, 3, 1, 1, 1, 1, 1, 1, 4,
473 5, 1, 1, 6, 6, 7, 8, 9, 9, 9,
474 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
475 9, 9, 9, 9, 9, 9, 9, 9, 10, 1,
476 1, 1, 11, 11, 11, 11, 11, 11, 11, 11,
477 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
478 11, 11, 11, 11, 11, 11, 1
479 } ;
480
481 static const flex_int16_t yy_base[614] =
482 { 0,
483 0, 67, 134, 16, 16, 17, 18, 20, 1259, 2411,
484 2411, 19, 1217, 19, 31, 41, 43, 32, 33, 34,
485 35, 36, 2411, 23, 52, 2411, 51, 2411, 1216, 1243,
486 33, 46, 201, 268, 26, 33, 63, 81, 1199, 1236,
487 2411, 54, 65, 57, 62, 73, 188, 189, 185, 83,
488 190, 191, 184, 186, 202, 2411, 118, 1236, 0, 2411,
489 1224, 1223, 219, 2411, 0, 1227, 1231, 2411, 2411, 1230,
490 108, 221, 1215, 254, 235, 1177, 1166, 1168, 1163, 1171,
491 237, 1178, 247, 281, 284, 286, 287, 63, 221, 2411,
492 1222, 1216, 1220, 1210, 2411, 1218, 213, 2411, 288, 1189,
493
494 1202, 1187, 199, 256, 92, 224, 232, 1176, 2411, 2411,
495 236, 275, 280, 264, 234, 263, 265, 291, 281, 290,
496 287, 282, 298, 295, 296, 292, 303, 302, 301, 300,
497 307, 305, 328, 364, 1210, 1209, 374, 0, 2411, 2411,
498 2411, 2411, 1207, 2411, 1207, 1164, 1146, 316, 1148, 1153,
499 1155, 381, 362, 382, 380, 398, 387, 2411, 2411, 1200,
500 2411, 369, 1185, 1199, 350, 342, 343, 446, 359, 356,
501 354, 309, 385, 429, 362, 357, 361, 430, 363, 513,
502 364, 431, 433, 434, 435, 436, 370, 437, 440, 439,
503 442, 441, 438, 443, 448, 445, 446, 452, 449, 1197,
504
505 2411, 578, 0, 1197, 394, 1138, 1149, 1135, 1133, 1146,
506 1136, 1140, 490, 510, 526, 529, 530, 531, 1188, 644,
507 506, 453, 508, 2411, 539, 1172, 514, 527, 1172, 450,
508 474, 503, 711, 480, 507, 511, 2411, 777, 542, 102,
509 1156, 529, 531, 540, 542, 534, 545, 509, 535, 537,
510 552, 536, 559, 560, 561, 578, 562, 566, 839, 0,
511 596, 1112, 1112, 1118, 1123, 1121, 1111, 1110, 906, 602,
512 657, 664, 658, 973, 1040, 580, 584, 581, 570, 631,
513 1107, 1174, 2411, 661, 1148, 633, 634, 0, 670, 1133,
514 1131, 589, 1105, 1110, 1112, 1103, 1101, 351, 554, 636,
515
516 638, 642, 639, 640, 645, 673, 659, 646, 665, 663,
517 668, 664, 699, 717, 1241, 2411, 729, 1140, 0, 0,
518 1100, 1109, 1093, 1105, 0, 1104, 2411, 732, 1134, 1308,
519 1375, 1442, 737, 2411, 738, 1133, 671, 702, 710, 676,
520 711, 2411, 741, 1128, 2411, 742, 1127, 1509, 1112, 1110,
521 1108, 1106, 1082, 1094, 1074, 699, 1080, 1078, 695, 1078,
522 1073, 707, 726, 732, 731, 733, 734, 735, 752, 1576,
523 739, 736, 741, 2411, 774, 1115, 0, 0, 0, 0,
524 1082, 787, 2411, 775, 1113, 2411, 791, 1112, 2411, 796,
525 1111, 1643, 768, 773, 770, 201, 786, 2411, 804, 1110,
526
527 1098, 1105, 1102, 1087, 1067, 1047, 1062, 1061, 809, 1053,
528 1043, 1045, 1052, 1038, 1046, 751, 779, 797, 784, 789,
529 1080, 2411, 817, 1079, 787, 1710, 796, 0, 0, 851,
530 2411, 853, 1078, 835, 828, 837, 830, 841, 1051, 1068,
531 1049, 1048, 874, 1029, 1028, 2411, 865, 1073, 1026, 1038,
532 1042, 1068, 1033, 833, 838, 805, 2411, 1076, 2411, 869,
533 1060, 0, 1041, 857, 858, 861, 862, 860, 1056, 1056,
534 1040, 1035, 1028, 1023, 1008, 1053, 843, 903, 1777, 0,
535 1029, 873, 874, 899, 900, 898, 1040, 1032, 1042, 1037,
536 1001, 1018, 1844, 2411, 923, 1043, 0, 1050, 869, 896,
537
538 904, 795, 906, 1023, 1013, 1031, 1033, 978, 2411, 926,
539 1020, 0, 2411, 918, 911, 920, 919, 1012, 999, 989,
540 1008, 0, 931, 956, 1002, 1000, 976, 965, 0, 913,
541 986, 958, 961, 985, 981, 977, 946, 0, 922, 989,
542 991, 966, 968, 994, 938, 925, 903, 871, 0, 999,
543 1015, 2411, 1017, 882, 752, 749, 675, 2411, 686, 596,
544 507, 1019, 364, 1021, 91, 2411, 1911, 1922, 1933, 1944,
545 1955, 1965, 1976, 1987, 1998, 2009, 2019, 2030, 2041, 2052,
546 2063, 2074, 2085, 2095, 2105, 2116, 2126, 2137, 2148, 2159,
547 2170, 2180, 2190, 2201, 2211, 2221, 2231, 2241, 2251, 2262,
548
549 2271, 2282, 2293, 2304, 2315, 2326, 2337, 2347, 2358, 2368,
550 2379, 2389, 2399
551 } ;
552
553 static const flex_int16_t yy_def[614] =
554 { 0,
555 567, 567, 566, 3, 568, 568, 568, 568, 566, 566,
556 566, 569, 570, 571, 572, 566, 566, 572, 572, 572,
557 572, 572, 566, 566, 566, 566, 573, 566, 574, 566,
558 566, 566, 575, 575, 34, 34, 34, 34, 576, 566,
559 566, 34, 34, 34, 34, 34, 34, 34, 34, 34,
560 34, 34, 34, 34, 34, 566, 566, 577, 578, 566,
561 579, 579, 569, 566, 569, 566, 570, 566, 566, 580,
562 566, 572, 566, 566, 566, 566, 566, 566, 566, 566,
563 566, 566, 572, 572, 572, 572, 572, 566, 573, 566,
564 573, 566, 574, 566, 566, 581, 566, 566, 566, 34,
565
566 566, 34, 34, 34, 34, 34, 34, 576, 566, 566,
567 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
568 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
569 34, 34, 34, 566, 577, 577, 582, 583, 566, 566,
570 566, 566, 580, 566, 584, 566, 566, 566, 566, 566,
571 566, 572, 572, 572, 572, 572, 572, 566, 566, 581,
572 566, 566, 566, 585, 34, 34, 34, 575, 34, 34,
573 34, 34, 34, 34, 34, 34, 34, 34, 34, 575,
574 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
575 34, 34, 34, 34, 34, 34, 34, 34, 34, 582,
576
577 566, 582, 586, 584, 587, 566, 566, 566, 566, 566,
578 566, 566, 572, 572, 572, 572, 572, 572, 585, 588,
579 34, 34, 34, 566, 566, 566, 34, 34, 180, 34,
580 34, 34, 575, 34, 34, 34, 566, 566, 238, 34,
581 566, 34, 34, 34, 34, 34, 34, 34, 34, 34,
582 34, 34, 34, 34, 34, 34, 34, 34, 575, 589,
583 587, 566, 566, 566, 566, 566, 566, 566, 572, 572,
584 572, 572, 572, 572, 588, 34, 34, 34, 34, 34,
585 575, 575, 566, 566, 566, 34, 34, 238, 238, 566,
586 566, 566, 566, 566, 566, 566, 566, 566, 566, 34,
587
588 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
589 34, 34, 34, 34, 575, 566, 566, 566, 590, 591,
590 566, 566, 566, 566, 592, 566, 566, 566, 566, 572,
591 572, 572, 572, 566, 566, 566, 34, 34, 34, 34,
592 34, 566, 566, 566, 566, 566, 566, 575, 566, 566,
593 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
594 566, 34, 34, 34, 34, 34, 34, 34, 34, 575,
595 34, 34, 34, 566, 566, 566, 593, 594, 595, 596,
596 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
597 566, 572, 34, 34, 34, 34, 34, 566, 566, 566,
598
599 566, 566, 566, 566, 566, 566, 566, 566, 597, 566,
600 566, 566, 566, 566, 566, 34, 34, 34, 34, 34,
601 598, 566, 566, 566, 34, 575, 34, 599, 600, 566,
602 566, 566, 566, 34, 34, 34, 34, 34, 566, 566,
603 566, 566, 597, 566, 566, 566, 238, 566, 566, 566,
604 566, 566, 566, 34, 34, 34, 566, 601, 566, 566,
605 566, 602, 566, 34, 34, 34, 34, 34, 566, 566,
606 566, 566, 566, 566, 566, 566, 34, 34, 575, 603,
607 566, 34, 34, 34, 34, 34, 566, 566, 566, 566,
608 566, 566, 575, 566, 566, 566, 604, 566, 34, 34,
609
610 34, 34, 34, 566, 566, 566, 566, 566, 566, 566,
611 566, 605, 566, 34, 34, 34, 34, 566, 566, 566,
612 566, 606, 34, 34, 566, 566, 566, 566, 607, 34,
613 566, 566, 608, 566, 566, 566, 566, 609, 34, 566,
614 566, 608, 608, 610, 566, 566, 566, 566, 611, 566,
615 566, 566, 610, 566, 566, 566, 566, 566, 612, 566,
616 612, 613, 566, 613, 566, 0, 566, 566, 566, 566,
617 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
618 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
619 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
620
621 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
622 566, 566, 566
623 } ;
624
625 static const flex_int16_t yy_nxt[2479] =
626 { 0,
627 10, 10, 11, 10, 12, 10, 10, 13, 10, 10,
628 10, 10, 14, 10, 10, 10, 10, 57, 60, 60,
629 60, 58, 60, 64, 88, 88, 61, 61, 62, 69,
630 62, 70, 71, 71, 71, 71, 71, 71, 10, 10,
631 10, 10, 74, 95, 81, 96, 75, 73, 73, 73,
632 73, 73, 73, 88, 88, 90, 100, 103, 65, 97,
633 97, 97, 104, 100, 88, 88, 10, 10, 16, 11,
634 10, 12, 17, 10, 13, 10, 10, 10, 10, 14,
635 10, 10, 10, 10, 100, 83, 76, 100, 77, 82,
636 91, 87, 100, 100, 85, 100, 84, 105, 106, 86,
637
638 78, 79, 80, 100, 115, 10, 10, 10, 10, 71,
639 111, 107, 18, 100, 19, 112, 300, 116, 113, 134,
640 88, 114, 100, 135, 73, 443, 20, 21, 22, 168,
641 121, 117, 100, 10, 23, 24, 25, 26, 27, 23,
642 28, 29, 26, 26, 26, 30, 31, 32, 32, 32,
643 26, 33, 34, 35, 33, 36, 33, 37, 38, 33,
644 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
645 33, 33, 39, 40, 23, 41, 33, 33, 42, 43,
646 44, 45, 46, 33, 33, 47, 33, 48, 49, 50,
647 51, 52, 33, 53, 54, 55, 33, 33, 33, 33,
648
649 56, 98, 99, 98, 98, 98, 98, 98, 98, 98,
650 98, 98, 98, 98, 100, 100, 100, 101, 100, 100,
651 100, 100, 71, 64, 437, 90, 97, 97, 97, 100,
652 166, 100, 100, 129, 126, 127, 81, 73, 81, 98,
653 98, 98, 98, 118, 128, 119, 120, 122, 71, 123,
654 130, 124, 125, 131, 100, 74, 169, 132, 65, 75,
655 91, 133, 100, 73, 100, 170, 100, 98, 98, 99,
656 98, 98, 98, 98, 98, 98, 98, 98, 98, 98,
657 98, 82, 71, 82, 101, 71, 100, 71, 71, 162,
658 152, 167, 171, 100, 100, 100, 175, 73, 102, 76,
659
660 73, 77, 73, 73, 163, 100, 98, 98, 98, 98,
661 100, 100, 100, 78, 79, 80, 177, 100, 172, 174,
662 100, 100, 100, 173, 176, 100, 100, 154, 100, 184,
663 100, 100, 100, 100, 98, 100, 181, 100, 157, 100,
664 188, 153, 155, 156, 178, 192, 183, 179, 189, 185,
665 182, 180, 190, 187, 186, 194, 197, 195, 100, 208,
666 193, 222, 196, 71, 198, 134, 88, 229, 191, 135,
667 162, 223, 100, 100, 209, 199, 201, 221, 73, 227,
668 100, 71, 71, 71, 100, 163, 100, 100, 71, 100,
669 228, 100, 100, 100, 100, 71, 73, 73, 73, 71,
670
671 100, 358, 359, 73, 232, 236, 565, 229, 234, 214,
672 73, 233, 247, 229, 73, 100, 202, 202, 202, 202,
673 202, 202, 202, 202, 202, 202, 202, 202, 202, 202,
674 202, 202, 202, 202, 202, 202, 202, 202, 202, 202,
675 213, 216, 215, 218, 230, 217, 224, 225, 224, 224,
676 224, 224, 224, 224, 224, 224, 224, 224, 224, 100,
677 100, 100, 226, 100, 100, 100, 100, 100, 100, 100,
678 100, 100, 100, 100, 242, 100, 100, 277, 100, 100,
679 100, 235, 100, 100, 224, 224, 224, 224, 231, 251,
680 248, 71, 244, 243, 250, 255, 246, 245, 249, 253,
681
682 254, 252, 257, 258, 100, 256, 73, 259, 561, 281,
683 100, 71, 224, 237, 238, 239, 237, 237, 237, 237,
684 237, 237, 237, 237, 237, 237, 73, 71, 240, 241,
685 71, 71, 71, 100, 282, 286, 100, 100, 100, 100,
686 162, 100, 73, 289, 100, 73, 73, 73, 276, 269,
687 278, 237, 237, 237, 237, 163, 279, 100, 566, 100,
688 307, 100, 287, 229, 100, 100, 100, 100, 270, 280,
689 100, 229, 100, 301, 272, 100, 273, 271, 302, 237,
690 201, 305, 100, 303, 308, 304, 274, 310, 306, 100,
691 100, 100, 100, 314, 309, 229, 100, 71, 337, 339,
692
693 100, 338, 340, 71, 311, 360, 351, 313, 100, 361,
694 100, 100, 73, 312, 100, 190, 563, 315, 73, 352,
695 202, 202, 202, 202, 202, 202, 202, 202, 202, 202,
696 202, 202, 202, 202, 202, 202, 202, 202, 202, 202,
697 202, 202, 202, 202, 98, 99, 98, 98, 98, 98,
698 98, 98, 98, 98, 98, 98, 98, 330, 71, 71,
699 101, 100, 162, 100, 100, 71, 100, 341, 100, 100,
700 100, 289, 100, 73, 73, 100, 100, 163, 362, 348,
701 73, 348, 98, 98, 98, 98, 566, 561, 364, 100,
702 367, 363, 229, 100, 100, 100, 393, 396, 100, 365,
703
704 366, 100, 331, 100, 369, 333, 100, 371, 348, 443,
705 98, 283, 284, 283, 283, 283, 283, 283, 283, 283,
706 283, 283, 283, 283, 332, 229, 368, 285, 370, 100,
707 162, 373, 100, 71, 394, 395, 397, 100, 71, 71,
708 100, 100, 162, 162, 412, 163, 372, 100, 73, 283,
709 283, 283, 283, 73, 73, 408, 100, 163, 163, 409,
710 413, 100, 100, 100, 100, 100, 100, 229, 421, 100,
711 560, 100, 443, 348, 416, 162, 71, 283, 288, 289,
712 418, 100, 100, 427, 426, 392, 420, 417, 430, 430,
713 163, 73, 71, 163, 419, 290, 291, 71, 100, 425,
714
715 100, 292, 434, 100, 436, 162, 438, 73, 454, 100,
716 447, 447, 73, 421, 100, 435, 100, 100, 162, 100,
717 163, 293, 294, 295, 448, 100, 100, 100, 296, 229,
718 297, 455, 456, 163, 348, 100, 298, 348, 299, 316,
719 317, 316, 316, 316, 316, 316, 316, 316, 316, 316,
720 316, 316, 430, 430, 71, 318, 229, 464, 100, 466,
721 100, 465, 468, 100, 479, 100, 289, 100, 100, 73,
722 162, 100, 467, 100, 463, 447, 447, 316, 316, 316,
723 316, 566, 482, 483, 478, 163, 484, 100, 100, 566,
724 100, 100, 100, 477, 499, 485, 514, 500, 559, 100,
725
726 557, 493, 486, 100, 100, 316, 327, 328, 327, 327,
727 327, 327, 327, 327, 327, 327, 327, 327, 327, 421,
728 501, 502, 329, 503, 162, 515, 100, 162, 100, 100,
729 100, 516, 523, 100, 100, 517, 100, 443, 229, 163,
730 524, 100, 163, 100, 327, 327, 327, 327, 100, 100,
731 100, 530, 100, 229, 556, 539, 229, 531, 532, 541,
732 541, 100, 543, 543, 533, 555, 542, 543, 543, 543,
733 543, 548, 327, 334, 335, 334, 334, 334, 334, 334,
734 334, 334, 334, 334, 334, 334, 100, 540, 541, 336,
735 540, 541, 541, 541, 542, 550, 551, 542, 547, 542,
736
737 550, 551, 163, 552, 546, 163, 545, 537, 552, 536,
738 554, 334, 334, 334, 334, 554, 551, 551, 550, 551,
739 550, 551, 550, 551, 552, 535, 552, 534, 552, 528,
740 552, 527, 526, 554, 525, 554, 164, 554, 443, 334,
741 98, 99, 98, 98, 98, 98, 98, 98, 98, 98,
742 98, 98, 98, 521, 520, 519, 101, 518, 513, 164,
743 508, 443, 507, 506, 505, 504, 498, 492, 443, 443,
744 491, 490, 489, 488, 487, 481, 164, 219, 98, 98,
745 98, 98, 412, 476, 475, 474, 443, 473, 443, 443,
746 472, 471, 470, 469, 145, 164, 458, 453, 452, 451,
747
748 450, 449, 443, 445, 444, 443, 98, 342, 343, 342,
749 342, 342, 342, 342, 342, 342, 342, 342, 342, 342,
750 443, 442, 441, 344, 440, 439, 164, 145, 145, 145,
751 429, 164, 415, 414, 411, 410, 407, 406, 405, 404,
752 403, 402, 401, 164, 164, 342, 342, 342, 342, 145,
753 145, 382, 381, 380, 379, 378, 164, 357, 356, 355,
754 354, 353, 350, 349, 164, 326, 325, 324, 323, 322,
755 321, 320, 164, 342, 345, 346, 345, 345, 345, 345,
756 345, 345, 345, 345, 345, 345, 345, 100, 164, 219,
757 347, 268, 267, 266, 265, 264, 263, 262, 204, 201,
758
759 219, 164, 161, 212, 211, 210, 207, 206, 204, 144,
760 136, 136, 345, 345, 345, 345, 109, 165, 164, 100,
761 161, 159, 566, 158, 566, 151, 150, 149, 148, 147,
762 146, 145, 144, 566, 142, 141, 140, 136, 110, 109,
763 345, 374, 375, 374, 374, 374, 374, 374, 374, 374,
764 374, 374, 374, 374, 94, 93, 67, 376, 566, 566,
765 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
766 566, 566, 566, 566, 566, 566, 566, 566, 566, 374,
767 374, 374, 374, 566, 566, 566, 566, 566, 566, 566,
768 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
769
770 566, 566, 566, 566, 566, 566, 566, 374, 383, 384,
771 383, 383, 383, 383, 383, 383, 383, 383, 383, 383,
772 383, 566, 566, 566, 385, 566, 566, 566, 566, 566,
773 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
774 566, 566, 566, 566, 566, 566, 383, 383, 383, 383,
775 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
776 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
777 566, 566, 566, 566, 383, 386, 387, 386, 386, 386,
778 386, 386, 386, 386, 386, 386, 386, 386, 566, 566,
779 566, 388, 566, 566, 566, 566, 566, 566, 566, 566,
780
781 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
782 566, 566, 566, 386, 386, 386, 386, 566, 566, 566,
783 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
784 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
785 566, 386, 389, 390, 389, 389, 389, 389, 389, 389,
786 389, 389, 389, 389, 389, 566, 566, 566, 391, 566,
787 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
788 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
789 389, 389, 389, 389, 566, 566, 566, 566, 566, 566,
790 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
791
792 566, 566, 566, 566, 566, 566, 566, 566, 389, 398,
793 399, 398, 398, 398, 398, 398, 398, 398, 398, 398,
794 398, 398, 566, 566, 566, 400, 566, 566, 566, 566,
795 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
796 566, 566, 566, 566, 566, 566, 566, 398, 398, 398,
797 398, 566, 566, 566, 566, 566, 566, 566, 566, 566,
798 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
799 566, 566, 566, 566, 566, 398, 422, 423, 422, 422,
800 422, 422, 422, 422, 422, 422, 422, 422, 422, 566,
801 566, 566, 424, 566, 566, 566, 566, 566, 566, 566,
802
803 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
804 566, 566, 566, 566, 422, 422, 422, 422, 566, 566,
805 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
806 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
807 566, 566, 422, 431, 432, 431, 431, 431, 431, 431,
808 431, 431, 431, 431, 431, 431, 566, 566, 566, 433,
809 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
810 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
811 566, 431, 431, 431, 431, 566, 566, 566, 566, 566,
812 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
813
814 566, 566, 566, 566, 566, 566, 566, 566, 566, 431,
815 459, 460, 459, 459, 459, 459, 459, 459, 459, 459,
816 459, 459, 459, 566, 566, 566, 461, 566, 566, 566,
817 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
818 566, 566, 566, 566, 566, 566, 566, 566, 459, 459,
819 459, 459, 566, 566, 566, 566, 566, 566, 566, 566,
820 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
821 566, 566, 566, 566, 566, 566, 459, 494, 495, 494,
822 494, 494, 494, 494, 494, 494, 494, 494, 494, 494,
823 566, 566, 566, 496, 566, 566, 566, 566, 566, 566,
824
825 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
826 566, 566, 566, 566, 566, 494, 494, 494, 494, 566,
827 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
828 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
829 566, 566, 566, 494, 509, 510, 509, 509, 509, 509,
830 509, 509, 509, 509, 509, 509, 509, 566, 566, 566,
831 511, 566, 566, 566, 566, 566, 566, 566, 566, 566,
832 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
833 566, 566, 509, 509, 509, 509, 566, 566, 566, 566,
834 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
835
836 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
837 509, 15, 15, 15, 15, 15, 15, 15, 15, 15,
838 15, 15, 59, 59, 59, 59, 59, 59, 59, 59,
839 59, 59, 59, 63, 63, 63, 63, 63, 63, 63,
840 63, 63, 63, 63, 66, 66, 66, 66, 66, 66,
841 66, 66, 66, 66, 66, 68, 68, 68, 68, 68,
842 68, 68, 68, 68, 68, 68, 72, 566, 566, 566,
843 72, 72, 72, 72, 566, 72, 89, 89, 89, 89,
844 89, 89, 89, 89, 89, 89, 89, 92, 92, 92,
845 92, 92, 92, 92, 92, 92, 92, 92, 100, 100,
846
847 100, 100, 100, 100, 100, 100, 100, 100, 100, 108,
848 108, 108, 108, 108, 108, 108, 108, 108, 566, 108,
849 137, 566, 566, 566, 566, 566, 566, 566, 566, 137,
850 138, 138, 566, 138, 566, 138, 138, 138, 138, 138,
851 138, 139, 139, 139, 139, 139, 139, 139, 139, 139,
852 139, 139, 143, 143, 143, 143, 143, 143, 143, 143,
853 143, 143, 143, 160, 160, 160, 160, 160, 160, 160,
854 160, 160, 160, 160, 200, 200, 200, 200, 200, 200,
855 200, 200, 200, 200, 200, 203, 203, 566, 203, 566,
856 203, 203, 203, 203, 203, 203, 205, 566, 566, 566,
857
858 566, 566, 566, 205, 566, 205, 220, 566, 566, 566,
859 566, 566, 566, 220, 566, 220, 260, 260, 566, 260,
860 566, 260, 260, 260, 260, 260, 260, 261, 566, 566,
861 566, 261, 261, 261, 261, 566, 261, 275, 275, 275,
862 275, 275, 275, 275, 275, 275, 275, 275, 319, 319,
863 566, 319, 566, 319, 319, 319, 319, 319, 319, 377,
864 377, 566, 377, 566, 377, 377, 377, 377, 377, 377,
865 327, 327, 327, 327, 327, 566, 566, 327, 566, 327,
866 334, 334, 334, 334, 334, 566, 566, 334, 566, 334,
867 428, 428, 566, 428, 566, 428, 428, 428, 428, 428,
868
869 428, 383, 383, 383, 383, 383, 566, 566, 383, 566,
870 383, 386, 386, 386, 386, 386, 566, 566, 386, 566,
871 386, 389, 389, 389, 389, 389, 566, 566, 389, 566,
872 389, 446, 446, 446, 446, 446, 566, 446, 446, 566,
873 446, 457, 457, 457, 457, 457, 566, 566, 457, 566,
874 457, 462, 462, 566, 462, 566, 462, 462, 462, 462,
875 462, 462, 431, 431, 431, 431, 431, 566, 566, 431,
876 566, 431, 220, 566, 566, 566, 566, 566, 566, 220,
877 566, 220, 480, 480, 566, 480, 566, 480, 480, 480,
878 480, 480, 480, 497, 497, 566, 497, 566, 497, 497,
879
880 497, 497, 497, 497, 512, 512, 566, 512, 566, 512,
881 512, 512, 512, 512, 512, 522, 522, 566, 522, 566,
882 522, 522, 522, 522, 522, 522, 529, 529, 566, 529,
883 566, 529, 529, 529, 529, 529, 529, 538, 538, 566,
884 538, 566, 538, 538, 538, 538, 538, 538, 544, 544,
885 566, 566, 566, 566, 566, 544, 566, 544, 549, 549,
886 566, 549, 566, 549, 549, 549, 549, 549, 549, 553,
887 553, 553, 566, 553, 553, 553, 553, 566, 553, 558,
888 558, 566, 558, 566, 558, 558, 558, 558, 558, 558,
889 562, 566, 566, 566, 566, 566, 566, 562, 566, 562,
890
891 564, 564, 564, 566, 564, 564, 564, 564, 566, 564,
892 9, 566, 566, 566, 566, 566, 566, 566, 566, 566,
893 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
894 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
895 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
896 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
897 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
898 566, 566, 566, 566, 566, 566, 566, 566
899 } ;
900
901 static const flex_int16_t yy_chk[2479] =
902 { 0,
903 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
904 1, 1, 1, 1, 1, 1, 1, 4, 5, 6,
905 7, 4, 8, 12, 24, 24, 5, 6, 7, 14,
906 8, 14, 15, 18, 19, 20, 21, 22, 1, 1,
907 1, 1, 16, 31, 17, 31, 16, 15, 18, 19,
908 20, 21, 22, 25, 25, 27, 35, 35, 12, 32,
909 32, 32, 36, 36, 88, 88, 1, 2, 2, 2,
910 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
911 2, 2, 2, 2, 42, 18, 16, 44, 16, 17,
912 27, 22, 45, 37, 20, 43, 19, 37, 38, 21,
913
914 16, 16, 16, 46, 44, 2, 2, 2, 2, 71,
915 42, 38, 2, 50, 2, 43, 240, 45, 43, 57,
916 57, 43, 105, 57, 71, 565, 2, 2, 2, 105,
917 50, 46, 240, 2, 3, 3, 3, 3, 3, 3,
918 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
919 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
920 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
921 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
922 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
923 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
924
925 3, 33, 33, 33, 33, 33, 33, 33, 33, 33,
926 33, 33, 33, 33, 53, 49, 54, 33, 47, 48,
927 51, 52, 72, 63, 396, 89, 97, 97, 97, 103,
928 103, 396, 55, 54, 53, 53, 75, 72, 81, 33,
929 33, 33, 33, 47, 53, 48, 49, 51, 83, 52,
930 54, 52, 52, 55, 106, 74, 106, 55, 63, 74,
931 89, 55, 107, 83, 115, 107, 111, 33, 34, 34,
932 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
933 34, 75, 84, 81, 34, 85, 104, 86, 87, 99,
934 83, 104, 111, 116, 114, 117, 115, 84, 34, 74,
935
936 85, 74, 86, 87, 99, 112, 34, 34, 34, 34,
937 113, 119, 122, 74, 74, 74, 117, 121, 112, 114,
938 120, 118, 126, 113, 116, 124, 125, 85, 123, 122,
939 130, 129, 128, 127, 34, 132, 119, 131, 87, 172,
940 125, 84, 85, 86, 118, 128, 121, 118, 126, 123,
941 120, 118, 127, 124, 123, 129, 132, 130, 133, 148,
942 128, 166, 131, 153, 132, 134, 134, 172, 127, 134,
943 162, 167, 166, 167, 148, 133, 137, 165, 153, 169,
944 165, 155, 152, 154, 171, 162, 170, 176, 157, 169,
945 170, 177, 175, 179, 181, 205, 155, 152, 154, 156,
946
947 187, 298, 298, 157, 175, 179, 563, 171, 177, 153,
948 205, 176, 187, 181, 156, 173, 137, 137, 137, 137,
949 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
950 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
951 152, 155, 154, 157, 173, 156, 168, 168, 168, 168,
952 168, 168, 168, 168, 168, 168, 168, 168, 168, 174,
953 178, 182, 168, 183, 184, 185, 186, 188, 193, 190,
954 189, 192, 191, 194, 182, 196, 197, 222, 195, 199,
955 230, 178, 198, 222, 168, 168, 168, 168, 174, 191,
956 188, 213, 184, 183, 190, 195, 186, 185, 189, 193,
957
958 194, 192, 197, 198, 231, 196, 213, 199, 561, 230,
959 234, 214, 168, 180, 180, 180, 180, 180, 180, 180,
960 180, 180, 180, 180, 180, 180, 214, 215, 180, 180,
961 216, 217, 218, 232, 231, 234, 221, 235, 223, 248,
962 225, 236, 215, 239, 227, 216, 217, 218, 221, 213,
963 223, 180, 180, 180, 180, 225, 227, 228, 239, 242,
964 248, 243, 235, 232, 246, 249, 252, 250, 214, 228,
965 244, 236, 245, 242, 216, 247, 217, 215, 243, 180,
966 202, 246, 251, 244, 250, 245, 218, 252, 247, 253,
967 254, 255, 257, 256, 251, 249, 258, 261, 276, 278,
968
969 279, 277, 279, 270, 253, 299, 292, 255, 256, 299,
970 276, 278, 261, 254, 277, 258, 560, 257, 270, 292,
971 202, 202, 202, 202, 202, 202, 202, 202, 202, 202,
972 202, 202, 202, 202, 202, 202, 202, 202, 202, 202,
973 202, 202, 202, 202, 220, 220, 220, 220, 220, 220,
974 220, 220, 220, 220, 220, 220, 220, 270, 271, 273,
975 220, 280, 284, 286, 287, 272, 300, 280, 301, 303,
976 304, 289, 302, 271, 273, 305, 308, 284, 300, 286,
977 272, 287, 220, 220, 220, 220, 289, 559, 302, 307,
978 305, 301, 308, 310, 312, 309, 337, 340, 311, 303,
979
980 304, 337, 271, 306, 307, 273, 340, 312, 310, 557,
981 220, 233, 233, 233, 233, 233, 233, 233, 233, 233,
982 233, 233, 233, 233, 272, 309, 306, 233, 311, 313,
983 317, 314, 338, 328, 338, 339, 341, 362, 333, 335,
984 339, 341, 343, 346, 359, 317, 313, 314, 328, 233,
985 233, 233, 233, 333, 335, 356, 363, 343, 346, 356,
986 359, 365, 364, 366, 367, 368, 372, 362, 369, 371,
987 556, 373, 555, 363, 364, 375, 384, 233, 238, 238,
988 366, 416, 369, 373, 372, 333, 368, 365, 382, 382,
989 375, 384, 387, 238, 367, 238, 238, 390, 393, 371,
990
991 395, 238, 393, 394, 395, 399, 397, 387, 416, 417,
992 409, 409, 390, 418, 419, 394, 397, 425, 423, 420,
993 399, 238, 238, 238, 409, 502, 427, 418, 238, 502,
994 238, 419, 420, 423, 425, 456, 238, 417, 238, 259,
995 259, 259, 259, 259, 259, 259, 259, 259, 259, 259,
996 259, 259, 430, 430, 432, 259, 427, 434, 435, 436,
997 437, 435, 438, 454, 456, 434, 447, 436, 455, 432,
998 460, 438, 437, 477, 430, 443, 443, 259, 259, 259,
999 259, 447, 464, 465, 455, 460, 466, 464, 465, 443,
1000 468, 466, 467, 454, 482, 467, 499, 483, 554, 499,
1001
1002 548, 477, 468, 482, 483, 259, 269, 269, 269, 269,
1003 269, 269, 269, 269, 269, 269, 269, 269, 269, 478,
1004 484, 485, 269, 486, 495, 500, 500, 510, 486, 484,
1005 485, 501, 515, 478, 501, 503, 503, 547, 514, 495,
1006 516, 515, 510, 530, 269, 269, 269, 269, 514, 517,
1007 516, 523, 539, 517, 546, 530, 539, 524, 524, 532,
1008 532, 523, 533, 533, 524, 545, 532, 542, 542, 543,
1009 543, 537, 269, 274, 274, 274, 274, 274, 274, 274,
1010 274, 274, 274, 274, 274, 274, 524, 531, 531, 274,
1011 540, 540, 541, 541, 531, 544, 544, 540, 536, 541,
1012
1013 550, 550, 531, 544, 535, 540, 534, 528, 550, 527,
1014 544, 274, 274, 274, 274, 550, 551, 551, 553, 553,
1015 562, 562, 564, 564, 551, 526, 553, 525, 562, 521,
1016 564, 520, 519, 553, 518, 562, 511, 564, 508, 274,
1017 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
1018 275, 275, 275, 507, 506, 505, 275, 504, 498, 496,
1019 492, 491, 490, 489, 488, 487, 481, 476, 475, 474,
1020 473, 472, 471, 470, 469, 463, 461, 458, 275, 275,
1021 275, 275, 453, 452, 451, 450, 449, 448, 445, 444,
1022 442, 441, 440, 439, 433, 424, 421, 415, 414, 413,
1023
1024 412, 411, 410, 408, 407, 406, 275, 281, 281, 281,
1025 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
1026 405, 404, 403, 281, 402, 401, 400, 391, 388, 385,
1027 381, 376, 361, 360, 358, 357, 355, 354, 353, 352,
1028 351, 350, 349, 347, 344, 281, 281, 281, 281, 336,
1029 329, 326, 324, 323, 322, 321, 318, 297, 296, 295,
1030 294, 293, 291, 290, 285, 268, 267, 266, 265, 264,
1031 263, 262, 241, 281, 282, 282, 282, 282, 282, 282,
1032 282, 282, 282, 282, 282, 282, 282, 229, 226, 219,
1033 282, 212, 211, 210, 209, 208, 207, 206, 204, 200,
1034
1035 164, 163, 160, 151, 150, 149, 147, 146, 145, 143,
1036 136, 135, 282, 282, 282, 282, 108, 102, 101, 100,
1037 96, 94, 93, 92, 91, 82, 80, 79, 78, 77,
1038 76, 73, 70, 67, 66, 62, 61, 58, 40, 39,
1039 282, 315, 315, 315, 315, 315, 315, 315, 315, 315,
1040 315, 315, 315, 315, 30, 29, 13, 315, 9, 0,
1041 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1042 0, 0, 0, 0, 0, 0, 0, 0, 0, 315,
1043 315, 315, 315, 0, 0, 0, 0, 0, 0, 0,
1044 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1045
1046 0, 0, 0, 0, 0, 0, 0, 315, 330, 330,
1047 330, 330, 330, 330, 330, 330, 330, 330, 330, 330,
1048 330, 0, 0, 0, 330, 0, 0, 0, 0, 0,
1049 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1050 0, 0, 0, 0, 0, 0, 330, 330, 330, 330,
1051 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1052 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1053 0, 0, 0, 0, 330, 331, 331, 331, 331, 331,
1054 331, 331, 331, 331, 331, 331, 331, 331, 0, 0,
1055 0, 331, 0, 0, 0, 0, 0, 0, 0, 0,
1056
1057 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1058 0, 0, 0, 331, 331, 331, 331, 0, 0, 0,
1059 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1060 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1061 0, 331, 332, 332, 332, 332, 332, 332, 332, 332,
1062 332, 332, 332, 332, 332, 0, 0, 0, 332, 0,
1063 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1064 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1065 332, 332, 332, 332, 0, 0, 0, 0, 0, 0,
1066 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1067
1068 0, 0, 0, 0, 0, 0, 0, 0, 332, 348,
1069 348, 348, 348, 348, 348, 348, 348, 348, 348, 348,
1070 348, 348, 0, 0, 0, 348, 0, 0, 0, 0,
1071 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1072 0, 0, 0, 0, 0, 0, 0, 348, 348, 348,
1073 348, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1074 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1075 0, 0, 0, 0, 0, 348, 370, 370, 370, 370,
1076 370, 370, 370, 370, 370, 370, 370, 370, 370, 0,
1077 0, 0, 370, 0, 0, 0, 0, 0, 0, 0,
1078
1079 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1080 0, 0, 0, 0, 370, 370, 370, 370, 0, 0,
1081 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1082 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1083 0, 0, 370, 392, 392, 392, 392, 392, 392, 392,
1084 392, 392, 392, 392, 392, 392, 0, 0, 0, 392,
1085 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1086 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1087 0, 392, 392, 392, 392, 0, 0, 0, 0, 0,
1088 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1089
1090 0, 0, 0, 0, 0, 0, 0, 0, 0, 392,
1091 426, 426, 426, 426, 426, 426, 426, 426, 426, 426,
1092 426, 426, 426, 0, 0, 0, 426, 0, 0, 0,
1093 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1094 0, 0, 0, 0, 0, 0, 0, 0, 426, 426,
1095 426, 426, 0, 0, 0, 0, 0, 0, 0, 0,
1096 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1097 0, 0, 0, 0, 0, 0, 426, 479, 479, 479,
1098 479, 479, 479, 479, 479, 479, 479, 479, 479, 479,
1099 0, 0, 0, 479, 0, 0, 0, 0, 0, 0,
1100
1101 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1102 0, 0, 0, 0, 0, 479, 479, 479, 479, 0,
1103 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1104 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1105 0, 0, 0, 479, 493, 493, 493, 493, 493, 493,
1106 493, 493, 493, 493, 493, 493, 493, 0, 0, 0,
1107 493, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1108 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1109 0, 0, 493, 493, 493, 493, 0, 0, 0, 0,
1110 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1111
1112 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1113 493, 567, 567, 567, 567, 567, 567, 567, 567, 567,
1114 567, 567, 568, 568, 568, 568, 568, 568, 568, 568,
1115 568, 568, 568, 569, 569, 569, 569, 569, 569, 569,
1116 569, 569, 569, 569, 570, 570, 570, 570, 570, 570,
1117 570, 570, 570, 570, 570, 571, 571, 571, 571, 571,
1118 571, 571, 571, 571, 571, 571, 572, 0, 0, 0,
1119 572, 572, 572, 572, 0, 572, 573, 573, 573, 573,
1120 573, 573, 573, 573, 573, 573, 573, 574, 574, 574,
1121 574, 574, 574, 574, 574, 574, 574, 574, 575, 575,
1122
1123 575, 575, 575, 575, 575, 575, 575, 575, 575, 576,
1124 576, 576, 576, 576, 576, 576, 576, 576, 0, 576,
1125 577, 0, 0, 0, 0, 0, 0, 0, 0, 577,
1126 578, 578, 0, 578, 0, 578, 578, 578, 578, 578,
1127 578, 579, 579, 579, 579, 579, 579, 579, 579, 579,
1128 579, 579, 580, 580, 580, 580, 580, 580, 580, 580,
1129 580, 580, 580, 581, 581, 581, 581, 581, 581, 581,
1130 581, 581, 581, 581, 582, 582, 582, 582, 582, 582,
1131 582, 582, 582, 582, 582, 583, 583, 0, 583, 0,
1132 583, 583, 583, 583, 583, 583, 584, 0, 0, 0,
1133
1134 0, 0, 0, 584, 0, 584, 585, 0, 0, 0,
1135 0, 0, 0, 585, 0, 585, 586, 586, 0, 586,
1136 0, 586, 586, 586, 586, 586, 586, 587, 0, 0,
1137 0, 587, 587, 587, 587, 0, 587, 588, 588, 588,
1138 588, 588, 588, 588, 588, 588, 588, 588, 589, 589,
1139 0, 589, 0, 589, 589, 589, 589, 589, 589, 590,
1140 590, 0, 590, 0, 590, 590, 590, 590, 590, 590,
1141 591, 591, 591, 591, 591, 0, 0, 591, 0, 591,
1142 592, 592, 592, 592, 592, 0, 0, 592, 0, 592,
1143 593, 593, 0, 593, 0, 593, 593, 593, 593, 593,
1144
1145 593, 594, 594, 594, 594, 594, 0, 0, 594, 0,
1146 594, 595, 595, 595, 595, 595, 0, 0, 595, 0,
1147 595, 596, 596, 596, 596, 596, 0, 0, 596, 0,
1148 596, 597, 597, 597, 597, 597, 0, 597, 597, 0,
1149 597, 598, 598, 598, 598, 598, 0, 0, 598, 0,
1150 598, 599, 599, 0, 599, 0, 599, 599, 599, 599,
1151 599, 599, 600, 600, 600, 600, 600, 0, 0, 600,
1152 0, 600, 601, 0, 0, 0, 0, 0, 0, 601,
1153 0, 601, 602, 602, 0, 602, 0, 602, 602, 602,
1154 602, 602, 602, 603, 603, 0, 603, 0, 603, 603,
1155
1156 603, 603, 603, 603, 604, 604, 0, 604, 0, 604,
1157 604, 604, 604, 604, 604, 605, 605, 0, 605, 0,
1158 605, 605, 605, 605, 605, 605, 606, 606, 0, 606,
1159 0, 606, 606, 606, 606, 606, 606, 607, 607, 0,
1160 607, 0, 607, 607, 607, 607, 607, 607, 608, 608,
1161 0, 0, 0, 0, 0, 608, 0, 608, 609, 609,
1162 0, 609, 0, 609, 609, 609, 609, 609, 609, 610,
1163 610, 610, 0, 610, 610, 610, 610, 0, 610, 611,
1164 611, 0, 611, 0, 611, 611, 611, 611, 611, 611,
1165 612, 0, 0, 0, 0, 0, 0, 612, 0, 612,
1166
1167 613, 613, 613, 0, 613, 613, 613, 613, 0, 613,
1168 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
1169 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
1170 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
1171 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
1172 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
1173 566, 566, 566, 566, 566, 566, 566, 566, 566, 566,
1174 566, 566, 566, 566, 566, 566, 566, 566
1175 } ;
1176
1177 static yy_state_type yy_last_accepting_state;
1178 static char *yy_last_accepting_cpos;
1179
1180 extern int yy_flex_debug;
1181 int yy_flex_debug = 0;
1182
1183 /* The intent behind this definition is that it'll catch
1184 * any uses of REJECT which flex missed.
1185 */
1186 #define REJECT reject_used_but_not_detected
1187 #define yymore() yymore_used_but_not_detected
1188 #define YY_MORE_ADJ 0
1189 #define YY_RESTORE_YY_MORE_OFFSET
1190 char *yytext;
1191 #line 1 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1192 /* -*- indented-text -*- */
1193 /* Process source files and output type information.
1194 Copyright (C) 2002-2021 Free Software Foundation, Inc.
1195
1196 This file is part of GCC.
1197
1198 GCC is free software; you can redistribute it and/or modify it under
1199 the terms of the GNU General Public License as published by the Free
1200 Software Foundation; either version 3, or (at your option) any later
1201 version.
1202
1203 GCC is distributed in the hope that it will be useful, but WITHOUT ANY
1204 WARRANTY; without even the implied warranty of MERCHANTABILITY or
1205 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
1206 for more details.
1207
1208 You should have received a copy of the GNU General Public License
1209 along with GCC; see the file COPYING3. If not see
1210 <http://www.gnu.org/licenses/>. */
1211 #define YY_NO_INPUT 1
1212 #line 24 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1213 #ifdef HOST_GENERATOR_FILE
1214 #include "config.h"
1215 #define GENERATOR_FILE 1
1216 #else
1217 #include "bconfig.h"
1218 #endif
1219 #include "system.h"
1220
1221 #define malloc xmalloc
1222 #define realloc xrealloc
1223
1224 #include "gengtype.h"
1225
1226 #define YY_DECL int yylex (const char **yylval)
1227 #define yyterminate() return EOF_TOKEN
1228
1229 struct fileloc lexer_line;
1230 int lexer_toplevel_done;
1231
1232 static void
update_lineno(const char * l,size_t len)1233 update_lineno (const char *l, size_t len)
1234 {
1235 while (len-- > 0)
1236 if (*l++ == '\n')
1237 lexer_line.line++;
1238 }
1239
1240 #line 1235 "gengtype-lex.c"
1241 #line 59 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1242 /* Include '::' in identifiers to capture C++ scope qualifiers. */
1243
1244 #line 1239 "gengtype-lex.c"
1245
1246 #define INITIAL 0
1247 #define in_struct 1
1248 #define in_struct_comment 2
1249 #define in_comment 3
1250
1251 #ifndef YY_NO_UNISTD_H
1252 /* Special case for "unistd.h", since it is non-ANSI. We include it way
1253 * down here because we want the user's section 1 to have been scanned first.
1254 * The user has a chance to override it with an option.
1255 */
1256 #include <unistd.h>
1257 #endif
1258
1259 #ifndef YY_EXTRA_TYPE
1260 #define YY_EXTRA_TYPE void *
1261 #endif
1262
1263 static int yy_init_globals ( void );
1264
1265 /* Accessor methods to globals.
1266 These are made visible to non-reentrant scanners for convenience. */
1267
1268 int yylex_destroy ( void );
1269
1270 int yyget_debug ( void );
1271
1272 void yyset_debug ( int debug_flag );
1273
1274 YY_EXTRA_TYPE yyget_extra ( void );
1275
1276 void yyset_extra ( YY_EXTRA_TYPE user_defined );
1277
1278 FILE *yyget_in ( void );
1279
1280 void yyset_in ( FILE * _in_str );
1281
1282 FILE *yyget_out ( void );
1283
1284 void yyset_out ( FILE * _out_str );
1285
1286 int yyget_leng ( void );
1287
1288 char *yyget_text ( void );
1289
1290 int yyget_lineno ( void );
1291
1292 void yyset_lineno ( int _line_number );
1293
1294 /* Macros after this point can all be overridden by user definitions in
1295 * section 1.
1296 */
1297
1298 #ifndef YY_SKIP_YYWRAP
1299 #ifdef __cplusplus
1300 extern "C" int yywrap ( void );
1301 #else
1302 extern int yywrap ( void );
1303 #endif
1304 #endif
1305
1306 #ifndef YY_NO_UNPUT
1307
1308 #endif
1309
1310 #ifndef yytext_ptr
1311 static void yy_flex_strncpy ( char *, const char *, int );
1312 #endif
1313
1314 #ifdef YY_NEED_STRLEN
1315 static int yy_flex_strlen ( const char * );
1316 #endif
1317
1318 #ifndef YY_NO_INPUT
1319 #ifdef __cplusplus
1320 static int yyinput ( void );
1321 #else
1322 static int input ( void );
1323 #endif
1324
1325 #endif
1326
1327 /* Amount of stuff to slurp up with each read. */
1328 #ifndef YY_READ_BUF_SIZE
1329 #ifdef __ia64__
1330 /* On IA-64, the buffer size is 16k, not 8k */
1331 #define YY_READ_BUF_SIZE 16384
1332 #else
1333 #define YY_READ_BUF_SIZE 8192
1334 #endif /* __ia64__ */
1335 #endif
1336
1337 /* Copy whatever the last rule matched to the standard output. */
1338 #ifndef ECHO
1339 /* This used to be an fputs(), but since the string might contain NUL's,
1340 * we now use fwrite().
1341 */
1342 #define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
1343 #endif
1344
1345 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1346 * is returned in "result".
1347 */
1348 #ifndef YY_INPUT
1349 #define YY_INPUT(buf,result,max_size) \
1350 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
1351 { \
1352 int c = '*'; \
1353 int n; \
1354 for ( n = 0; n < max_size && \
1355 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1356 buf[n] = (char) c; \
1357 if ( c == '\n' ) \
1358 buf[n++] = (char) c; \
1359 if ( c == EOF && ferror( yyin ) ) \
1360 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1361 result = n; \
1362 } \
1363 else \
1364 { \
1365 errno=0; \
1366 while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
1367 { \
1368 if( errno != EINTR) \
1369 { \
1370 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1371 break; \
1372 } \
1373 errno=0; \
1374 clearerr(yyin); \
1375 } \
1376 }\
1377 \
1378
1379 #endif
1380
1381 /* No semi-colon after return; correct usage is to write "yyterminate();" -
1382 * we don't want an extra ';' after the "return" because that will cause
1383 * some compilers to complain about unreachable statements.
1384 */
1385 #ifndef yyterminate
1386 #define yyterminate() return YY_NULL
1387 #endif
1388
1389 /* Number of entries by which start-condition stack grows. */
1390 #ifndef YY_START_STACK_INCR
1391 #define YY_START_STACK_INCR 25
1392 #endif
1393
1394 /* Report a fatal error. */
1395 #ifndef YY_FATAL_ERROR
1396 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1397 #endif
1398
1399 /* end tables serialization structures and prototypes */
1400
1401 /* Default declaration of generated scanner - a define so the user can
1402 * easily add parameters.
1403 */
1404 #ifndef YY_DECL
1405 #define YY_DECL_IS_OURS 1
1406
1407 extern int yylex (void);
1408
1409 #define YY_DECL int yylex (void)
1410 #endif /* !YY_DECL */
1411
1412 /* Code executed at the beginning of each rule, after yytext and yyleng
1413 * have been set up.
1414 */
1415 #ifndef YY_USER_ACTION
1416 #define YY_USER_ACTION
1417 #endif
1418
1419 /* Code executed at the end of each rule. */
1420 #ifndef YY_BREAK
1421 #define YY_BREAK /*LINTED*/break;
1422 #endif
1423
1424 #define YY_RULE_SETUP \
1425 if ( yyleng > 0 ) \
1426 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \
1427 (yytext[yyleng - 1] == '\n'); \
1428 YY_USER_ACTION
1429
1430 /** The main scanner function which does all the work.
1431 */
1432 YY_DECL
1433 {
1434 yy_state_type yy_current_state;
1435 char *yy_cp, *yy_bp;
1436 int yy_act;
1437
1438 if ( !(yy_init) )
1439 {
1440 (yy_init) = 1;
1441
1442 #ifdef YY_USER_INIT
1443 YY_USER_INIT;
1444 #endif
1445
1446 if ( ! (yy_start) )
1447 (yy_start) = 1; /* first start state */
1448
1449 if ( ! yyin )
1450 yyin = stdin;
1451
1452 if ( ! yyout )
1453 yyout = stdout;
1454
1455 if ( ! YY_CURRENT_BUFFER ) {
1456 yyensure_buffer_stack ();
1457 YY_CURRENT_BUFFER_LVALUE =
1458 yy_create_buffer( yyin, YY_BUF_SIZE );
1459 }
1460
1461 yy_load_buffer_state( );
1462 }
1463
1464 {
1465 #line 67 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1466
1467 /* Do this on entry to yylex(): */
1468 *yylval = 0;
1469 if (lexer_toplevel_done)
1470 {
1471 BEGIN(INITIAL);
1472 lexer_toplevel_done = 0;
1473 }
1474
1475 /* Things we look for in skipping mode: */
1476 #line 1471 "gengtype-lex.c"
1477
1478 while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
1479 {
1480 yy_cp = (yy_c_buf_p);
1481
1482 /* Support of yytext. */
1483 *yy_cp = (yy_hold_char);
1484
1485 /* yy_bp points to the position in yy_ch_buf of the start of
1486 * the current run.
1487 */
1488 yy_bp = yy_cp;
1489
1490 yy_current_state = (yy_start);
1491 yy_current_state += YY_AT_BOL();
1492 yy_match:
1493 do
1494 {
1495 YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
1496 if ( yy_accept[yy_current_state] )
1497 {
1498 (yy_last_accepting_state) = yy_current_state;
1499 (yy_last_accepting_cpos) = yy_cp;
1500 }
1501 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1502 {
1503 yy_current_state = (int) yy_def[yy_current_state];
1504 if ( yy_current_state >= 567 )
1505 yy_c = yy_meta[yy_c];
1506 }
1507 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
1508 ++yy_cp;
1509 }
1510 while ( yy_current_state != 566 );
1511 yy_cp = (yy_last_accepting_cpos);
1512 yy_current_state = (yy_last_accepting_state);
1513
1514 yy_find_action:
1515 yy_act = yy_accept[yy_current_state];
1516
1517 YY_DO_BEFORE_ACTION;
1518
1519 do_action: /* This label is used only to access EOF actions. */
1520
1521 switch ( yy_act )
1522 { /* beginning of action switch */
1523 case 0: /* must back up */
1524 /* undo the effects of YY_DO_BEFORE_ACTION */
1525 *yy_cp = (yy_hold_char);
1526 yy_cp = (yy_last_accepting_cpos);
1527 yy_current_state = (yy_last_accepting_state);
1528 goto yy_find_action;
1529
1530 case 1:
1531 /* rule 1 can match eol */
1532 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1533 YY_LINENO_REWIND_TO(yy_cp - 1);
1534 (yy_c_buf_p) = yy_cp -= 1;
1535 YY_DO_BEFORE_ACTION; /* set up yytext again */
1536 YY_RULE_SETUP
1537 #line 78 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1538 {
1539 BEGIN(in_struct);
1540 return TYPEDEF;
1541 }
1542 YY_BREAK
1543 case 2:
1544 /* rule 2 can match eol */
1545 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1546 YY_LINENO_REWIND_TO(yy_cp - 1);
1547 (yy_c_buf_p) = yy_cp -= 1;
1548 YY_DO_BEFORE_ACTION; /* set up yytext again */
1549 YY_RULE_SETUP
1550 #line 82 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1551 {
1552 BEGIN(in_struct);
1553 return STRUCT;
1554 }
1555 YY_BREAK
1556 case 3:
1557 /* rule 3 can match eol */
1558 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1559 YY_LINENO_REWIND_TO(yy_cp - 1);
1560 (yy_c_buf_p) = yy_cp -= 1;
1561 YY_DO_BEFORE_ACTION; /* set up yytext again */
1562 YY_RULE_SETUP
1563 #line 86 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1564 {
1565 BEGIN(in_struct);
1566 return UNION;
1567 }
1568 YY_BREAK
1569 case 4:
1570 /* rule 4 can match eol */
1571 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1572 YY_LINENO_REWIND_TO(yy_cp - 1);
1573 (yy_c_buf_p) = yy_cp -= 1;
1574 YY_DO_BEFORE_ACTION; /* set up yytext again */
1575 YY_RULE_SETUP
1576 #line 90 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1577 {
1578 BEGIN(in_struct);
1579 return STRUCT;
1580 }
1581 YY_BREAK
1582 case 5:
1583 /* rule 5 can match eol */
1584 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1585 YY_LINENO_REWIND_TO(yy_cp - 1);
1586 (yy_c_buf_p) = yy_cp -= 1;
1587 YY_DO_BEFORE_ACTION; /* set up yytext again */
1588 YY_RULE_SETUP
1589 #line 94 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1590 {
1591 BEGIN(in_struct);
1592 return EXTERN;
1593 }
1594 YY_BREAK
1595 case 6:
1596 /* rule 6 can match eol */
1597 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1598 YY_LINENO_REWIND_TO(yy_cp - 1);
1599 (yy_c_buf_p) = yy_cp -= 1;
1600 YY_DO_BEFORE_ACTION; /* set up yytext again */
1601 YY_RULE_SETUP
1602 #line 98 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1603 {
1604 BEGIN(in_struct);
1605 return STATIC;
1606 }
1607 YY_BREAK
1608
1609 /* Parsing inside a struct, union or class declaration. */
1610
1611 case 7:
1612 YY_RULE_SETUP
1613 #line 106 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1614 { BEGIN(in_struct_comment); }
1615 YY_BREAK
1616 case 8:
1617 /* rule 8 can match eol */
1618 YY_RULE_SETUP
1619 #line 107 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1620 { lexer_line.line++; }
1621 YY_BREAK
1622 case 9:
1623 /* rule 9 can match eol */
1624 YY_RULE_SETUP
1625 #line 109 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1626 { update_lineno (yytext, yyleng); }
1627 YY_BREAK
1628 case 10:
1629 /* rule 10 can match eol */
1630 YY_RULE_SETUP
1631 #line 110 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1632 { lexer_line.line++; }
1633 YY_BREAK
1634 case 11:
1635 /* rule 11 can match eol */
1636 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1637 YY_LINENO_REWIND_TO(yy_bp + 5);
1638 (yy_c_buf_p) = yy_cp = yy_bp + 5;
1639 YY_DO_BEFORE_ACTION; /* set up yytext again */
1640 YY_RULE_SETUP
1641 #line 112 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1642 /* don't care */
1643 YY_BREAK
1644 case 12:
1645 /* rule 12 can match eol */
1646 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1647 YY_LINENO_REWIND_TO(yy_cp - 1);
1648 (yy_c_buf_p) = yy_cp -= 1;
1649 YY_DO_BEFORE_ACTION; /* set up yytext again */
1650 #line 114 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1651 case 13:
1652 /* rule 13 can match eol */
1653 #line 115 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1654 case 14:
1655 /* rule 14 can match eol */
1656 #line 116 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1657 case 15:
1658 /* rule 15 can match eol */
1659 YY_RULE_SETUP
1660 #line 116 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1661 {
1662 *yylval = XDUPVAR (const char, yytext, yyleng, yyleng + 1);
1663 return IGNORABLE_CXX_KEYWORD;
1664 }
1665 YY_BREAK
1666 case 16:
1667 /* rule 16 can match eol */
1668 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1669 YY_LINENO_REWIND_TO(yy_bp + 3);
1670 (yy_c_buf_p) = yy_cp = yy_bp + 3;
1671 YY_DO_BEFORE_ACTION; /* set up yytext again */
1672 YY_RULE_SETUP
1673 #line 120 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1674 { return GTY_TOKEN; }
1675 YY_BREAK
1676 case 17:
1677 /* rule 17 can match eol */
1678 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1679 YY_LINENO_REWIND_TO(yy_bp + 5);
1680 (yy_c_buf_p) = yy_cp = yy_bp + 5;
1681 YY_DO_BEFORE_ACTION; /* set up yytext again */
1682 YY_RULE_SETUP
1683 #line 121 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1684 { return UNION; }
1685 YY_BREAK
1686 case 18:
1687 /* rule 18 can match eol */
1688 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1689 YY_LINENO_REWIND_TO(yy_bp + 6);
1690 (yy_c_buf_p) = yy_cp = yy_bp + 6;
1691 YY_DO_BEFORE_ACTION; /* set up yytext again */
1692 YY_RULE_SETUP
1693 #line 122 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1694 { return STRUCT; }
1695 YY_BREAK
1696 case 19:
1697 /* rule 19 can match eol */
1698 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1699 YY_LINENO_REWIND_TO(yy_bp + 5);
1700 (yy_c_buf_p) = yy_cp = yy_bp + 5;
1701 YY_DO_BEFORE_ACTION; /* set up yytext again */
1702 YY_RULE_SETUP
1703 #line 123 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1704 { return STRUCT; }
1705 YY_BREAK
1706 case 20:
1707 /* rule 20 can match eol */
1708 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1709 YY_LINENO_REWIND_TO(yy_bp + 7);
1710 (yy_c_buf_p) = yy_cp = yy_bp + 7;
1711 YY_DO_BEFORE_ACTION; /* set up yytext again */
1712 YY_RULE_SETUP
1713 #line 124 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1714 { return TYPEDEF; }
1715 YY_BREAK
1716 case 21:
1717 /* rule 21 can match eol */
1718 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1719 YY_LINENO_REWIND_TO(yy_bp + 4);
1720 (yy_c_buf_p) = yy_cp = yy_bp + 4;
1721 YY_DO_BEFORE_ACTION; /* set up yytext again */
1722 YY_RULE_SETUP
1723 #line 125 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1724 { return ENUM; }
1725 YY_BREAK
1726 case 22:
1727 /* rule 22 can match eol */
1728 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1729 YY_LINENO_REWIND_TO(yy_bp + 9);
1730 (yy_c_buf_p) = yy_cp = yy_bp + 9;
1731 YY_DO_BEFORE_ACTION; /* set up yytext again */
1732 YY_RULE_SETUP
1733 #line 126 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1734 { return PTR_ALIAS; }
1735 YY_BREAK
1736 case 23:
1737 /* rule 23 can match eol */
1738 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1739 YY_LINENO_REWIND_TO(yy_bp + 10);
1740 (yy_c_buf_p) = yy_cp = yy_bp + 10;
1741 YY_DO_BEFORE_ACTION; /* set up yytext again */
1742 YY_RULE_SETUP
1743 #line 127 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1744 { return NESTED_PTR; }
1745 YY_BREAK
1746 case 24:
1747 /* rule 24 can match eol */
1748 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1749 YY_LINENO_REWIND_TO(yy_bp + 4);
1750 (yy_c_buf_p) = yy_cp = yy_bp + 4;
1751 YY_DO_BEFORE_ACTION; /* set up yytext again */
1752 YY_RULE_SETUP
1753 #line 128 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1754 { return USER_GTY; }
1755 YY_BREAK
1756 case 25:
1757 YY_RULE_SETUP
1758 #line 129 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1759 {
1760 *yylval = XDUPVAR (const char, yytext, yyleng, yyleng+1);
1761 return NUM;
1762 }
1763 YY_BREAK
1764 case 26:
1765 /* rule 26 can match eol */
1766 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1767 YY_LINENO_REWIND_TO(yy_cp - 1);
1768 (yy_c_buf_p) = yy_cp -= 1;
1769 YY_DO_BEFORE_ACTION; /* set up yytext again */
1770 #line 135 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1771 case 27:
1772 /* rule 27 can match eol */
1773 YY_RULE_SETUP
1774 #line 135 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1775 {
1776 size_t len;
1777
1778 for (len = yyleng; ISSPACE (yytext[len-1]); len--)
1779 ;
1780
1781 *yylval = XDUPVAR (const char, yytext, len, len+1);
1782 update_lineno (yytext, yyleng);
1783 return SCALAR;
1784 }
1785 YY_BREAK
1786 case 28:
1787 /* rule 28 can match eol */
1788 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1789 YY_LINENO_REWIND_TO(yy_cp - 1);
1790 (yy_c_buf_p) = yy_cp -= 1;
1791 YY_DO_BEFORE_ACTION; /* set up yytext again */
1792 YY_RULE_SETUP
1793 #line 146 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1794 {
1795 *yylval = XDUPVAR (const char, yytext, yyleng, yyleng+1);
1796 return ID;
1797 }
1798 YY_BREAK
1799 case 29:
1800 /* rule 29 can match eol */
1801 YY_RULE_SETUP
1802 #line 151 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1803 {
1804 *yylval = XDUPVAR (const char, yytext+1, yyleng-2, yyleng-1);
1805 return STRING;
1806 }
1807 YY_BREAK
1808 /* This "terminal" avoids having to parse integer constant expressions. */
1809 case 30:
1810 /* rule 30 can match eol */
1811 YY_RULE_SETUP
1812 #line 156 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1813 {
1814 *yylval = XDUPVAR (const char, yytext+1, yyleng-2, yyleng-1);
1815 return ARRAY;
1816 }
1817 YY_BREAK
1818 case 31:
1819 /* rule 31 can match eol */
1820 YY_RULE_SETUP
1821 #line 160 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1822 {
1823 *yylval = XDUPVAR (const char, yytext+1, yyleng-2, yyleng);
1824 return CHAR;
1825 }
1826 YY_BREAK
1827 case 32:
1828 YY_RULE_SETUP
1829 #line 165 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1830 { return ELLIPSIS; }
1831 YY_BREAK
1832 case 33:
1833 YY_RULE_SETUP
1834 #line 166 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1835 { return yytext[0]; }
1836 YY_BREAK
1837 /* ignore pp-directives */
1838 case 34:
1839 /* rule 34 can match eol */
1840 YY_RULE_SETUP
1841 #line 169 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1842 {lexer_line.line++;}
1843 YY_BREAK
1844 case 35:
1845 YY_RULE_SETUP
1846 #line 171 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1847 {
1848 error_at_line (&lexer_line, "unexpected character `%s'", yytext);
1849 }
1850 YY_BREAK
1851
1852 case 36:
1853 YY_RULE_SETUP
1854 #line 176 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1855 { BEGIN(in_comment); }
1856 YY_BREAK
1857 case 37:
1858 /* rule 37 can match eol */
1859 YY_RULE_SETUP
1860 #line 177 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1861 { lexer_line.line++; }
1862 YY_BREAK
1863 case 38:
1864 /* rule 38 can match eol */
1865 YY_RULE_SETUP
1866 #line 178 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1867 { lexer_line.line++; }
1868 YY_BREAK
1869 case 39:
1870 #line 180 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1871 case 40:
1872 /* rule 40 can match eol */
1873 #line 181 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1874 case 41:
1875 /* rule 41 can match eol */
1876 YY_RULE_SETUP
1877 #line 181 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1878 /* do nothing */
1879 YY_BREAK
1880 case 42:
1881 /* rule 42 can match eol */
1882 YY_RULE_SETUP
1883 #line 182 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1884 { update_lineno (yytext, yyleng); }
1885 YY_BREAK
1886 case 43:
1887 /* rule 43 can match eol */
1888 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1889 YY_LINENO_REWIND_TO(yy_bp + 1);
1890 (yy_c_buf_p) = yy_cp = yy_bp + 1;
1891 YY_DO_BEFORE_ACTION; /* set up yytext again */
1892 YY_RULE_SETUP
1893 #line 183 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1894 /* do nothing */
1895 YY_BREAK
1896
1897 case 44:
1898 /* rule 44 can match eol */
1899 YY_RULE_SETUP
1900 #line 186 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1901 { lexer_line.line++; }
1902 YY_BREAK
1903 case 45:
1904 #line 188 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1905 case 46:
1906 YY_RULE_SETUP
1907 #line 188 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1908 /* do nothing */
1909 YY_BREAK
1910 case 47:
1911 /* rule 47 can match eol */
1912 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
1913 YY_LINENO_REWIND_TO(yy_bp + 1);
1914 (yy_c_buf_p) = yy_cp = yy_bp + 1;
1915 YY_DO_BEFORE_ACTION; /* set up yytext again */
1916 YY_RULE_SETUP
1917 #line 189 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1918 /* do nothing */
1919 YY_BREAK
1920
1921 case 48:
1922 YY_RULE_SETUP
1923 #line 192 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1924 { BEGIN(INITIAL); }
1925 YY_BREAK
1926 case 49:
1927 YY_RULE_SETUP
1928 #line 193 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1929 { BEGIN(in_struct); }
1930 YY_BREAK
1931 case 50:
1932 #line 196 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1933 case 51:
1934 YY_RULE_SETUP
1935 #line 196 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1936 {
1937 error_at_line (&lexer_line,
1938 "unterminated comment or string; unexpected EOF");
1939 }
1940 YY_BREAK
1941 case 52:
1942 /* rule 52 can match eol */
1943 YY_RULE_SETUP
1944 #line 201 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1945 /* do nothing */
1946 YY_BREAK
1947 case 53:
1948 YY_RULE_SETUP
1949 #line 203 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
1950 YY_FATAL_ERROR( "flex scanner jammed" );
1951 YY_BREAK
1952 #line 1947 "gengtype-lex.c"
1953 case YY_STATE_EOF(INITIAL):
1954 case YY_STATE_EOF(in_struct):
1955 case YY_STATE_EOF(in_struct_comment):
1956 case YY_STATE_EOF(in_comment):
1957 yyterminate();
1958
1959 case YY_END_OF_BUFFER:
1960 {
1961 /* Amount of text matched not including the EOB char. */
1962 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
1963
1964 /* Undo the effects of YY_DO_BEFORE_ACTION. */
1965 *yy_cp = (yy_hold_char);
1966 YY_RESTORE_YY_MORE_OFFSET
1967
1968 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
1969 {
1970 /* We're scanning a new file or input source. It's
1971 * possible that this happened because the user
1972 * just pointed yyin at a new source and called
1973 * yylex(). If so, then we have to assure
1974 * consistency between YY_CURRENT_BUFFER and our
1975 * globals. Here is the right place to do so, because
1976 * this is the first action (other than possibly a
1977 * back-up) that will match for the new input source.
1978 */
1979 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
1980 YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
1981 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
1982 }
1983
1984 /* Note that here we test for yy_c_buf_p "<=" to the position
1985 * of the first EOB in the buffer, since yy_c_buf_p will
1986 * already have been incremented past the NUL character
1987 * (since all states make transitions on EOB to the
1988 * end-of-buffer state). Contrast this with the test
1989 * in input().
1990 */
1991 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
1992 { /* This was really a NUL. */
1993 yy_state_type yy_next_state;
1994
1995 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
1996
1997 yy_current_state = yy_get_previous_state( );
1998
1999 /* Okay, we're now positioned to make the NUL
2000 * transition. We couldn't have
2001 * yy_get_previous_state() go ahead and do it
2002 * for us because it doesn't know how to deal
2003 * with the possibility of jamming (and we don't
2004 * want to build jamming into it because then it
2005 * will run more slowly).
2006 */
2007
2008 yy_next_state = yy_try_NUL_trans( yy_current_state );
2009
2010 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
2011
2012 if ( yy_next_state )
2013 {
2014 /* Consume the NUL. */
2015 yy_cp = ++(yy_c_buf_p);
2016 yy_current_state = yy_next_state;
2017 goto yy_match;
2018 }
2019
2020 else
2021 {
2022 yy_cp = (yy_last_accepting_cpos);
2023 yy_current_state = (yy_last_accepting_state);
2024 goto yy_find_action;
2025 }
2026 }
2027
2028 else switch ( yy_get_next_buffer( ) )
2029 {
2030 case EOB_ACT_END_OF_FILE:
2031 {
2032 (yy_did_buffer_switch_on_eof) = 0;
2033
2034 if ( yywrap( ) )
2035 {
2036 /* Note: because we've taken care in
2037 * yy_get_next_buffer() to have set up
2038 * yytext, we can now set up
2039 * yy_c_buf_p so that if some total
2040 * hoser (like flex itself) wants to
2041 * call the scanner after we return the
2042 * YY_NULL, it'll still work - another
2043 * YY_NULL will get returned.
2044 */
2045 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
2046
2047 yy_act = YY_STATE_EOF(YY_START);
2048 goto do_action;
2049 }
2050
2051 else
2052 {
2053 if ( ! (yy_did_buffer_switch_on_eof) )
2054 YY_NEW_FILE;
2055 }
2056 break;
2057 }
2058
2059 case EOB_ACT_CONTINUE_SCAN:
2060 (yy_c_buf_p) =
2061 (yytext_ptr) + yy_amount_of_matched_text;
2062
2063 yy_current_state = yy_get_previous_state( );
2064
2065 yy_cp = (yy_c_buf_p);
2066 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
2067 goto yy_match;
2068
2069 case EOB_ACT_LAST_MATCH:
2070 (yy_c_buf_p) =
2071 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
2072
2073 yy_current_state = yy_get_previous_state( );
2074
2075 yy_cp = (yy_c_buf_p);
2076 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
2077 goto yy_find_action;
2078 }
2079 break;
2080 }
2081
2082 default:
2083 YY_FATAL_ERROR(
2084 "fatal flex scanner internal error--no action found" );
2085 } /* end of action switch */
2086 } /* end of scanning one token */
2087 } /* end of user's declarations */
2088 } /* end of yylex */
2089
2090 /* yy_get_next_buffer - try to read in a new buffer
2091 *
2092 * Returns a code representing an action:
2093 * EOB_ACT_LAST_MATCH -
2094 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2095 * EOB_ACT_END_OF_FILE - end of file
2096 */
yy_get_next_buffer(void)2097 static int yy_get_next_buffer (void)
2098 {
2099 char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
2100 char *source = (yytext_ptr);
2101 int number_to_move, i;
2102 int ret_val;
2103
2104 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
2105 YY_FATAL_ERROR(
2106 "fatal flex scanner internal error--end of buffer missed" );
2107
2108 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
2109 { /* Don't try to fill the buffer, so this is an EOF. */
2110 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
2111 {
2112 /* We matched a single character, the EOB, so
2113 * treat this as a final EOF.
2114 */
2115 return EOB_ACT_END_OF_FILE;
2116 }
2117
2118 else
2119 {
2120 /* We matched some text prior to the EOB, first
2121 * process it.
2122 */
2123 return EOB_ACT_LAST_MATCH;
2124 }
2125 }
2126
2127 /* Try to read more data. */
2128
2129 /* First move last chars to start of buffer. */
2130 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1);
2131
2132 for ( i = 0; i < number_to_move; ++i )
2133 *(dest++) = *(source++);
2134
2135 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
2136 /* don't do the read, it's not guaranteed to return an EOF,
2137 * just force an EOF
2138 */
2139 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
2140
2141 else
2142 {
2143 int num_to_read =
2144 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
2145
2146 while ( num_to_read <= 0 )
2147 { /* Not enough room in the buffer - grow it. */
2148
2149 /* just a shorter name for the current buffer */
2150 YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
2151
2152 int yy_c_buf_p_offset =
2153 (int) ((yy_c_buf_p) - b->yy_ch_buf);
2154
2155 if ( b->yy_is_our_buffer )
2156 {
2157 int new_size = b->yy_buf_size * 2;
2158
2159 if ( new_size <= 0 )
2160 b->yy_buf_size += b->yy_buf_size / 8;
2161 else
2162 b->yy_buf_size *= 2;
2163
2164 b->yy_ch_buf = (char *)
2165 /* Include room in for 2 EOB chars. */
2166 yyrealloc( (void *) b->yy_ch_buf,
2167 (yy_size_t) (b->yy_buf_size + 2) );
2168 }
2169 else
2170 /* Can't grow it, we don't own it. */
2171 b->yy_ch_buf = NULL;
2172
2173 if ( ! b->yy_ch_buf )
2174 YY_FATAL_ERROR(
2175 "fatal error - scanner input buffer overflow" );
2176
2177 (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
2178
2179 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
2180 number_to_move - 1;
2181
2182 }
2183
2184 if ( num_to_read > YY_READ_BUF_SIZE )
2185 num_to_read = YY_READ_BUF_SIZE;
2186
2187 /* Read in more data. */
2188 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
2189 (yy_n_chars), num_to_read );
2190
2191 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
2192 }
2193
2194 if ( (yy_n_chars) == 0 )
2195 {
2196 if ( number_to_move == YY_MORE_ADJ )
2197 {
2198 ret_val = EOB_ACT_END_OF_FILE;
2199 yyrestart( yyin );
2200 }
2201
2202 else
2203 {
2204 ret_val = EOB_ACT_LAST_MATCH;
2205 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
2206 YY_BUFFER_EOF_PENDING;
2207 }
2208 }
2209
2210 else
2211 ret_val = EOB_ACT_CONTINUE_SCAN;
2212
2213 if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
2214 /* Extend the array by 50%, plus the number we really need. */
2215 int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
2216 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc(
2217 (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size );
2218 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
2219 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
2220 /* "- 2" to take care of EOB's */
2221 YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);
2222 }
2223
2224 (yy_n_chars) += number_to_move;
2225 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
2226 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
2227
2228 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
2229
2230 return ret_val;
2231 }
2232
2233 /* yy_get_previous_state - get the state just before the EOB char was reached */
2234
yy_get_previous_state(void)2235 static yy_state_type yy_get_previous_state (void)
2236 {
2237 yy_state_type yy_current_state;
2238 char *yy_cp;
2239
2240 yy_current_state = (yy_start);
2241 yy_current_state += YY_AT_BOL();
2242
2243 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
2244 {
2245 YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2246 if ( yy_accept[yy_current_state] )
2247 {
2248 (yy_last_accepting_state) = yy_current_state;
2249 (yy_last_accepting_cpos) = yy_cp;
2250 }
2251 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2252 {
2253 yy_current_state = (int) yy_def[yy_current_state];
2254 if ( yy_current_state >= 567 )
2255 yy_c = yy_meta[yy_c];
2256 }
2257 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
2258 }
2259
2260 return yy_current_state;
2261 }
2262
2263 /* yy_try_NUL_trans - try to make a transition on the NUL character
2264 *
2265 * synopsis
2266 * next_state = yy_try_NUL_trans( current_state );
2267 */
yy_try_NUL_trans(yy_state_type yy_current_state)2268 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
2269 {
2270 int yy_is_jam;
2271 char *yy_cp = (yy_c_buf_p);
2272
2273 YY_CHAR yy_c = 1;
2274 if ( yy_accept[yy_current_state] )
2275 {
2276 (yy_last_accepting_state) = yy_current_state;
2277 (yy_last_accepting_cpos) = yy_cp;
2278 }
2279 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2280 {
2281 yy_current_state = (int) yy_def[yy_current_state];
2282 if ( yy_current_state >= 567 )
2283 yy_c = yy_meta[yy_c];
2284 }
2285 yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
2286 yy_is_jam = (yy_current_state == 566);
2287
2288 return yy_is_jam ? 0 : yy_current_state;
2289 }
2290
2291 #ifndef YY_NO_UNPUT
2292
2293 #endif
2294
2295 #ifndef YY_NO_INPUT
2296 #ifdef __cplusplus
yyinput(void)2297 static int yyinput (void)
2298 #else
2299 static int input (void)
2300 #endif
2301
2302 {
2303 int c;
2304
2305 *(yy_c_buf_p) = (yy_hold_char);
2306
2307 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
2308 {
2309 /* yy_c_buf_p now points to the character we want to return.
2310 * If this occurs *before* the EOB characters, then it's a
2311 * valid NUL; if not, then we've hit the end of the buffer.
2312 */
2313 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
2314 /* This was really a NUL. */
2315 *(yy_c_buf_p) = '\0';
2316
2317 else
2318 { /* need more input */
2319 int offset = (int) ((yy_c_buf_p) - (yytext_ptr));
2320 ++(yy_c_buf_p);
2321
2322 switch ( yy_get_next_buffer( ) )
2323 {
2324 case EOB_ACT_LAST_MATCH:
2325 /* This happens because yy_g_n_b()
2326 * sees that we've accumulated a
2327 * token and flags that we need to
2328 * try matching the token before
2329 * proceeding. But for input(),
2330 * there's no matching to consider.
2331 * So convert the EOB_ACT_LAST_MATCH
2332 * to EOB_ACT_END_OF_FILE.
2333 */
2334
2335 /* Reset buffer status. */
2336 yyrestart( yyin );
2337
2338 /*FALLTHROUGH*/
2339
2340 case EOB_ACT_END_OF_FILE:
2341 {
2342 if ( yywrap( ) )
2343 return 0;
2344
2345 if ( ! (yy_did_buffer_switch_on_eof) )
2346 YY_NEW_FILE;
2347 #ifdef __cplusplus
2348 return yyinput();
2349 #else
2350 return input();
2351 #endif
2352 }
2353
2354 case EOB_ACT_CONTINUE_SCAN:
2355 (yy_c_buf_p) = (yytext_ptr) + offset;
2356 break;
2357 }
2358 }
2359 }
2360
2361 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */
2362 *(yy_c_buf_p) = '\0'; /* preserve yytext */
2363 (yy_hold_char) = *++(yy_c_buf_p);
2364
2365 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n');
2366
2367 return c;
2368 }
2369 #endif /* ifndef YY_NO_INPUT */
2370
2371 /** Immediately switch to a different input stream.
2372 * @param input_file A readable stream.
2373 *
2374 * @note This function does not reset the start condition to @c INITIAL .
2375 */
yyrestart(FILE * input_file)2376 void yyrestart (FILE * input_file )
2377 {
2378
2379 if ( ! YY_CURRENT_BUFFER ){
2380 yyensure_buffer_stack ();
2381 YY_CURRENT_BUFFER_LVALUE =
2382 yy_create_buffer( yyin, YY_BUF_SIZE );
2383 }
2384
2385 yy_init_buffer( YY_CURRENT_BUFFER, input_file );
2386 yy_load_buffer_state( );
2387 }
2388
2389 /** Switch to a different input buffer.
2390 * @param new_buffer The new input buffer.
2391 *
2392 */
yy_switch_to_buffer(YY_BUFFER_STATE new_buffer)2393 void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer )
2394 {
2395
2396 /* TODO. We should be able to replace this entire function body
2397 * with
2398 * yypop_buffer_state();
2399 * yypush_buffer_state(new_buffer);
2400 */
2401 yyensure_buffer_stack ();
2402 if ( YY_CURRENT_BUFFER == new_buffer )
2403 return;
2404
2405 if ( YY_CURRENT_BUFFER )
2406 {
2407 /* Flush out information for old buffer. */
2408 *(yy_c_buf_p) = (yy_hold_char);
2409 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
2410 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
2411 }
2412
2413 YY_CURRENT_BUFFER_LVALUE = new_buffer;
2414 yy_load_buffer_state( );
2415
2416 /* We don't actually know whether we did this switch during
2417 * EOF (yywrap()) processing, but the only time this flag
2418 * is looked at is after yywrap() is called, so it's safe
2419 * to go ahead and always set it.
2420 */
2421 (yy_did_buffer_switch_on_eof) = 1;
2422 }
2423
yy_load_buffer_state(void)2424 static void yy_load_buffer_state (void)
2425 {
2426 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
2427 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
2428 yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
2429 (yy_hold_char) = *(yy_c_buf_p);
2430 }
2431
2432 /** Allocate and initialize an input buffer state.
2433 * @param file A readable stream.
2434 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
2435 *
2436 * @return the allocated buffer state.
2437 */
yy_create_buffer(FILE * file,int size)2438 YY_BUFFER_STATE yy_create_buffer (FILE * file, int size )
2439 {
2440 YY_BUFFER_STATE b;
2441
2442 b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) );
2443 if ( ! b )
2444 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
2445
2446 b->yy_buf_size = size;
2447
2448 /* yy_ch_buf has to be 2 characters longer than the size given because
2449 * we need to put in 2 end-of-buffer characters.
2450 */
2451 b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) );
2452 if ( ! b->yy_ch_buf )
2453 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
2454
2455 b->yy_is_our_buffer = 1;
2456
2457 yy_init_buffer( b, file );
2458
2459 return b;
2460 }
2461
2462 /** Destroy the buffer.
2463 * @param b a buffer created with yy_create_buffer()
2464 *
2465 */
yy_delete_buffer(YY_BUFFER_STATE b)2466 void yy_delete_buffer (YY_BUFFER_STATE b )
2467 {
2468
2469 if ( ! b )
2470 return;
2471
2472 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
2473 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
2474
2475 if ( b->yy_is_our_buffer )
2476 yyfree( (void *) b->yy_ch_buf );
2477
2478 yyfree( (void *) b );
2479 }
2480
2481 /* Initializes or reinitializes a buffer.
2482 * This function is sometimes called more than once on the same buffer,
2483 * such as during a yyrestart() or at EOF.
2484 */
yy_init_buffer(YY_BUFFER_STATE b,FILE * file)2485 static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file )
2486
2487 {
2488 int oerrno = errno;
2489
2490 yy_flush_buffer( b );
2491
2492 b->yy_input_file = file;
2493 b->yy_fill_buffer = 1;
2494
2495 /* If b is the current buffer, then yy_init_buffer was _probably_
2496 * called from yyrestart() or through yy_get_next_buffer.
2497 * In that case, we don't want to reset the lineno or column.
2498 */
2499 if (b != YY_CURRENT_BUFFER){
2500 b->yy_bs_lineno = 1;
2501 b->yy_bs_column = 0;
2502 }
2503
2504 b->yy_is_interactive = 0;
2505
2506 errno = oerrno;
2507 }
2508
2509 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
2510 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
2511 *
2512 */
yy_flush_buffer(YY_BUFFER_STATE b)2513 void yy_flush_buffer (YY_BUFFER_STATE b )
2514 {
2515 if ( ! b )
2516 return;
2517
2518 b->yy_n_chars = 0;
2519
2520 /* We always need two end-of-buffer characters. The first causes
2521 * a transition to the end-of-buffer state. The second causes
2522 * a jam in that state.
2523 */
2524 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
2525 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
2526
2527 b->yy_buf_pos = &b->yy_ch_buf[0];
2528
2529 b->yy_at_bol = 1;
2530 b->yy_buffer_status = YY_BUFFER_NEW;
2531
2532 if ( b == YY_CURRENT_BUFFER )
2533 yy_load_buffer_state( );
2534 }
2535
2536 /** Pushes the new state onto the stack. The new state becomes
2537 * the current state. This function will allocate the stack
2538 * if necessary.
2539 * @param new_buffer The new state.
2540 *
2541 */
yypush_buffer_state(YY_BUFFER_STATE new_buffer)2542 void yypush_buffer_state (YY_BUFFER_STATE new_buffer )
2543 {
2544 if (new_buffer == NULL)
2545 return;
2546
2547 yyensure_buffer_stack();
2548
2549 /* This block is copied from yy_switch_to_buffer. */
2550 if ( YY_CURRENT_BUFFER )
2551 {
2552 /* Flush out information for old buffer. */
2553 *(yy_c_buf_p) = (yy_hold_char);
2554 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
2555 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
2556 }
2557
2558 /* Only push if top exists. Otherwise, replace top. */
2559 if (YY_CURRENT_BUFFER)
2560 (yy_buffer_stack_top)++;
2561 YY_CURRENT_BUFFER_LVALUE = new_buffer;
2562
2563 /* copied from yy_switch_to_buffer. */
2564 yy_load_buffer_state( );
2565 (yy_did_buffer_switch_on_eof) = 1;
2566 }
2567
2568 /** Removes and deletes the top of the stack, if present.
2569 * The next element becomes the new top.
2570 *
2571 */
yypop_buffer_state(void)2572 void yypop_buffer_state (void)
2573 {
2574 if (!YY_CURRENT_BUFFER)
2575 return;
2576
2577 yy_delete_buffer(YY_CURRENT_BUFFER );
2578 YY_CURRENT_BUFFER_LVALUE = NULL;
2579 if ((yy_buffer_stack_top) > 0)
2580 --(yy_buffer_stack_top);
2581
2582 if (YY_CURRENT_BUFFER) {
2583 yy_load_buffer_state( );
2584 (yy_did_buffer_switch_on_eof) = 1;
2585 }
2586 }
2587
2588 /* Allocates the stack if it does not exist.
2589 * Guarantees space for at least one push.
2590 */
yyensure_buffer_stack(void)2591 static void yyensure_buffer_stack (void)
2592 {
2593 yy_size_t num_to_alloc;
2594
2595 if (!(yy_buffer_stack)) {
2596
2597 /* First allocation is just for 2 elements, since we don't know if this
2598 * scanner will even need a stack. We use 2 instead of 1 to avoid an
2599 * immediate realloc on the next call.
2600 */
2601 num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */
2602 (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
2603 (num_to_alloc * sizeof(struct yy_buffer_state*)
2604 );
2605 if ( ! (yy_buffer_stack) )
2606 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
2607
2608 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
2609
2610 (yy_buffer_stack_max) = num_to_alloc;
2611 (yy_buffer_stack_top) = 0;
2612 return;
2613 }
2614
2615 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
2616
2617 /* Increase the buffer to prepare for a possible push. */
2618 yy_size_t grow_size = 8 /* arbitrary grow size */;
2619
2620 num_to_alloc = (yy_buffer_stack_max) + grow_size;
2621 (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc
2622 ((yy_buffer_stack),
2623 num_to_alloc * sizeof(struct yy_buffer_state*)
2624 );
2625 if ( ! (yy_buffer_stack) )
2626 YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
2627
2628 /* zero only the new slots.*/
2629 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
2630 (yy_buffer_stack_max) = num_to_alloc;
2631 }
2632 }
2633
2634 /** Setup the input buffer state to scan directly from a user-specified character buffer.
2635 * @param base the character buffer
2636 * @param size the size in bytes of the character buffer
2637 *
2638 * @return the newly allocated buffer state object.
2639 */
yy_scan_buffer(char * base,yy_size_t size)2640 YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size )
2641 {
2642 YY_BUFFER_STATE b;
2643
2644 if ( size < 2 ||
2645 base[size-2] != YY_END_OF_BUFFER_CHAR ||
2646 base[size-1] != YY_END_OF_BUFFER_CHAR )
2647 /* They forgot to leave room for the EOB's. */
2648 return NULL;
2649
2650 b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) );
2651 if ( ! b )
2652 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
2653
2654 b->yy_buf_size = (int) (size - 2); /* "- 2" to take care of EOB's */
2655 b->yy_buf_pos = b->yy_ch_buf = base;
2656 b->yy_is_our_buffer = 0;
2657 b->yy_input_file = NULL;
2658 b->yy_n_chars = b->yy_buf_size;
2659 b->yy_is_interactive = 0;
2660 b->yy_at_bol = 1;
2661 b->yy_fill_buffer = 0;
2662 b->yy_buffer_status = YY_BUFFER_NEW;
2663
2664 yy_switch_to_buffer( b );
2665
2666 return b;
2667 }
2668
2669 /** Setup the input buffer state to scan a string. The next call to yylex() will
2670 * scan from a @e copy of @a str.
2671 * @param yystr a NUL-terminated string to scan
2672 *
2673 * @return the newly allocated buffer state object.
2674 * @note If you want to scan bytes that may contain NUL values, then use
2675 * yy_scan_bytes() instead.
2676 */
yy_scan_string(const char * yystr)2677 YY_BUFFER_STATE yy_scan_string (const char * yystr )
2678 {
2679
2680 return yy_scan_bytes( yystr, (int) strlen(yystr) );
2681 }
2682
2683 /** Setup the input buffer state to scan the given bytes. The next call to yylex() will
2684 * scan from a @e copy of @a bytes.
2685 * @param yybytes the byte buffer to scan
2686 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
2687 *
2688 * @return the newly allocated buffer state object.
2689 */
yy_scan_bytes(const char * yybytes,int _yybytes_len)2690 YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len )
2691 {
2692 YY_BUFFER_STATE b;
2693 char *buf;
2694 yy_size_t n;
2695 int i;
2696
2697 /* Get memory for full buffer, including space for trailing EOB's. */
2698 n = (yy_size_t) (_yybytes_len + 2);
2699 buf = (char *) yyalloc( n );
2700 if ( ! buf )
2701 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
2702
2703 for ( i = 0; i < _yybytes_len; ++i )
2704 buf[i] = yybytes[i];
2705
2706 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
2707
2708 b = yy_scan_buffer( buf, n );
2709 if ( ! b )
2710 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
2711
2712 /* It's okay to grow etc. this buffer, and we should throw it
2713 * away when we're done.
2714 */
2715 b->yy_is_our_buffer = 1;
2716
2717 return b;
2718 }
2719
2720 #ifndef YY_EXIT_FAILURE
2721 #define YY_EXIT_FAILURE 2
2722 #endif
2723
yy_fatal_error(const char * msg)2724 static void yynoreturn yy_fatal_error (const char* msg )
2725 {
2726 fprintf( stderr, "%s\n", msg );
2727 exit( YY_EXIT_FAILURE );
2728 }
2729
2730 /* Redefine yyless() so it works in section 3 code. */
2731
2732 #undef yyless
2733 #define yyless(n) \
2734 do \
2735 { \
2736 /* Undo effects of setting up yytext. */ \
2737 int yyless_macro_arg = (n); \
2738 YY_LESS_LINENO(yyless_macro_arg);\
2739 yytext[yyleng] = (yy_hold_char); \
2740 (yy_c_buf_p) = yytext + yyless_macro_arg; \
2741 (yy_hold_char) = *(yy_c_buf_p); \
2742 *(yy_c_buf_p) = '\0'; \
2743 yyleng = yyless_macro_arg; \
2744 } \
2745 while ( 0 )
2746
2747 /* Accessor methods (get/set functions) to struct members. */
2748
2749 /** Get the current line number.
2750 *
2751 */
yyget_lineno(void)2752 int yyget_lineno (void)
2753 {
2754
2755 return yylineno;
2756 }
2757
2758 /** Get the input stream.
2759 *
2760 */
yyget_in(void)2761 FILE *yyget_in (void)
2762 {
2763 return yyin;
2764 }
2765
2766 /** Get the output stream.
2767 *
2768 */
yyget_out(void)2769 FILE *yyget_out (void)
2770 {
2771 return yyout;
2772 }
2773
2774 /** Get the length of the current token.
2775 *
2776 */
yyget_leng(void)2777 int yyget_leng (void)
2778 {
2779 return yyleng;
2780 }
2781
2782 /** Get the current token.
2783 *
2784 */
2785
yyget_text(void)2786 char *yyget_text (void)
2787 {
2788 return yytext;
2789 }
2790
2791 /** Set the current line number.
2792 * @param _line_number line number
2793 *
2794 */
yyset_lineno(int _line_number)2795 void yyset_lineno (int _line_number )
2796 {
2797
2798 yylineno = _line_number;
2799 }
2800
2801 /** Set the input stream. This does not discard the current
2802 * input buffer.
2803 * @param _in_str A readable stream.
2804 *
2805 * @see yy_switch_to_buffer
2806 */
yyset_in(FILE * _in_str)2807 void yyset_in (FILE * _in_str )
2808 {
2809 yyin = _in_str ;
2810 }
2811
yyset_out(FILE * _out_str)2812 void yyset_out (FILE * _out_str )
2813 {
2814 yyout = _out_str ;
2815 }
2816
yyget_debug(void)2817 int yyget_debug (void)
2818 {
2819 return yy_flex_debug;
2820 }
2821
yyset_debug(int _bdebug)2822 void yyset_debug (int _bdebug )
2823 {
2824 yy_flex_debug = _bdebug ;
2825 }
2826
yy_init_globals(void)2827 static int yy_init_globals (void)
2828 {
2829 /* Initialization is the same as for the non-reentrant scanner.
2830 * This function is called from yylex_destroy(), so don't allocate here.
2831 */
2832
2833 (yy_buffer_stack) = NULL;
2834 (yy_buffer_stack_top) = 0;
2835 (yy_buffer_stack_max) = 0;
2836 (yy_c_buf_p) = NULL;
2837 (yy_init) = 0;
2838 (yy_start) = 0;
2839
2840 /* Defined in main.c */
2841 #ifdef YY_STDINIT
2842 yyin = stdin;
2843 yyout = stdout;
2844 #else
2845 yyin = NULL;
2846 yyout = NULL;
2847 #endif
2848
2849 /* For future reference: Set errno on error, since we are called by
2850 * yylex_init()
2851 */
2852 return 0;
2853 }
2854
2855 /* yylex_destroy is for both reentrant and non-reentrant scanners. */
yylex_destroy(void)2856 int yylex_destroy (void)
2857 {
2858
2859 /* Pop the buffer stack, destroying each element. */
2860 while(YY_CURRENT_BUFFER){
2861 yy_delete_buffer( YY_CURRENT_BUFFER );
2862 YY_CURRENT_BUFFER_LVALUE = NULL;
2863 yypop_buffer_state();
2864 }
2865
2866 /* Destroy the stack itself. */
2867 yyfree((yy_buffer_stack) );
2868 (yy_buffer_stack) = NULL;
2869
2870 /* Reset the globals. This is important in a non-reentrant scanner so the next time
2871 * yylex() is called, initialization will occur. */
2872 yy_init_globals( );
2873
2874 return 0;
2875 }
2876
2877 /*
2878 * Internal utility routines.
2879 */
2880
2881 #ifndef yytext_ptr
yy_flex_strncpy(char * s1,const char * s2,int n)2882 static void yy_flex_strncpy (char* s1, const char * s2, int n )
2883 {
2884
2885 int i;
2886 for ( i = 0; i < n; ++i )
2887 s1[i] = s2[i];
2888 }
2889 #endif
2890
2891 #ifdef YY_NEED_STRLEN
yy_flex_strlen(const char * s)2892 static int yy_flex_strlen (const char * s )
2893 {
2894 int n;
2895 for ( n = 0; s[n]; ++n )
2896 ;
2897
2898 return n;
2899 }
2900 #endif
2901
yyalloc(yy_size_t size)2902 void *yyalloc (yy_size_t size )
2903 {
2904 return malloc(size);
2905 }
2906
yyrealloc(void * ptr,yy_size_t size)2907 void *yyrealloc (void * ptr, yy_size_t size )
2908 {
2909
2910 /* The cast to (char *) in the following accommodates both
2911 * implementations that use char* generic pointers, and those
2912 * that use void* generic pointers. It works with the latter
2913 * because both ANSI C and C++ allow castless assignment from
2914 * any pointer type to void*, and deal with argument conversions
2915 * as though doing an assignment.
2916 */
2917 return realloc(ptr, size);
2918 }
2919
yyfree(void * ptr)2920 void yyfree (void * ptr )
2921 {
2922 free( (char *) ptr ); /* see yyrealloc() for (char *) cast */
2923 }
2924
2925 #define YYTABLES_NAME "yytables"
2926
2927 #line 203 "/home/rguenther/src/releases/gcc-11.2.0/gcc-11.2.0/gcc/gengtype-lex.l"
2928
2929
2930 void
yybegin(const char * fname)2931 yybegin (const char *fname)
2932 {
2933 yyin = fopen (fname, "r");
2934 if (yyin == NULL)
2935 {
2936 perror (fname);
2937 exit (1);
2938 }
2939 lexer_line.file = input_file_by_name (fname);
2940 lexer_line.line = 1;
2941 }
2942
2943 void
yyend(void)2944 yyend (void)
2945 {
2946 fclose (yyin);
2947 }
2948
2949