OpenCores
URL https://opencores.org/ocsvn/scarts/scarts/trunk

Subversion Repositories scarts

[/] [scarts/] [trunk/] [toolchain/] [scarts-gcc/] [gcc-4.1.1/] [gcc/] [gengtype-lex.c] - Blame information for rev 12

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 12 jlechner
#line 2 "gengtype-lex.c"
2
 
3
#line 4 "gengtype-lex.c"
4
 
5
#define  YY_INT_ALIGNED short int
6
 
7
/* A lexical scanner generated by flex */
8
 
9
#define FLEX_SCANNER
10
#define YY_FLEX_MAJOR_VERSION 2
11
#define YY_FLEX_MINOR_VERSION 5
12
#define YY_FLEX_SUBMINOR_VERSION 31
13
#if YY_FLEX_SUBMINOR_VERSION > 0
14
#define FLEX_BETA
15
#endif
16
 
17
/* First, we deal with  platform-specific or compiler-specific issues. */
18
 
19
/* begin standard C headers. */
20
#include <stdio.h>
21
#include <string.h>
22
#include <errno.h>
23
#include <stdlib.h>
24
 
25
/* end standard C headers. */
26
 
27
/* flex integer type definitions */
28
 
29
#ifndef FLEXINT_H
30
#define FLEXINT_H
31
 
32
/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
33
 
34
#if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L
35
#include <inttypes.h>
36
typedef int8_t flex_int8_t;
37
typedef uint8_t flex_uint8_t;
38
typedef int16_t flex_int16_t;
39
typedef uint16_t flex_uint16_t;
40
typedef int32_t flex_int32_t;
41
typedef uint32_t flex_uint32_t;
42
#else
43
typedef signed char flex_int8_t;
44
typedef short int flex_int16_t;
45
typedef int flex_int32_t;
46
typedef unsigned char flex_uint8_t;
47
typedef unsigned short int flex_uint16_t;
48
typedef unsigned int flex_uint32_t;
49
#endif /* ! C99 */
50
 
51
/* Limits of integral types. */
52
#ifndef INT8_MIN
53
#define INT8_MIN               (-128)
54
#endif
55
#ifndef INT16_MIN
56
#define INT16_MIN              (-32767-1)
57
#endif
58
#ifndef INT32_MIN
59
#define INT32_MIN              (-2147483647-1)
60
#endif
61
#ifndef INT8_MAX
62
#define INT8_MAX               (127)
63
#endif
64
#ifndef INT16_MAX
65
#define INT16_MAX              (32767)
66
#endif
67
#ifndef INT32_MAX
68
#define INT32_MAX              (2147483647)
69
#endif
70
#ifndef UINT8_MAX
71
#define UINT8_MAX              (255U)
72
#endif
73
#ifndef UINT16_MAX
74
#define UINT16_MAX             (65535U)
75
#endif
76
#ifndef UINT32_MAX
77
#define UINT32_MAX             (4294967295U)
78
#endif
79
 
80
#endif /* ! FLEXINT_H */
81
 
82
#ifdef __cplusplus
83
 
84
/* The "const" storage-class-modifier is valid. */
85
#define YY_USE_CONST
86
 
87
#else   /* ! __cplusplus */
88
 
89
#if __STDC__
90
 
91
#define YY_USE_CONST
92
 
93
#endif  /* __STDC__ */
94
#endif  /* ! __cplusplus */
95
 
96
#ifdef YY_USE_CONST
97
#define yyconst const
98
#else
99
#define yyconst
100
#endif
101
 
102
/* Returned upon end-of-file. */
103
#define YY_NULL 0
104
 
105
/* Promotes a possibly negative, possibly signed char to an unsigned
106
 * integer for use as an array index.  If the signed char is negative,
107
 * we want to instead treat it as an 8-bit unsigned char, hence the
108
 * double cast.
109
 */
110
#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
111
 
112
/* Enter a start condition.  This macro really ought to take a parameter,
113
 * but we do it the disgusting crufty way forced on us by the ()-less
114
 * definition of BEGIN.
115
 */
116
#define BEGIN (yy_start) = 1 + 2 *
117
 
118
/* Translate the current start state into a value that can be later handed
119
 * to BEGIN to return to the state.  The YYSTATE alias is for lex
120
 * compatibility.
121
 */
122
#define YY_START (((yy_start) - 1) / 2)
123
#define YYSTATE YY_START
124
 
125
/* Action number for EOF rule of a given start state. */
126
#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
127
 
128
/* Special action meaning "start processing a new file". */
129
#define YY_NEW_FILE yyrestart(yyin  )
130
 
131
#define YY_END_OF_BUFFER_CHAR 0
132
 
133
/* Size of default input buffer. */
134
#ifndef YY_BUF_SIZE
135
#define YY_BUF_SIZE 16384
136
#endif
137
 
138
#ifndef YY_TYPEDEF_YY_BUFFER_STATE
139
#define YY_TYPEDEF_YY_BUFFER_STATE
140
typedef struct yy_buffer_state *YY_BUFFER_STATE;
141
#endif
142
 
143
extern int yyleng;
144
 
145
extern FILE *yyin, *yyout;
146
 
147
#define EOB_ACT_CONTINUE_SCAN 0
148
#define EOB_ACT_END_OF_FILE 1
149
#define EOB_ACT_LAST_MATCH 2
150
 
151
    #define YY_LESS_LINENO(n)
152
 
153
/* Return all but the first "n" matched characters back to the input stream. */
154
#define yyless(n) \
155
        do \
156
                { \
157
                /* Undo effects of setting up yytext. */ \
158
        int yyless_macro_arg = (n); \
159
        YY_LESS_LINENO(yyless_macro_arg);\
160
                *yy_cp = (yy_hold_char); \
161
                YY_RESTORE_YY_MORE_OFFSET \
162
                (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
163
                YY_DO_BEFORE_ACTION; /* set up yytext again */ \
164
                } \
165
        while ( 0 )
166
 
167
#define unput(c) yyunput( c, (yytext_ptr)  )
168
 
169
/* The following is because we cannot portably get our hands on size_t
170
 * (without autoconf's help, which isn't available because we want
171
 * flex-generated scanners to compile on their own).
172
 */
173
 
174
#ifndef YY_TYPEDEF_YY_SIZE_T
175
#define YY_TYPEDEF_YY_SIZE_T
176
typedef unsigned int yy_size_t;
177
#endif
178
 
179
#ifndef YY_STRUCT_YY_BUFFER_STATE
180
#define YY_STRUCT_YY_BUFFER_STATE
181
struct yy_buffer_state
182
        {
183
        FILE *yy_input_file;
184
 
185
        char *yy_ch_buf;                /* input buffer */
186
        char *yy_buf_pos;               /* current position in input buffer */
187
 
188
        /* Size of input buffer in bytes, not including room for EOB
189
         * characters.
190
         */
191
        yy_size_t yy_buf_size;
192
 
193
        /* Number of characters read into yy_ch_buf, not including EOB
194
         * characters.
195
         */
196
        int yy_n_chars;
197
 
198
        /* Whether we "own" the buffer - i.e., we know we created it,
199
         * and can realloc() it to grow it, and should free() it to
200
         * delete it.
201
         */
202
        int yy_is_our_buffer;
203
 
204
        /* Whether this is an "interactive" input source; if so, and
205
         * if we're using stdio for input, then we want to use getc()
206
         * instead of fread(), to make sure we stop fetching input after
207
         * each newline.
208
         */
209
        int yy_is_interactive;
210
 
211
        /* Whether we're considered to be at the beginning of a line.
212
         * If so, '^' rules will be active on the next match, otherwise
213
         * not.
214
         */
215
        int yy_at_bol;
216
 
217
    int yy_bs_lineno; /**< The line count. */
218
    int yy_bs_column; /**< The column count. */
219
 
220
        /* Whether to try to fill the input buffer when we reach the
221
         * end of it.
222
         */
223
        int yy_fill_buffer;
224
 
225
        int yy_buffer_status;
226
 
227
#define YY_BUFFER_NEW 0
228
#define YY_BUFFER_NORMAL 1
229
        /* When an EOF's been seen but there's still some text to process
230
         * then we mark the buffer as YY_EOF_PENDING, to indicate that we
231
         * shouldn't try reading from the input source any more.  We might
232
         * still have a bunch of tokens to match, though, because of
233
         * possible backing-up.
234
         *
235
         * When we actually see the EOF, we change the status to "new"
236
         * (via yyrestart()), so that the user can continue scanning by
237
         * just pointing yyin at a new input file.
238
         */
239
#define YY_BUFFER_EOF_PENDING 2
240
 
241
        };
242
#endif /* !YY_STRUCT_YY_BUFFER_STATE */
243
 
244
/* Stack of input buffers. */
245
static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
246
static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
247
static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
248
 
249
/* We provide macros for accessing buffer states in case in the
250
 * future we want to put the buffer states in a more general
251
 * "scanner state".
252
 *
253
 * Returns the top of the stack, or NULL.
254
 */
255
#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
256
                          ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
257
                          : NULL)
258
 
259
/* Same as previous macro, but useful when we know that the buffer stack is not
260
 * NULL or when we need an lvalue. For internal use only.
261
 */
262
#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
263
 
264
/* yy_hold_char holds the character lost when yytext is formed. */
265
static char yy_hold_char;
266
static int yy_n_chars;          /* number of characters read into yy_ch_buf */
267
int yyleng;
268
 
269
/* Points to current character in buffer. */
270
static char *yy_c_buf_p = (char *) 0;
271
static int yy_init = 1;         /* whether we need to initialize */
272
static int yy_start = 0; /* start state number */
273
 
274
/* Flag which is used to allow yywrap()'s to do buffer switches
275
 * instead of setting up a fresh yyin.  A bit of a hack ...
276
 */
277
static int yy_did_buffer_switch_on_eof;
278
 
279
void yyrestart (FILE *input_file  );
280
void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer  );
281
YY_BUFFER_STATE yy_create_buffer (FILE *file,int size  );
282
void yy_delete_buffer (YY_BUFFER_STATE b  );
283
void yy_flush_buffer (YY_BUFFER_STATE b  );
284
void yypush_buffer_state (YY_BUFFER_STATE new_buffer  );
285
void yypop_buffer_state (void );
286
 
287
static void yyensure_buffer_stack (void );
288
static void yy_load_buffer_state (void );
289
static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file  );
290
 
291
#define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER )
292
 
293
YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size  );
294
YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str  );
295
YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,int len  );
296
 
297
void *yyalloc (yy_size_t  );
298
void *yyrealloc (void *,yy_size_t  );
299
void yyfree (void *  );
300
 
301
#define yy_new_buffer yy_create_buffer
302
 
303
#define yy_set_interactive(is_interactive) \
304
        { \
305
        if ( ! YY_CURRENT_BUFFER ){ \
306
        yyensure_buffer_stack (); \
307
                YY_CURRENT_BUFFER_LVALUE =    \
308
            yy_create_buffer(yyin,YY_BUF_SIZE ); \
309
        } \
310
        YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
311
        }
312
 
313
#define yy_set_bol(at_bol) \
314
        { \
315
        if ( ! YY_CURRENT_BUFFER ){\
316
        yyensure_buffer_stack (); \
317
                YY_CURRENT_BUFFER_LVALUE =    \
318
            yy_create_buffer(yyin,YY_BUF_SIZE ); \
319
        } \
320
        YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
321
        }
322
 
323
#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
324
 
325
/* Begin user sect3 */
326
 
327
#define yywrap(n) 1
328
#define YY_SKIP_YYWRAP
329
 
330
typedef unsigned char YY_CHAR;
331
 
332
FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
333
 
334
typedef int yy_state_type;
335
 
336
extern int yylineno;
337
 
338
int yylineno = 1;
339
 
340
extern char *yytext;
341
#define yytext_ptr yytext
342
 
343
static yy_state_type yy_get_previous_state (void );
344
static yy_state_type yy_try_NUL_trans (yy_state_type current_state  );
345
static int yy_get_next_buffer (void );
346
static void yy_fatal_error (yyconst char msg[]  );
347
 
348
/* Done after the current pattern has been matched and before the
349
 * corresponding action - sets up yytext.
350
 */
351
#define YY_DO_BEFORE_ACTION \
352
        (yytext_ptr) = yy_bp; \
353
        yyleng = (size_t) (yy_cp - yy_bp); \
354
        (yy_hold_char) = *yy_cp; \
355
        *yy_cp = '\0'; \
356
        (yy_c_buf_p) = yy_cp;
357
 
358
#define YY_NUM_RULES 59
359
#define YY_END_OF_BUFFER 60
360
/* This struct is not used in this scanner,
361
   but its presence is necessary. */
362
struct yy_trans_info
363
        {
364
        flex_int32_t yy_verify;
365
        flex_int32_t yy_nxt;
366
        };
367
static yyconst flex_int16_t yy_accept[939] =
368
    {   0,
369
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
370
       60,   40,   40,   37,   55,   40,   55,   40,   38,   40,
371
       40,   38,   35,   13,   13,   35,   35,   35,   31,   35,
372
       21,   32,   35,   35,   35,   35,   35,   35,   35,   35,
373
       35,   35,   35,   35,   35,   35,   35,   35,   35,   45,
374
       43,   56,   56,   51,   49,   54,    0,    0,    0,    0,
375
        0,    0,    0,   41,    0,    0,    0,    0,    0,    0,
376
        0,    0,    0,    0,    0,   42,   36,   42,   42,   42,
377
       42,   38,    0,    0,   38,   13,    0,   27,    0,    0,
378
        0,    0,   11,   21,   26,    0,    0,    0,    0,    0,
379
 
380
        0,    0,   28,    0,    0,    0,    0,    0,    0,    0,
381
        0,    0,    0,    0,    0,    0,   33,   29,   12,    0,
382
       46,   48,   47,    0,   52,   53,    0,    0,    0,    0,
383
        0,    0,    0,    0,    0,   39,    0,    0,   38,    0,
384
       30,    0,    0,    0,    0,    0,    0,    0,    0,    0,
385
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
386
        0,   29,    0,    0,    0,    0,    0,    0,    0,    0,
387
        0,    0,    0,    0,    0,    0,    0,   38,    0,    0,
388
        0,   15,    0,   26,   26,    0,    0,   23,   23,    0,
389
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
390
 
391
        0,    0,    0,    0,    0,    0,   58,    0,    0,    0,
392
        0,    0,    0,    0,   38,    0,    0,    0,    0,    0,
393
        0,    0,    0,    0,   18,    0,    0,    0,    0,    0,
394
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
395
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
396
        0,    0,    0,    0,    0,   38,    0,    0,    0,    0,
397
        0,   25,    0,    0,   14,    0,    0,    0,    0,    0,
398
        0,    0,    0,    0,    0,    0,    0,    0,    0,   16,
399
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
400
       38,    0,    0,    0,    0,    0,    0,    0,    0,    0,
401
 
402
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
403
       17,    0,    0,    0,    0,    0,    0,    0,    0,    0,
404
        0,   38,    0,   34,    0,    0,    0,    0,    0,    0,
405
        0,   23,   23,    0,    0,    0,    0,    0,    0,    0,
406
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
407
        0,    0,    0,    0,   38,    0,    0,    0,    0,    0,
408
        0,    0,    0,   22,    0,    0,    0,    0,    0,    0,
409
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
410
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
411
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
412
 
413
       19,    0,    0,    8,    0,    0,    0,    0,    0,    0,
414
        0,    0,    0,    0,    0,    0,    0,    0,    0,    8,
415
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
416
        0,    0,    0,    0,    0,    0,    0,    0,   10,    0,
417
        0,    0,    0,    0,    0,    0,    0,   20,    0,    0,
418
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
419
        0,    0,    0,    0,    0,    0,    7,    0,    0,    0,
420
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
421
        0,    0,    0,    7,   57,    9,    0,    0,    0,    0,
422
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
423
 
424
        0,    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
        4,    0,    0,    0,    0,    0,    0,    0,    0,    0,
428
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
429
        4,    0,    0,    0,    0,    0,    0,    0,    0,    0,
430
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
431
       26,   26,    0,    0,    0,    0,    0,    0,    0,    0,
432
        6,    0,    0,    0,    0,    0,    2,    0,    0,    0,
433
        0,    0,    0,    0,    0,    0,    0,    0,    0,    6,
434
 
435
        0,    0,    0,    0,    0,    2,    0,    0,    0,    0,
436
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
437
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
438
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
439
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
440
        0,    0,    0,    0,    0,    0,   24,    0,    0,    0,
441
        0,   44,   50,    0,    0,    0,    0,    0,    0,    0,
442
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
443
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
444
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
445
 
446
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
447
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
448
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
449
        0,    0,    0,    0,    0,    0,    0,    0,    0,    3,
450
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
451
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
452
        1,    0,    0,    3,    0,    0,    0,    0,    0,    0,
453
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
454
        0,    0,    0,    0,    1,    0,    0,    5,    0,    0,
455
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
456
 
457
        0,    0,    0,    0,    7,    0,    5,    0,    0,    0,
458
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
459
        0,    0,    0,    7,    0,    0,    0,    0,    0,    0,
460
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
461
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
462
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
463
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
464
        0,    0,    0,    0,    0,    0,    0,    3,    3,    0,
465
        0,    0,    0,    0,    0,    3,    3,    0,    0,    0,
466
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
467
 
468
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
469
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
470
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
471
        0,    0,    0,    0,    0,    0,    0,    0
472
    } ;
473
 
474
static yyconst flex_int32_t yy_ec[256] =
475
    {   0,
476
        1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
477
        2,    2,    2,    1,    1,    1,    1,    1,    1,    1,
478
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
479
        1,    2,    1,    4,    5,    1,    6,    1,    7,    8,
480
        9,   10,    1,   11,    1,    1,   12,   13,   13,   13,
481
       13,   13,   13,   13,   13,   13,   13,   14,   15,   14,
482
       16,   14,    1,    1,   17,   18,   19,   20,   21,   22,
483
       23,   24,   25,   26,   26,   27,   28,   29,   30,   31,
484
       26,   32,   33,   34,   35,   36,   37,   26,   38,   26,
485
       39,   40,   41,    1,   42,    1,   43,   44,   45,   46,
486
 
487
       47,   48,   49,   50,   51,   26,   26,   52,   53,   54,
488
       55,   56,   26,   57,   58,   59,   60,   26,   26,   61,
489
       62,   63,   64,    1,   65,    1,    1,    1,    1,    1,
490
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
491
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
492
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
493
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
494
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
495
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
496
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
497
 
498
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
499
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
500
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
501
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
502
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
503
        1,    1,    1,    1,    1
504
    } ;
505
 
506
static yyconst flex_int32_t yy_meta[66] =
507
    {   0,
508
        1,    2,    3,    1,    1,    4,    1,    5,    6,    7,
509
        8,    1,    9,    1,   10,    1,   11,   11,   11,   11,
510
       11,   11,   11,   11,   11,   11,   11,   11,   11,   11,
511
       11,   11,   11,   11,   11,   11,   11,   11,   12,    1,
512
        1,   11,   11,   11,   11,   11,   11,   11,   11,   11,
513
       11,   11,   11,   11,   11,   11,   11,   11,   11,   11,
514
       11,   11,   11,   13,    1
515
    } ;
516
 
517
static yyconst flex_int16_t yy_base[1026] =
518
    {   0,
519
        0,   65,  130, 3616,   14,   15,   16,   17,   25,   26,
520
     3621,    0,   40,  194,   49,   43,   35, 4144,    0,   64,
521
       67, 3588, 4144,   19,   31,   44, 3553, 3555, 4144, 3581,
522
     3576, 4144,  254,  319,    6,   16, 3558,   31, 3546,    0,
523
        7,   58,   61,   62,  168,  169,  170,   67,  203,    0,
524
     4144, 3573, 3556,    0,    0, 3501, 3504, 3505, 3501, 3508,
525
      199, 3516,  199, 4144,    0,  210,  232,  234,  233, 3533,
526
     3533,  216,  217,  218,  197, 4144, 4144, 3470, 3470, 3457,
527
     3462,    0, 3467, 3459, 3461,  116,  202, 4144, 3479, 3434,
528
     3473, 3476, 4144, 3465, 4144, 3447, 3435,   14,   90,   21,
529
 
530
      186, 3414, 4144,  177,  183,  180,   26,  181,  189,  188,
531
      178,  218,  248,  249,  251,  253, 4144,    0, 4144,    0,
532
     4144, 4144, 4144,    0, 4144, 4144, 3392,  187, 3391, 3395,
533
     3407,  296,  245,  297,  301, 4144, 3396, 3392, 3400, 3393,
534
     4144,   86,  203,  384,  252,  336,  254,  259,  284,  260,
535
      449,  302,  287,  267,  315,  310,  317,  262,  313,  320,
536
      318,    0,    0,    0, 3382, 3360, 3355, 3364, 3353,  360,
537
      357,  361,  366,  368,  372, 3355, 3350, 3357, 3332,  372,
538
      375, 4144,  377,  408,  375,  344,  514, 4144,  578,  334,
539
      326,  379,  383,  388,  391,  398,  408,  417,    0,    0,
540
 
541
     3322, 3324, 3329, 3327, 3318,  428, 4144,  428,  430,  433,
542
      436,  437, 3317, 3316, 3348, 3303,  449,  453,  409,  472,
543
      442,  484,  490,  638, 4144,    0, 3317, 3313, 3276, 3271,
544
     3263, 3258,  444, 3235,  269,  497,  454,  466,  439,  472,
545
      703,    0,    0, 3212, 3217, 3199, 3209,  501,  493,  496,
546
      503,  504,  546, 3208,  532, 3235, 3206,  507,  515,  527,
547
      556, 4144,  558,  561, 4144, 3222, 3218, 3193, 3153, 3056,
548
     3060, 3058,  493, 3054,  541,  555,  536,  539,  768, 4144,
549
        0,    0,  571, 3062,  573,  591,  573,  833,  586,  596,
550
     3067, 3104,  475,  570,  562,  603,  605, 3079, 3071, 3052,
551
 
552
     3046,  607, 3053, 3044, 3046, 3052, 3044,  324,  554,  581,
553
     4144,    0,    0,  632,  615,  617,  659,  624,  898,  663,
554
      630,  665, 3090, 4144,  516,  629,  650,  672,  682, 3048,
555
     3047, 4144,    0, 3012, 3023, 3026, 3012,  628,  963,  639,
556
        0,    0, 3020, 1027,  693,  654,  686, 1087,  725, 1152,
557
     3017,  698,  686,  720,  722,  706,  707,  705, 3027, 3001,
558
     2976, 2957,  703, 4144, 1217,    0,    0, 2977,  743,  756,
559
      785,  747,  802,  811,  814,  868,  877, 2979,  752, 1282,
560
     1347, 2975,  751,  197,  561,  768,  800,  571,  757, 2956,
561
     2946,  737,  851,  733,  764,  642,  771, 2858, 2851, 1412,
562
 
563
     4144,    0,    0, 4144,  853,  865,  823,  880,  913,  922,
564
      926,  939,  942,  951,  981,  984, 1004, 1007, 2819,  694,
565
     1477, 1016, 1035, 2704, 2667,  770,  834,  851,  759,  863,
566
      836,  927,  827,  769,  882, 2687, 2627, 1039, 4144,  826,
567
     1051,  865,  921,  916,  966, 2596, 2604, 4144,    0,    0,
568
      995, 1021,  997, 1032, 1167, 1170, 1187, 1197, 1066, 1200,
569
     1238, 1257, 1260, 1242, 1269, 1317, 4144, 1542, 1233, 1607,
570
     1272,  958,  926,  640,  992, 1179,  828,  995,  881, 1016,
571
      866, 1002,  711,  976, 4144, 4144, 1064, 1297,  991, 1050,
572
      983, 1025, 2575, 2568,    0,    0, 1301, 1079, 1081, 1326,
573
 
574
     1328, 1331, 1671, 1372, 1382, 1391, 1394, 1440, 1452, 1432,
575
     1731, 1796, 1861, 1141, 1144, 1926, 1014, 1149, 1146, 1168,
576
     1157, 1135, 1435, 1455, 1465, 1185, 2517, 1044,    0,    0,
577
     4144, 2447, 1362, 1364, 1494, 1496, 1518, 1311, 1376, 1507,
578
     1509, 1574, 1571, 1576, 1582, 1585, 1557, 1591, 1626, 1505,
579
     1202, 1521, 1530, 1651, 1991, 1248,  903, 2056, 2121, 2344,
580
     1200, 1287, 1286, 1288, 1359, 1315, 1155, 1285, 1346, 1472,
581
     1527, 1405, 1204, 2301, 2248, 2216,    0,    0, 2069, 1635,
582
     4144, 2026, 1655, 1659, 1675, 1560, 4144, 1673, 1684, 1649,
583
     1705, 1690, 1698, 1695, 1764, 1758, 1716, 1564, 1751, 1265,
584
 
585
     1740, 1373, 1400, 1815, 1821, 1465, 1700, 1231, 1415, 1493,
586
     1402, 1411, 1550, 1726, 1568, 2186, 1760, 1569, 1638, 1774,
587
     1685, 1593, 1471,    0,    0, 1439, 1351, 1818, 1830, 1876,
588
     1878, 1842, 1839, 1880, 2020, 2018, 2022, 2026, 2036, 1782,
589
     1747, 1754, 1217, 1429, 1539, 1497, 1597, 1664, 1856, 1351,
590
     1758, 1417, 1681, 1489, 2251, 1822, 4144, 1895, 1340, 1317,
591
     1219, 4144, 4144, 1184, 1047, 2076, 1903, 2011, 2097, 2315,
592
     2079, 2087, 2101, 2103, 2145, 1882, 1846, 2006, 1870, 1638,
593
     1280, 1560, 1600, 2375, 1666, 1792, 1614, 1744, 2440, 2505,
594
     2570,  964,  778,  724, 2155, 2107, 1905, 2167, 2139, 2203,
595
 
596
     2205, 2164, 2169, 2214, 2219, 2228, 2234, 2266, 2273, 2284,
597
     2298, 2208, 2292, 2294, 2009, 2012, 2014, 1684, 1748, 1891,
598
     1885, 2635, 2700,  607, 1817, 1615, 1869, 1799, 1672, 1997,
599
     2020, 2047, 1784, 2332, 2765, 2830, 2074,    0,  569, 4144,
600
      478, 2348, 2236, 2302, 2322, 2329, 2346, 2350, 2455, 2457,
601
     2459, 2473, 2480, 2463, 2484, 2528, 2538, 2532, 2522, 2524,
602
     4144, 2553, 2590, 2000, 2179, 2062, 1735, 2019, 2055, 2089,
603
     2548,  442,  399, 1562, 1884, 2058, 2116, 1858, 2120, 2148,
604
     2179, 1978, 2592,  348, 2173, 2073, 2141, 4144, 2596, 2490,
605
     2269, 2614, 2546, 2600, 2618, 2611, 2616, 2656, 2651, 2670,
606
 
607
     2667, 2675, 2678, 2681, 2718, 2720, 2274, 2218, 2114, 2185,
608
     2259, 2283, 2311, 2334, 2340, 2250, 2217, 2466, 2115, 2315,
609
     2443, 2437, 2503,  273, 2460, 2740, 2654, 2684, 2780, 2742,
610
     2744, 2782, 2785, 2894, 2788, 2796, 2806, 2812, 2847, 2537,
611
     2534, 2528, 2210, 2341, 2459, 2570, 2633, 2820, 1859, 2578,
612
     2625, 2668, 1981, 2850, 2852, 2871, 2863, 2885, 2888, 2890,
613
     2896, 2904, 2473, 2535, 2719, 2708, 2499, 2658, 2732, 2630,
614
     2694, 2922, 2912, 2914, 2932, 2938, 2947, 2956, 2958, 2721,
615
     2771, 2724, 2706, 2764, 2782,  215,    4, 2962, 2964, 2966,
616
     2973, 2981, 2726, 2826, 2787, 2829, 2790, 2983, 2989, 2997,
617
 
618
     3006, 3008, 2852, 2855, 2940, 2306, 2880, 3015, 3017, 3022,
619
     2789, 2859, 2960, 3024, 3031, 3033, 3038, 2948, 2921, 3013,
620
     2898, 3047, 3054, 3057, 2766, 2878, 2796, 3063, 3073, 3077,
621
     2967, 2901, 3043, 3079, 2914, 3082, 3057, 4144, 3116, 3129,
622
     3142, 3155, 3168, 3181, 3186, 3197, 3210, 3223, 3236, 3246,
623
     3259, 3272, 3285, 3298, 3303, 3314, 3327, 3340, 3353, 3365,
624
     3376, 3389, 3401, 3412, 3425, 3437, 3448, 3461, 3473, 3484,
625
     3497, 3509, 3520, 3533, 3546, 3558, 3569, 3581, 3592, 3605,
626
     3617, 3627, 3638, 3651, 3663, 3674, 3686, 3697, 3710, 3722,
627
     3733, 3745, 3756, 3769, 3781, 3791, 3802, 3815, 3827, 3838,
628
 
629
     3851, 3863, 3873, 3884, 3897, 3910, 3922, 3933, 3945, 3956,
630
     3969, 3981, 3992, 4004, 4015, 4028, 4040, 4051, 4063, 4073,
631
     4084, 4096, 4106, 4117, 4130
632
    } ;
633
 
634
static yyconst flex_int16_t yy_def[1026] =
635
    {   0,
636
      939,  939,  938,    3,  940,  940,  940,  940,  941,  941,
637
      938,  938,  938,  938,  942,  943,  944,  938,  945,  938,
638
      938,  945,  938,  938,  938,  946,  938,  947,  938,  938,
639
      938,  938,  948,  948,   34,   34,   34,   34,  949,   34,
640
       34,   34,   34,   34,   34,   34,   34,   34,  950,  951,
641
      938,  952,  952,  953,  953,  954,  938,  938,  938,  938,
642
      938,  938,  942,  938,  942,  942,  942,  942,  942,  938,
643
      943,  938,  938,  938,  938,  938,  938,  938,  938,  938,
644
      938,  945,  938,  938,  945,  938,  946,  938,  946,  938,
645
      938,  947,  938,  938,  938,   34,   34,   34,   34,   34,
646
 
647
       34,  949,  938,   34,   34,   34,   34,   34,   34,   34,
648
       34,   34,   34,   34,   34,   34,  938,  955,  938,  956,
649
      938,  938,  938,  957,  938,  938,  938,  938,  938,  938,
650
      938,  942,  942,  942,  942,  938,  938,  938,  945,  938,
651
      938,   34,   34,  948,   34,   34,   34,   34,   34,   34,
652
      948,   34,   34,   34,   34,   34,   34,   34,   34,   34,
653
       34,  955,  958,  959,  938,  938,  938,  938,  938,  938,
654
      942,  942,  942,  942,  942,  938,  938,  945,  938,   34,
655
       34,  938,   34,  938,  960,   34,  948,  938,  938,   34,
656
       34,   34,   34,   34,   34,   34,   34,   34,  961,  962,
657
 
658
      938,  938,  938,  938,  938,  938,  938,  942,  942,  942,
659
      942,  942,  938,  938,  945,  938,   34,   34,   34,  938,
660
      960,  960,  963,  948,  938,  189,  938,  938,  938,  938,
661
      938,  938,  938,  938,   34,   34,   34,   34,   34,   34,
662
      948,  964,  965,  938,  938,  938,  938,  938,  942,  942,
663
      942,  942,  942,  938,  938,  945,  938,   34,   34,   34,
664
      938,  938,  966,  963,  938,  938,  938,  938,  938,  938,
665
      938,  938,  938,  938,   34,   34,   34,   34,  948,  938,
666
      967,  968,  938,  938,  969,  942,  942,  970,  938,  969,
667
      945,  971,   34,   34,   34,  966,  972,  938,  938,  938,
668
 
669
      938,  973,  938,  938,  938,  938,  938,   34,   34,   34,
670
      938,  974,  975,  938,  938,  976,  942,  942,  977,  938,
671
      938,  978,  971,  938,   34,   34,   34,  938,  972,  938,
672
      938,  938,  189,  938,  938,  938,  938,   34,  948,   34,
673
      979,  980,  938,  981,  938,  976,  942,  938,  942,  977,
674
      938,  938,  938,  982,  978,   34,   34,   34,  938,  938,
675
      938,  938,   34,  938,  948,  983,  984,  938,  985,  985,
676
      985,  985,  985,  985,  985,  985,  985,  938,  942,  986,
677
      986,  381,  381,  381,  381,  381,  381,  381,  942,  938,
678
      938,  982,  987,   34,   34,   34,   34,  938,  938,  948,
679
 
680
      938,  988,  989,  938,  990,  938,  938,  985,  985,  985,
681
      985,  985,  985,  985,  985,  985,  985,  985,  938,  942,
682
      991,  942,  942,  381,  381,  381,  381,  381,  381,  381,
683
      381,  381,  381,  381,  942,  938,  938,  938,  938,  992,
684
      987,   34,   34,   34,   34,  938,  938,  938,  993,  994,
685
      995,  938,  996,  938,  985,  985,  985,  985,  985,  985,
686
      985,  985,  985,  985,  985,  985,  938,  997,  942,  998,
687
      942,  381,  381,  381,  381,  381,  381,  381,  381,  381,
688
      381,  381,  381,  942,  938,  938,  992,  999,   34,   34,
689
       34,   34,  938,  938, 1000, 1001,  938,  995,  996, 1002,
690
 
691
      985,  985, 1003,  985,  985,  985,  985,  985,  985,  942,
692
      997,  998, 1004,  381,  381,  938,  381,  381,  381,  381,
693
      381,  381,  938,  999,   34,   34,  938,  938, 1005, 1006,
694
      938,  938,  938,  938, 1002,  985,  985, 1007, 1007, 1007,
695
     1007, 1007, 1007, 1007, 1007, 1007,  985,  985,  985,  985,
696
      942,  942,  942,  942, 1004,  381,  381, 1008, 1008,  559,
697
      559,  559,  559,  559,  559,  559,  381,  381,  381,  381,
698
      938, 1009,   34,  938,  938,  938, 1010, 1011,  938,  938,
699
      938,  938,  985,  985,  938, 1007,  938, 1007, 1007, 1007,
700
     1007, 1007, 1007, 1007, 1007, 1007, 1012,  942,  942,  942,
701
 
702
      942,  381,  381,  942,  559,  942,  559,  559,  559,  559,
703
      559,  559,  559,  559,  559, 1013,  938, 1009, 1009, 1014,
704
      938,  938,  938, 1015, 1016,  938,  938,  985,  985, 1007,
705
     1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1017,
706
      942,  942,  381,  381,  559,  559,  559,  559,  559,  559,
707
      559,  559,  559,  559, 1018,  938,  938, 1014,  938,  938,
708
      938,  938,  938,  938,  938,  985,  985, 1007, 1007, 1019,
709
     1007, 1007, 1007, 1007, 1020, 1020, 1017,  942,  942,  381,
710
      381,  559,  559,  938,  559,  559,  559,  559, 1021, 1021,
711
     1018,  938,  938,  938,  985,  985, 1007, 1007, 1022, 1022,
712
 
713
     1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1007, 1007,
714
     1020, 1023, 1023, 1023, 1020,  942,  942,  381,  381,  559,
715
      559, 1024, 1024,  723,  723,  723,  723,  723,  723,  723,
716
      723,  559,  559,  690, 1025, 1025,  736,  690,  938,  938,
717
      938,  985,  985,  985, 1007, 1007,  938, 1022, 1022, 1022,
718
     1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022,  938, 1023,
719
      938, 1023, 1023,  942,  942,  381,  381,  381,  559,  559,
720
      942,  723,  723,  723,  723,  723,  723,  723,  723,  723,
721
      723,  723,  942,  736,  942,  736,  736,  938,  985,  985,
722
      985, 1007, 1007, 1022, 1022, 1022, 1022, 1022, 1022, 1022,
723
 
724
     1022, 1022, 1022, 1022, 1023, 1023,  942,  381,  381,  381,
725
      559,  559,  723,  723,  723,  723,  723,  723,  723,  723,
726
      723,  723,  723,  736,  736,  985,  985,  985, 1007, 1007,
727
     1022, 1022, 1022, 1019, 1022, 1022, 1022, 1022, 1023,  381,
728
      381,  381,  559,  559,  723,  723,  723,  684,  723,  723,
729
      723,  723,  736,  985, 1007, 1007, 1022, 1022, 1022, 1022,
730
     1022, 1023,  381,  559,  559,  723,  723,  723,  723,  723,
731
      736,  985, 1007, 1007, 1007, 1022, 1022, 1022, 1023,  381,
732
      559,  559,  559,  723,  723,  723,  736, 1007, 1007, 1007,
733
     1022, 1022,  559,  559,  559,  723,  723, 1007, 1007, 1007,
734
 
735
     1022, 1022,  559,  559,  559,  723,  723, 1007, 1022, 1022,
736
      559,  723,  723, 1007, 1022, 1022, 1022,  559,  723,  723,
737
      723, 1022, 1022, 1022,  723,  723,  723, 1022, 1022, 1022,
738
      723,  723,  723, 1022,  723, 1022,  723,    0,  938,  938,
739
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
740
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
741
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
742
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
743
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
744
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
745
 
746
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
747
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
748
      938,  938,  938,  938,  938
749
    } ;
750
 
751
static yyconst flex_int16_t yy_nxt[4210] =
752
    {   0,
753
       12,   13,   14,   15,   12,   12,   16,   12,   12,   12,
754
       12,   17,   18,   12,   12,   12,   51,   51,   51,   51,
755
       86,   86,  938,   52,   52,   53,   53,   55,   55,   96,
756
       56,   56,   86,   86,   98,   96,   96,  784,   12,   12,
757
       12,   61,   61,   96,   77,   96,   57,   88,  143,   99,
758
       96,  101,   64,  145,  104,   96,  105,   58,   59,   60,
759
       96,  106,   62,   12,   12,   12,   13,   14,   15,   20,
760
       21,   16,   12,   12,   12,   12,   17,   18,   12,   12,
761
       12,   78,   71,   89,   22,  150,   57,   96,   65,   72,
762
       96,   96,   79,   80,   81,   66,   96,   58,   59,   60,
763
 
764
       73,   74,   75,   12,   12,   12,   67,   68,   69,   83,
765
       57,  107,  180,   57,  108,   96,  109,   86,   86,   96,
766
      116,   58,   59,   60,   58,   59,   84,  144,   12,   12,
767
       23,   24,   25,   26,   27,   23,   28,   29,   29,   29,
768
       29,   30,   31,   29,   32,   32,   33,   34,   33,   33,
769
       35,   33,   36,   37,   33,   33,   33,   33,   33,   33,
770
       33,   33,   33,   33,   33,   38,   33,   33,   39,   23,
771
       23,   33,   33,   40,   41,   33,   42,   33,   33,   33,
772
       43,   44,   33,   45,   33,   46,   33,   47,   33,   48,
773
       33,   33,   33,   29,   29,   61,   61,   96,   96,   96,
774
 
775
       61,   61,   64,  136,  146,   88,   96,   96,  117,   96,
776
       96,  111,   96,   64,  110,   96,   62,   96,   96,  113,
777
      114,   62,  136,  136,  136,  148,  424,  112,  115,  166,
778
      181,  147,   96,  149,  154,   64,   64,   64,   65,  151,
779
       57,   89,  152,  167,  772,  153,  428,   96,   64,   65,
780
      130,   58,   59,   60,   95,   95,   95,   95,   95,   95,
781
       95,   95,   95,   95,   95,   95,  119,   95,   95,   95,
782
      132,   65,   65,   65,  155,  128,  127,   96,   96,  129,
783
       96,   96,   96,   96,   65,  183,  135,  172,   96,   96,
784
      133,   96,   95,   95,   95,  134,   96,  157,   96,   64,
785
 
786
       64,  173,  156,  160,   64,  151,  784,  159,  195,  191,
787
      161,  158,  187,   96,  275,  151,   96,   95,   95,   95,
788
       95,   95,   95,   95,   95,   95,   95,   95,   95,   95,
789
       95,   96,   95,   95,   95,   65,   65,  184,  184,   96,
790
       65,  186,   96,  185,   96,  190,   96,   96,   97,   96,
791
      151,  175,  174,   96,  171,   96,  192,   95,   95,   95,
792
       64,  206,  206,   96,   64,   96,  193,  207,  198,   64,
793
      194,   64,  196,   96,  197,   64,  222,  222,  236,  338,
794
      235,  784,   95,   95,  182,  182,  182,  182,  182,  182,
795
      182,  182,  182,  182,  182,  182,   65,  182,  182,  182,
796
 
797
       65,   96,  224,  208,   96,   65,   96,   65,   96,  220,
798
      220,   65,   96,  217,  211,  221,  218,   96,  219,  209,
799
       96,  237,  182,  182,  182,  210,  212,   96,  813,  206,
800
      206,   64,  239,   64,  238,  207,   64,   96,   96,   64,
801
       64,  151,  240,  222,  222,  260,   96,  182,  182,  188,
802
      189,  189,  188,  188,  188,  188,  188,  188,  188,  188,
803
      188,  241,  188,  188,  188,  157,  258,   65,   96,   65,
804
      259,  772,   65,  220,  220,   65,   65,  251,   96,  221,
805
      250,  252,   96,   96,  249,  222,  222,  188,  188,  188,
806
      253,  261,  261,  272,  273,   96,   64,  151,  262,   64,
807
 
808
      263,   96,  285,  285,   96,  278,   64,   64,  325,  276,
809
      788,  151,  188,  188,  225,  225,  225,  225,  225,  225,
810
      225,  225,  225,  225,  225,  225,   96,  225,  225,  225,
811
      279,  293,   65,  290,  290,   65,   96,  356,  277,  294,
812
      286,  305,   65,   65,   96,   96,  286,  288,  288,   64,
813
      287,  295,  225,  225,  225,  306,   96,  261,  261,  296,
814
      296,  253,  261,  261,  262,   96,  263,  276,   96,  262,
815
       96,  263,  314,  314,  285,  285,   64,  225,  225,  226,
816
      226,  327,  308,   96,   96,   65,  309,  320,  320,  310,
817
      424,   96,  317,  317,   64,  227,  277,  290,  290,   96,
818
 
819
      424,  228,  302,  326,  296,  296,  328,  328,  333,  333,
820
       96,  339,   65,  262,  429,  263,  344,  344,  345,  345,
821
      318,  229,  230,  340,  434,  348,  348,   64,  231,  232,
822
       65,  352,  352,  314,  314,  233,  774,  234,  265,  265,
823
      265,  265,  265,  265,  265,  265,  265,  265,  265,  265,
824
      357,  265,  265,  265,  343,  345,  345,   96,   96,  321,
825
      317,  317,   64,   65,  320,  320,  353,  353,   96,  424,
826
      358,   96,  354,  328,  328,  444,  265,  265,  265,   96,
827
      262,  347,  263,  328,  328,  351,  363,  353,  353,   64,
828
      262,  476,  263,  354,  345,  345,  365,   64,   65,  352,
829
 
830
      352,  265,  265,  280,  280,  280,  280,  280,  280,  280,
831
      280,  280,  280,  280,  280,  378,  280,  280,  280,  379,
832
      391,  392,  392,  353,  353,   65,  349,  349,   64,  354,
833
      394,  395,   96,   65,   96,   96,   96,  396,  392,  392,
834
      424,  280,  280,  280,  405,  405,  397,  389,  405,  405,
835
      406,  741,  407,  442,  406,   64,  407,  405,  405,  400,
836
       64,  522,   96,  406,   65,  407,  280,  280,  311,  311,
837
      311,  311,  311,  311,  311,  311,  311,  311,  311,  311,
838
      424,  311,  311,  311,  443,  409,  405,  405,  424,  420,
839
      435,   65,  406,   96,  407,  445,   65,  424,  424,  424,
840
 
841
       96,  411,  473,  405,  405,  427,  311,  311,  311,  406,
842
      740,  407,  405,  405,  410,  405,  405,  476,  406,  482,
843
      407,  406,  430,  407,  454,  454,  483,  487,  487,  424,
844
      406,  311,  311,   63,  288,  288,   64,   63,   63,   63,
845
       63,   63,   63,   63,   63,   63,   63,   63,   63,  431,
846
      432,  412,  438,  438,  405,  405,  424,  424,  433,  439,
847
      406,  440,  407,  424,  413,  424,  452,  452,  414,  405,
848
      405,   63,   65,   63,  453,  406,  476,  407,  405,  405,
849
      424,  405,  405,  481,  406,   64,  407,  406,  474,  407,
850
      478,  489,  424,  475,   96,  424,   63,   63,   63,  349,
851
 
852
      349,   64,   63,   63,   63,   63,   63,   63,   63,   63,
853
      424,   63,   63,   63,  405,  405,  477,  415,  416,  484,
854
      406,   65,  407,  405,  405,  520,  417,  405,  405,  406,
855
      418,  407,  424,  406,  518,  407,   63,   65,   63,  603,
856
      405,  405,  455,  405,  405,   96,  406,  490,  407,  406,
857
       96,  407,  405,  405,  456,  424,  424,  491,  406,  515,
858
      407,   63,   63,  364,  364,  364,  364,  364,  364,  364,
859
      364,  364,  364,  364,  364,  479,  364,  364,  364,   64,
860
      457,  458,  405,  405,  514,  405,  405,  424,  406,  480,
861
      407,  406,  739,  407,  492,   96,  497,  497,  499,  499,
862
 
863
      459,  364,  364,  364,  460,  405,  405,  526,  405,  405,
864
      151,  406,   96,  407,  406,   65,  407,  469,  469,   64,
865
       96,  424,  452,  452,  424,  470,  364,  364,  344,  344,
866
      453,  424,  462,  454,  454,  461,  471,  471,   64,  406,
867
      438,  438,  422,  424,  370,  424,  463,  439,  476,  440,
868
      371,  517,  438,  438,   96,   65,  521,  465,  151,  439,
869
      464,  440,  519,  694,  466,  487,  487,  503,  503,  525,
870
      372,  373,  476,  406,   65,  407,  575,  374,  375,   96,
871
      497,  497,  499,  499,  376,  576,  377,   63,  348,  348,
872
       64,   63,   63,   63,   63,   63,   63,   63,   63,   63,
873
 
874
       63,   63,   63,  380,  381,  380,  380,  380,  380,  380,
875
      382,  380,  380,  380,  380,  380,  380,  380,  380,  380,
876
      380,  380,  380,  380,  380,   63,   65,   63,  380,  380,
877
      383,  384,  380,  380,  380,  380,  380,  385,  386,  380,
878
      380,  380,  380,  380,  387,  380,  388,  380,  380,  380,
879
       63,   63,   63,  349,  349,   64,   63,   63,   63,   63,
880
       63,   63,   63,   63,  424,   63,   63,   63,  405,  405,
881
      424,  405,  405,  424,  406,  424,  407,  406,  424,  407,
882
      516,  516,  556,  479,  424,  557,  424,  568,  405,  405,
883
       63,   65,   63,  501,  406,  567,  407,  424,  405,  405,
884
 
885
      476,  405,  405,  502,  406,   64,  407,  406,  424,  407,
886
      570,  693,  569,  573,   96,   63,   63,  401,  401,  401,
887
      401,  401,  401,  401,  401,  401,  401,  401,  401,  605,
888
      401,  401,  401,   96,  469,  469,   64,  151,  459,  405,
889
      405,   65,  470,  405,  405,  406,  424,  407,  459,  406,
890
      680,  407,  302,  459,  609,  401,  401,  401,  405,  405,
891
      605,  405,  405,  646,  406,  602,  407,  406,   64,  407,
892
      405,  405,   65,  471,  471,   64,  406,  424,  407,  422,
893
      401,  401,   63,  421,  421,   64,   63,   63,   63,  422,
894
       63,  423,   63,   63,  504,   63,   63,   63,  523,  523,
895
 
896
      719,  507,  497,  497,   65,  439,  506,  440,  531,  424,
897
      505,   65,  585,  585,  424,  605,  605,  605,  405,  405,
898
       63,   65,   63,  508,  406,  587,  407,  533,  533,  405,
899
      405,  532,  405,  405,  534,  406,  610,  407,  406,  611,
900
      407,  692,  612,  476,  605,   63,   63,   63,  421,  421,
901
       64,   63,   63,   63,  422,   63,  423,   63,   63,  302,
902
       63,   63,   63,  533,  533,  580,  580,  509,  615,  536,
903
      534,  581,  537,  405,  405,  424,  425,  585,  585,  406,
904
      605,  407,  665,  405,  405,   63,   65,   63,  605,  406,
905
      587,  407,  405,  405,  582,  405,  405,  643,  406,  649,
906
 
907
      407,  406,  424,  407,  570,  588,  619,  619,  613,  614,
908
       63,   63,  448,  448,  448,  448,  448,  448,  448,  448,
909
      448,  448,  448,  448,  644,  448,  448,  448,  547,  424,
910
      459,  605,  548,  510,  510,   64,  523,  523,  549,  551,
911
      605,  405,  405,  439,  605,  440,  605,  406,  681,  407,
912
      448,  448,  448,  405,  405,  664,  523,  523,  424,  406,
913
      649,  407,  552,  439,  650,  440,  571,  571,   64,  647,
914
      686,   65,  572,  616,  616,  448,  448,   63,  421,  421,
915
       64,   63,   63,   63,  422,   63,  423,   63,   63,   63,
916
       63,   63,   63,  550,   96,  533,  533,  405,  405,  661,
917
 
918
      462,  424,  534,  406,   65,  407,  597,  597,  585,  585,
919
      585,  585,  406,  583,  407,   63,   65,   63,  605,  405,
920
      405,  587,  605,  587,   64,  406,  605,  407,  617,  617,
921
      683,  553,  553,   64,  618,  648,  589,  598,  554,  688,
922
       63,   63,   63,  510,  510,   64,   63,   63,   63,   63,
923
       63,   63,   63,   63,  584,   63,   63,   63,  405,  405,
924
       65,  585,  585,  590,  406,  682,  407,   64,  605,   65,
925
      619,  619,  585,  585,  587,  585,  585,  585,  585,  605,
926
       63,   65,   63,  585,  585,  587,  585,  585,  587,  605,
927
      587,  772,  405,  405,  814,  641,  587,  605,  406,  587,
928
 
929
      407,  720,  459,   65,  651,   63,   63,   63,  512,  512,
930
       64,   63,   63,   63,   63,   63,   63,   63,   63,   63,
931
       63,   63,   63,  591,  592,  654,  605,  405,  405,  605,
932
      593,  594,  595,  406,  660,  407,  580,  580,  596,  619,
933
      619,  721,  581,  605,  772,   63,   65,   63,  649,  459,
934
      585,  585,  599,  599,   64,  733,  405,  405,  600,  718,
935
      405,  405,  406,  587,  407,  582,  406,  424,  407,  776,
936
       63,   63,  503,  503,  585,  585,  585,  585,  406,  628,
937
      407,  601,  531,  629,  550,  585,  585,  587,  539,  587,
938
       65,  585,  585,  605,  540,  605,  585,  585,  587,  585,
939
 
940
      585,  772,  630,  632,  587,  532,  585,  585,  766,  587,
941
      605,  659,  587,  424,  541,  542,  631,  597,  597,  587,
942
      649,  543,  544,  406,  649,  407,  779,  687,  545,  645,
943
      546,   63,  510,  510,   64,   63,   63,   63,   63,   63,
944
       63,   63,   63,   64,   63,   63,   63,  633,  634,  636,
945
       64,  635,  599,  599,   64,  605,  642,   64,  600,  585,
946
      585,  617,  617,  678,  424,  585,  585,  618,  809,   63,
947
       65,   63,  587,  605,  652,  656,  656,  424,  587,   65,
948
      767,  601,  657,  675,  675,  679,   65,  605,  653,  768,
949
       65,  676,  652,   65,   63,   63,   63,  512,  512,   64,
950
 
951
       63,   63,   63,   63,   63,   63,   63,   63,   63,   63,
952
       63,   63,  637,  605,  685,  639,  604,  604,   64,  405,
953
      405,  605,  551,  656,  656,  406,  638,  407,  772,  606,
954
      657,  405,  405,  775,   63,   65,   63,  406,  732,  407,
955
      585,  585,  649,  585,  585,  552,  772,  675,  675,  667,
956
      605,  666,  778,  587,   65,  676,  587,  684,  684,   63,
957
       63,   63,  553,  553,   64,   63,   63,   63,   63,  554,
958
       63,   63,   63,   64,   63,   63,   63,  585,  585,  585,
959
      585,  670,  670,  715,  715,  605,  717,  772,  772,  938,
960
      587,  938,  587,  634,  587,  634,  656,  656,  772,   63,
961
 
962
       65,   63,  668,  657,  405,  405,  585,  585,  769,   65,
963
      406,  669,  407,  772,  605,  815,  818,  818,  777,  587,
964
      605,  770,  745,  696,   63,   63,   63,  516,  516,   64,
965
       63,   63,   63,  422,   63,  423,   63,   63,   63,   63,
966
       63,   63,  558,  559,  558,  558,  558,  558,  558,  560,
967
      558,  558,  558,  558,  558,  558,  558,  558,  558,  558,
968
      558,  558,  558,  558,   63,   65,   63,  558,  558,  561,
969
      562,  558,  558,  558,  558,  558,  563,  564,  558,  558,
970
      558,  558,  558,  565,  558,  566,  558,  558,  558,   63,
971
       63,   63,  553,  553,   64,   63,   63,   63,   63,  554,
972
 
973
       63,   63,   63,   64,   63,   63,   63,  772,  871,   64,
974
      715,  715,  585,  585,  784,   64,  938,   64,  938,  585,
975
      585,  585,  585,  585,  585,  587,  772,  585,  585,   63,
976
       65,   63,  587,  716,  587,  823,  587,  585,  585,   65,
977
      587,  765,  627,  810,  764,   65,  780,  781,  424,  772,
978
      587,   65,  697,   65,   63,   63,   63,  604,  604,   64,
979
       63,   63,   63,   63,   63,   63,   63,   63,  634,   63,
980
      606,   63,  673,  782,  671,  672,  605,  405,  405,  811,
981
      585,  585,  808,  406,  605,  407,  674,  772,  585,  585,
982
      787,  424,  649,  587,   63,   65,   63,  695,  585,  585,
983
 
984
      626,  587,  585,  585,  585,  585,  784,  784,  405,  405,
985
      824,  587,  816,  812,  406,  587,  407,  587,  605,   63,
986
       63,   63,  604,  604,   64,   63,   63,   63,   63,   63,
987
       63,   63,   63,  709,   63,  606,   63,  634,  698,  743,
988
      747,  747,  710,  424,  772,  772,  711,  711,  744,  772,
989
      607,  637,  531,  587,  676,  841,  405,  405,  817,   63,
990
       65,   63,  406,  818,  407,  747,  747,  713,  585,  585,
991
      747,  747,  825,  819,  784,  714,   64,  772,  587,  742,
992
      751,  587,   64,  587,   63,   63,   63,  616,  616,   64,
993
       63,   63,   63,  422,   63,  423,   63,   63,   63,   63,
994
 
995
       63,   63,  820,  746,  747,  747,  747,  747,  772,  759,
996
      759,  807,   65,  842,  424,  747,  747,  587,   65,  587,
997
      747,  747,  761,  752,   63,   65,   63,  821,  587,  747,
998
      747,  864,  749,  587,  750,  747,  747,  405,  405,  605,
999
      623,  822,  587,  406,  840,  407,  772,  424,  587,   63,
1000
       63,   63,  689,  689,   64,   63,   63,   63,   63,   63,
1001
      690,   63,   63,  753,   63,   63,   63,  747,  747,  790,
1002
      405,  405,  754,  818,  585,  585,  406,   64,  407,  772,
1003
      587,  622,  755,  756,  757,  585,  585,  587,  605,   63,
1004
       65,   63,  843,  759,  759,  759,  759,  828,  587,  711,
1005
 
1006
      711,  818,  844,  405,  405,  531,  761,  676,  761,  406,
1007
      763,  407,  605,   65,   63,   63,  670,  670,  634,  758,
1008
      713,  621,  531,  585,  585,  762,  791,  912,  714,  587,
1009
      585,  585,  700,  734,  734,  772,  587,  845,  701,  551,
1010
      772,  690,  634,  587,  772,  702,  792,  747,  747,  405,
1011
      405,  747,  747,  793,  736,  406,  847,  407,  703,  704,
1012
      587,  865,  737,  772,  587,  705,  706,  846,  789,  772,
1013
      605,  849,  707,  608,  708,   63,  684,  684,   64,   63,
1014
       63,   63,  551,   63,   63,   63,   63,   63,   63,  606,
1015
       63,  722,  723,  722,  722,  722,  722,  722,  724,  722,
1016
 
1017
      722,  722,  722,  722,  722,  725,  722,  722,  722,  722,
1018
      722,  722,  722,   63,   65,   63,  722,  722,  726,  727,
1019
      722,  722,  722,  722,  722,  728,  729,  722,  722,  722,
1020
      722,  722,  730,  722,  731,  722,  722,  722,   63,   63,
1021
       63,  734,  734,   64,   63,   63,   63,  551,   63,  690,
1022
       63,   63,   63,   63,   63,   63,  747,  747,  747,  747,
1023
      747,  747,  736,  579,  747,  747,  772,  848,  848,  587,
1024
      737,  587,  772,  587,  747,  747,  853,  587,   63,   65,
1025
       63,  747,  747,  851,  794,  747,  747,  587,  772,  795,
1026
      796,  405,  405,  784,  587,  772,  850,  406,  587,  407,
1027
 
1028
      866,  880,  424,   63,   63,   63,  738,  738,   64,   63,
1029
       63,   63,   63,   63,   63,   63,   63,   63,   63,   63,
1030
       63,  799,  798,  759,  759,  759,  759,  797,  772,  747,
1031
      747,  827,  772,  747,  747,  885,  761,  800,  761,  747,
1032
      747,  574,  587,   63,   65,   63,  587,  585,  585,  771,
1033
      771,   64,  587,  852,  759,  759,  476,  424,  863,  881,
1034
      587,  476,  606,  424,  605,  830,  424,  761,   63,   63,
1035
       63,  689,  689,   64,   63,   63,   63,   63,   63,  690,
1036
       63,   63,  801,   63,   63,   63,  802,   65,  528,  804,
1037
      805,  759,  759,  783,  783,   64,  527,  405,  405,  772,
1038
 
1039
      803,  747,  747,  406,  761,  407,  785,  772,   63,   65,
1040
       63,  867,  747,  747,  587,  585,  585,  747,  747,  747,
1041
      747,  806,  826,  494,  869,  587,  831,  833,  587,  493,
1042
      587,   65,  587,   63,   63,   63,  771,  771,   64,   63,
1043
       63,   63,   63,   63,   63,   63,   63,  829,   63,  606,
1044
       63,  832,  834,  834,  772,  405,  405,  747,  747,  772,
1045
      868,  406,  772,  407,  486,  587,  870,  799,  747,  747,
1046
      587,  747,  747,   63,   65,   63,  747,  747,  854,  747,
1047
      747,  587,  747,  747,  587,  405,  405,  772,  818,  587,
1048
      886,  406,  587,  407,  485,  587,  472,  772,   63,   63,
1049
 
1050
       63,  771,  771,   64,   63,   63,   63,   63,   63,   63,
1051
       63,   63,  799,   63,  606,   63,  821,  459,  799,  759,
1052
      759,  759,  759,  835,  837,  884,  887,  784,  836,  773,
1053
      895,  838,  761,  424,  761,  605,  839,  772,   63,   65,
1054
       63,  405,  405,  585,  585,  747,  747,  406,  605,  407,
1055
      424,  882,  903,  605,  476,  605,  587,  894,  587,  459,
1056
      883,  772,  856,   63,   63,   63,  783,  783,   64,   63,
1057
       63,   63,   63,   63,   63,   63,   63,  818,   63,  785,
1058
       63,  585,  585,  747,  747,  857,  747,  747,  896,  747,
1059
      747,  893,  931,  772,  587,  772,  587,  747,  747,  587,
1060
 
1061
      605,  855,  587,   63,   65,   63,  897,  747,  747,  907,
1062
      587,  772,  859,  747,  747,  905,  605,  918,  605,  772,
1063
      587,  848,  848,  858,  933,  772,  587,   63,   63,   63,
1064
       63,  783,  783,   64,   63,   63,   63,   63,   63,   63,
1065
       63,   63,  860,   63,  785,   63,  799,  861,  759,  759,
1066
      722,  405,  405,  585,  585,  605,  467,  406,  772,  407,
1067
      802,  761,  906,  786,  747,  747,  587,  904,   63,   65,
1068
       63,  649,  585,  585,  862,  447,  873,  587,  872,  911,
1069
      876,  605,  446,  919,  605,  587,  747,  747,  772,  747,
1070
      747,  747,  747,   63,   63,  834,  834,  747,  747,  587,
1071
 
1072
      913,  938,  587,  874,  587,  759,  759,  772,  587,  772,
1073
      587,  700,  875,  585,  585,  585,  585,  701,  761,  932,
1074
      878,  877,  927,  405,  405,  935,  587,  772,  587,  406,
1075
      772,  407,  888,  585,  585,  799,  879,  703,  704,  747,
1076
      747,  925,  937,  772,  705,  706,  587,  889,  747,  747,
1077
      772,  707,  587,  708,  799,  459,  890,  747,  747,  759,
1078
      759,  587,  891,  585,  585,  585,  585,  585,  585,  605,
1079
      587,  892,  761,  649,  747,  747,  587,  605,  587,  437,
1080
      587,  649,  747,  747,  585,  585,  818,  587,  898,  772,
1081
      585,  585,  920,  436,  900,  587,  772,  587,  585,  585,
1082
 
1083
      902,  921,  634,  587,  426,  899,  901,  747,  747,  747,
1084
      747,  587,  419,  908,  404,  302,  585,  585,  747,  747,
1085
      587,  302,  587,  747,  747,  585,  585,  909,  910,  587,
1086
      634,  587,  747,  747,  747,  747,  587,  399,  587,  747,
1087
      747,  915,  772,  914,  398,  587,  926,  587,  747,  747,
1088
      390,  922,  587,  368,  916,  747,  747,  634,  747,  747,
1089
      305,  587,  924,  917,  747,  747,  923,  362,  587,  361,
1090
      302,  587,  772,  928,  747,  747,  818,  587,  747,  747,
1091
      747,  747,  799,  747,  747,  930,  772,  587,  360,  359,
1092
      818,  587,  324,  587,  337,  929,  587,  934,  336,  335,
1093
 
1094
      334,  302,  302,  302,  331,  330,  324,  936,  322,  315,
1095
      799,  307,  304,  303,  302,  799,   19,   19,   19,   19,
1096
       19,   19,   19,   19,   19,   19,   19,   19,   19,   50,
1097
       50,   50,   50,   50,   50,   50,   50,   50,   50,   50,
1098
       50,   50,   54,   54,   54,   54,   54,   54,   54,   54,
1099
       54,   54,   54,   54,   54,   63,   63,   63,   63,   63,
1100
       63,   63,   63,   63,   63,   63,   63,   63,   70,   70,
1101
       70,   70,   70,   70,   70,   70,   70,   70,   70,   70,
1102
       70,   76,   76,   76,   76,   76,   76,   76,   76,   76,
1103
       76,   76,   76,   76,   82,  301,   82,   87,   87,   87,
1104
 
1105
       87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1106
       91,   91,   91,   91,   91,   91,   91,   91,   91,   91,
1107
       91,   91,   91,   96,   96,   96,   96,   96,   96,   96,
1108
       96,   96,   96,   96,   96,   96,  102,  102,  102,  102,
1109
      102,  102,  102,  102,  102,  102,  102,  300,  102,  118,
1110
      299,  298,  292,  291,  289,  284,  118,  248,  118,  120,
1111
      120,  283,  120,  120,  120,  283,  120,  120,  120,  120,
1112
      120,  120,  121,  121,  121,  121,  121,  121,  121,  121,
1113
      121,  121,  121,  121,  121,  124,  124,  124,  274,  124,
1114
      124,  124,  124,  124,  124,  124,  124,  124,  125,  125,
1115
 
1116
      125,  125,  125,  125,  125,  125,  125,  125,  125,  125,
1117
      125,  162,  271,  162,  163,  163,  270,  163,  163,  163,
1118
      269,  163,  163,  163,  163,  163,  163,  164,  164,  164,
1119
      268,  164,  164,  164,  164,  164,  164,  164,  164,  164,
1120
      199,  199,  267,  199,  199,  199,  266,  199,  199,  199,
1121
      199,  199,  199,  200,  200,  200,  257,  200,  200,  200,
1122
      200,  200,  200,  200,  200,  200,  223,  223,  256,  255,
1123
      254,  248,  247,  246,  245,  223,  242,  242,  244,  242,
1124
      242,  242,  216,  242,  242,  242,  242,  242,  242,  243,
1125
      243,  243,  215,  243,  243,  243,  243,  243,  243,  243,
1126
 
1127
      243,  243,  264,  264,  214,  213,  264,  205,  264,  264,
1128
      204,  264,  281,  281,  203,  281,  281,  281,  202,  281,
1129
      281,  281,  281,  281,  281,  282,  282,  282,  201,  282,
1130
      282,  282,  282,  282,  282,  282,  282,  282,  297,  297,
1131
      179,  178,  177,  176,  170,  169,  168,  297,  312,  312,
1132
      165,  312,  312,  312,  103,  312,  312,  312,  312,  312,
1133
      312,  313,  313,  313,  142,  313,  313,  313,  313,  313,
1134
      313,  313,  313,  313,  316,  316,   96,   94,  938,  141,
1135
      140,  938,  139,  316,  319,  319,  319,  319,  319,  319,
1136
      319,  319,  319,  319,  319,  319,  319,  323,  323,  323,
1137
 
1138
      323,  323,  323,  323,  323,  323,  323,  323,  323,  323,
1139
      329,  329,  138,  137,  329,  130,  329,  329,  129,  329,
1140
      332,  332,  332,  332,  332,  332,  332,  332,  128,  332,
1141
      127,  332,  332,  341,  341,  938,  341,  341,  341,  136,
1142
      341,  341,  341,  341,  341,  341,  342,  342,  342,  131,
1143
      342,  342,  342,  342,  342,  342,  342,  342,  342,  346,
1144
      346,  130,  129,  128,  127,  126,  346,  123,  346,  350,
1145
      350,  350,  350,  350,  350,  350,  350,  350,  350,  350,
1146
      350,  350,  355,  355,  122,  355,  103,  100,   94,  355,
1147
       93,  355,  366,  366,   92,  366,  366,  366,   90,  366,
1148
 
1149
      366,  366,  366,  366,  366,  367,  367,  367,   85,  367,
1150
      367,  367,  367,  367,  367,  367,  367,  367,  369,  369,
1151
      938,   49,  938,  938,  938,  938,  938,  369,  393,  393,
1152
      938,  938,  938,  938,  938,  938,  938,  393,  402,  402,
1153
      938,  402,  402,  402,  938,  402,  402,  402,  402,  402,
1154
      402,  403,  403,  403,  938,  403,  403,  403,  403,  403,
1155
      403,  403,  403,  403,  408,  408,  938,  408,  938,  408,
1156
      938,  408,  938,  408,  424,  424,  424,  424,  424,  424,
1157
      424,  424,  424,  424,  424,  424,  424,  441,  441,  938,
1158
      938,  441,  938,  441,  441,  938,  441,  449,  449,  938,
1159
 
1160
      449,  449,  449,  938,  449,  449,  449,  449,  449,  449,
1161
      450,  450,  450,  938,  450,  450,  450,  450,  450,  450,
1162
      450,  450,  450,  451,  451,  938,  451,  938,  451,  938,
1163
      938,  938,  451,  468,  468,  468,  468,  468,  468,  468,
1164
      468,  468,  468,  468,  468,  468,  488,  488,  938,  938,
1165
      938,  938,  938,  938,  938,  488,  495,  495,  938,  495,
1166
      495,  495,  938,  495,  495,  495,  495,  495,  495,  496,
1167
      496,  496,  938,  496,  496,  496,  496,  496,  496,  496,
1168
      496,  496,  498,  498,  938,  938,  938,  938,  938,  498,
1169
      938,  498,  500,  500,  938,  938,  938,  938,  938,  938,
1170
 
1171
      938,  500,  511,  511,  511,  511,  511,  511,  511,  511,
1172
      511,  511,  511,  511,  511,  513,  513,  513,  513,  513,
1173
      513,  513,  513,  513,  513,  513,  513,  513,  524,  524,
1174
      938,  938,  524,  938,  524,  524,  938,  524,  529,  529,
1175
      938,  529,  529,  529,  938,  529,  529,  529,  529,  529,
1176
      529,  530,  530,  530,  938,  530,  530,  530,  530,  530,
1177
      530,  530,  530,  530,  535,  535,  938,  938,  535,  938,
1178
      938,  535,  938,  535,  538,  538,  938,  538,  938,  538,
1179
      938,  938,  938,  538,  555,  555,  555,  555,  555,  555,
1180
      555,  555,  555,  555,  555,  555,  555,  577,  577,  938,
1181
 
1182
      577,  577,  577,  938,  577,  577,  577,  577,  577,  577,
1183
      578,  578,  578,  938,  578,  578,  578,  578,  578,  578,
1184
      578,  578,  578,  586,  586,  938,  938,  938,  938,  938,
1185
      586,  586,  586,  605,  605,  605,  605,  605,  605,  605,
1186
      605,  605,  605,  605,  605,  605,  620,  620,  938,  938,
1187
      938,  938,  938,  938,  938,  620,  624,  624,  938,  624,
1188
      624,  624,  938,  624,  624,  624,  624,  624,  624,  625,
1189
      625,  625,  938,  625,  625,  625,  625,  625,  625,  625,
1190
      625,  625,  640,  640,  938,  640,  938,  640,  938,  938,
1191
      938,  640,  655,  655,  655,  655,  655,  655,  655,  655,
1192
 
1193
      655,  655,  655,  655,  655,  658,  658,  938,  938,  658,
1194
      938,  938,  658,  938,  658,  662,  662,  938,  662,  662,
1195
      662,  938,  662,  662,  662,  662,  662,  662,  663,  663,
1196
      663,  938,  663,  663,  663,  663,  663,  663,  663,  663,
1197
      663,  677,  677,  938,  938,  938,  677,  938,  677,  938,
1198
      677,  691,  691,  691,  691,  691,  691,  691,  691,  691,
1199
      691,  691,  691,  691,  699,  699,  938,  699,  938,  938,
1200
      938,  938,  699,  699,  712,  712,  938,  712,  938,  712,
1201
      938,  938,  938,  712,  735,  735,  735,  735,  735,  735,
1202
      735,  735,  735,  735,  735,  735,  735,  748,  748,  938,
1203
 
1204
      938,  938,  938,  938,  748,  748,  748,  760,  760,  938,
1205
      938,  938,  938,  938,  760,  760,  760,  772,  772,  772,
1206
      772,  772,  772,  772,  772,  772,  772,  772,  772,  772,
1207
      784,  784,  784,  784,  784,  784,  784,  784,  784,  784,
1208
      784,  784,  784,   11,  938,  938,  938,  938,  938,  938,
1209
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
1210
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
1211
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
1212
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
1213
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
1214
 
1215
      938,  938,  938,  938,  938,  938,  938,  938,  938
1216
    } ;
1217
 
1218
static yyconst flex_int16_t yy_chk[4210] =
1219
    {   0,
1220
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1221
        1,    1,    1,    1,    1,    1,    5,    6,    7,    8,
1222
       24,   24,    0,    5,    6,    7,    8,    9,   10,   40,
1223
        9,   10,   25,   25,   35,   35,   41,  887,    1,    1,
1224
        1,   13,   13,   98,   17,   36,   12,   26,   98,   36,
1225
      100,   38,   15,  100,   40,  107,   41,   12,   12,   12,
1226
       38,   41,   13,    1,    1,    2,    2,    2,    2,    2,
1227
        2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
1228
        2,   17,   16,   26,    2,  107,   13,   42,   15,   16,
1229
       43,   44,   17,   17,   17,   15,   48,   13,   13,   13,
1230
 
1231
       16,   16,   16,    2,    2,    2,   15,   15,   15,   20,
1232
       20,   42,  142,   21,   43,  142,   44,   86,   86,   99,
1233
       48,   20,   20,   20,   21,   21,   21,   99,    2,    2,
1234
        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
1235
        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
1236
        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
1237
        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
1238
        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
1239
        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
1240
        3,    3,    3,    3,    3,   14,   14,   45,   46,   47,
1241
 
1242
       61,   61,   63,   75,  101,   87,  104,  111,   49,  106,
1243
      108,   46,  105,   66,   45,  101,   14,  110,  109,   47,
1244
       47,   61,   72,   73,   74,  105,  384,   46,   47,  128,
1245
      143,  104,  143,  106,  111,   67,   69,   68,   63,  108,
1246
       14,   87,  109,  128,  886,  110,  384,  112,  133,   66,
1247
       75,   14,   14,   14,   33,   33,   33,   33,   33,   33,
1248
       33,   33,   33,   33,   33,   33,   49,   33,   33,   33,
1249
       66,   67,   69,   68,  112,   73,   72,  113,  114,   74,
1250
      115,  145,  116,  147,  133,  145,   69,  133,  148,  150,
1251
       67,  158,   33,   33,   33,   68,  154,  114,  235,  132,
1252
 
1253
      134,  133,  113,  116,  135,  147,  824,  115,  158,  154,
1254
      116,  114,  150,  149,  235,  148,  153,   33,   33,   34,
1255
       34,   34,   34,   34,   34,   34,   34,   34,   34,   34,
1256
       34,  152,   34,   34,   34,  132,  134,  146,  146,  156,
1257
      135,  149,  159,  146,  155,  153,  157,  161,   34,  160,
1258
      152,  135,  134,  308,  132,  191,  155,   34,   34,   34,
1259
      171,  170,  170,  190,  172,  146,  156,  170,  161,  173,
1260
      157,  174,  159,  186,  160,  175,  185,  185,  191,  308,
1261
      190,  784,   34,   34,  144,  144,  144,  144,  144,  144,
1262
      144,  144,  144,  144,  144,  144,  171,  144,  144,  144,
1263
 
1264
      172,  180,  186,  171,  181,  173,  183,  174,  192,  184,
1265
      184,  175,  193,  180,  174,  184,  181,  194,  183,  172,
1266
      195,  192,  144,  144,  144,  173,  175,  196,  773,  206,
1267
      206,  208,  195,  209,  194,  206,  210,  197,  219,  211,
1268
      212,  193,  196,  221,  221,  219,  198,  144,  144,  151,
1269
      151,  151,  151,  151,  151,  151,  151,  151,  151,  151,
1270
      151,  197,  151,  151,  151,  198,  217,  208,  239,  209,
1271
      218,  772,  210,  220,  220,  211,  212,  210,  217,  220,
1272
      209,  211,  218,  237,  208,  222,  222,  151,  151,  151,
1273
      212,  223,  223,  233,  233,  238,  249,  239,  223,  250,
1274
 
1275
      223,  240,  248,  248,  293,  237,  251,  252,  293,  236,
1276
      741,  238,  151,  151,  187,  187,  187,  187,  187,  187,
1277
      187,  187,  187,  187,  187,  187,  236,  187,  187,  187,
1278
      240,  258,  249,  255,  255,  250,  258,  325,  236,  259,
1279
      250,  273,  251,  252,  259,  325,  249,  253,  253,  253,
1280
      252,  260,  187,  187,  187,  273,  260,  261,  261,  263,
1281
      263,  251,  264,  264,  261,  277,  261,  276,  278,  264,
1282
      275,  264,  283,  283,  285,  285,  287,  187,  187,  189,
1283
      189,  295,  275,  309,  276,  253,  277,  289,  289,  278,
1284
      385,  295,  286,  286,  286,  189,  276,  290,  290,  294,
1285
 
1286
      388,  189,  739,  294,  296,  296,  297,  297,  302,  302,
1287
      310,  309,  287,  297,  385,  297,  315,  315,  316,  316,
1288
      287,  189,  189,  310,  388,  318,  318,  318,  189,  189,
1289
      286,  321,  321,  314,  314,  189,  724,  189,  224,  224,
1290
      224,  224,  224,  224,  224,  224,  224,  224,  224,  224,
1291
      326,  224,  224,  224,  314,  346,  346,  338,  326,  290,
1292
      317,  317,  317,  318,  320,  320,  322,  322,  340,  474,
1293
      327,  396,  322,  328,  328,  396,  224,  224,  224,  327,
1294
      328,  317,  328,  329,  329,  320,  338,  353,  353,  347,
1295
      329,  474,  329,  353,  345,  345,  340,  420,  317,  352,
1296
 
1297
      352,  224,  224,  241,  241,  241,  241,  241,  241,  241,
1298
      241,  241,  241,  241,  241,  345,  241,  241,  241,  347,
1299
      352,  354,  354,  355,  355,  347,  349,  349,  349,  355,
1300
      356,  357,  363,  420,  358,  356,  357,  358,  392,  392,
1301
      483,  241,  241,  241,  369,  369,  358,  349,  372,  372,
1302
      369,  694,  369,  394,  372,  379,  372,  370,  370,  363,
1303
      389,  483,  394,  370,  349,  370,  241,  241,  279,  279,
1304
      279,  279,  279,  279,  279,  279,  279,  279,  279,  279,
1305
      383,  279,  279,  279,  395,  370,  371,  371,  429,  379,
1306
      389,  379,  371,  395,  371,  397,  389,  386,  434,  426,
1307
 
1308
      397,  372,  426,  373,  373,  383,  279,  279,  279,  373,
1309
      693,  373,  374,  374,  371,  375,  375,  429,  374,  434,
1310
      374,  375,  386,  375,  407,  407,  434,  440,  440,  387,
1311
      407,  279,  279,  288,  288,  288,  288,  288,  288,  288,
1312
      288,  288,  288,  288,  288,  288,  288,  288,  288,  387,
1313
      387,  373,  393,  393,  405,  405,  433,  477,  387,  393,
1314
      405,  393,  405,  427,  374,  431,  406,  406,  375,  376,
1315
      376,  288,  288,  288,  406,  376,  477,  376,  377,  377,
1316
      428,  408,  408,  433,  377,  435,  377,  408,  427,  408,
1317
      431,  442,  430,  428,  442,  481,  288,  288,  319,  319,
1318
 
1319
      319,  319,  319,  319,  319,  319,  319,  319,  319,  319,
1320
      479,  319,  319,  319,  409,  409,  430,  376,  376,  435,
1321
      409,  435,  409,  410,  410,  481,  376,  411,  411,  410,
1322
      377,  410,  557,  411,  479,  411,  319,  319,  319,  557,
1323
      412,  412,  409,  413,  413,  444,  412,  443,  412,  413,
1324
      443,  413,  414,  414,  410,  473,  432,  444,  414,  473,
1325
      414,  319,  319,  339,  339,  339,  339,  339,  339,  339,
1326
      339,  339,  339,  339,  339,  432,  339,  339,  339,  484,
1327
      411,  412,  415,  415,  472,  416,  416,  472,  415,  432,
1328
      415,  416,  692,  416,  445,  445,  451,  451,  453,  453,
1329
 
1330
      413,  339,  339,  339,  414,  417,  417,  491,  418,  418,
1331
      489,  417,  491,  417,  418,  484,  418,  422,  422,  422,
1332
      489,  475,  452,  452,  478,  422,  339,  339,  344,  344,
1333
      452,  482,  416,  454,  454,  415,  423,  423,  423,  454,
1334
      438,  438,  423,  517,  344,  480,  416,  438,  475,  438,
1335
      344,  478,  441,  441,  492,  422,  482,  418,  492,  441,
1336
      417,  441,  480,  665,  418,  487,  487,  459,  459,  490,
1337
      344,  344,  517,  459,  423,  459,  528,  344,  344,  490,
1338
      498,  498,  499,  499,  344,  528,  344,  348,  348,  348,
1339
      348,  348,  348,  348,  348,  348,  348,  348,  348,  348,
1340
 
1341
      348,  348,  348,  348,  348,  348,  348,  348,  348,  348,
1342
      348,  348,  348,  348,  348,  348,  348,  348,  348,  348,
1343
      348,  348,  348,  348,  348,  348,  348,  348,  348,  348,
1344
      348,  348,  348,  348,  348,  348,  348,  348,  348,  348,
1345
      348,  348,  348,  348,  348,  348,  348,  348,  348,  348,
1346
      348,  348,  350,  350,  350,  350,  350,  350,  350,  350,
1347
      350,  350,  350,  350,  522,  350,  350,  350,  455,  455,
1348
      514,  456,  456,  515,  455,  519,  455,  456,  518,  456,
1349
      476,  476,  514,  522,  567,  515,  521,  519,  457,  457,
1350
      350,  350,  350,  455,  457,  518,  457,  520,  458,  458,
1351
 
1352
      567,  460,  460,  456,  458,  551,  458,  460,  476,  460,
1353
      521,  664,  520,  526,  526,  350,  350,  365,  365,  365,
1354
      365,  365,  365,  365,  365,  365,  365,  365,  365,  561,
1355
      365,  365,  365,  573,  469,  469,  469,  573,  457,  461,
1356
      461,  551,  469,  464,  464,  461,  643,  461,  460,  464,
1357
      643,  464,  661,  458,  561,  365,  365,  365,  462,  462,
1358
      608,  463,  463,  608,  462,  556,  462,  463,  600,  463,
1359
      465,  465,  469,  471,  471,  471,  465,  556,  465,  471,
1360
      365,  365,  380,  380,  380,  380,  380,  380,  380,  380,
1361
      380,  380,  380,  380,  461,  380,  380,  380,  488,  488,
1362
 
1363
      681,  464,  497,  497,  600,  488,  463,  488,  497,  681,
1364
      462,  471,  538,  538,  568,  563,  562,  564,  466,  466,
1365
      380,  380,  380,  465,  466,  538,  466,  500,  500,  501,
1366
      501,  497,  502,  502,  500,  501,  562,  501,  502,  563,
1367
      502,  660,  564,  568,  566,  380,  380,  381,  381,  381,
1368
      381,  381,  381,  381,  381,  381,  381,  381,  381,  659,
1369
      381,  381,  381,  533,  533,  534,  534,  466,  566,  501,
1370
      533,  534,  502,  504,  504,  569,  381,  539,  539,  504,
1371
      650,  504,  627,  505,  505,  381,  381,  381,  565,  505,
1372
      539,  505,  506,  506,  534,  507,  507,  602,  506,  650,
1373
 
1374
      506,  507,  602,  507,  569,  539,  572,  572,  565,  565,
1375
      381,  381,  400,  400,  400,  400,  400,  400,  400,  400,
1376
      400,  400,  400,  400,  603,  400,  400,  400,  505,  603,
1377
      504,  611,  506,  510,  510,  510,  523,  523,  507,  510,
1378
      612,  508,  508,  523,  609,  523,  652,  508,  644,  508,
1379
      400,  400,  400,  509,  509,  626,  524,  524,  644,  509,
1380
      611,  509,  510,  524,  612,  524,  525,  525,  606,  609,
1381
      652,  510,  525,  570,  570,  400,  400,  421,  421,  421,
1382
      421,  421,  421,  421,  421,  421,  421,  421,  421,  421,
1383
      421,  421,  421,  508,  525,  535,  535,  536,  536,  623,
1384
 
1385
      509,  570,  535,  536,  606,  536,  550,  550,  540,  540,
1386
      541,  541,  550,  536,  550,  421,  421,  421,  654,  537,
1387
      537,  540,  610,  541,  552,  537,  646,  537,  571,  571,
1388
      646,  553,  553,  553,  571,  610,  540,  552,  553,  654,
1389
      421,  421,  468,  468,  468,  468,  468,  468,  468,  468,
1390
      468,  468,  468,  468,  537,  468,  468,  468,  547,  547,
1391
      552,  586,  586,  541,  547,  645,  547,  598,  645,  553,
1392
      618,  618,  543,  543,  586,  542,  542,  544,  544,  613,
1393
      468,  468,  468,  545,  545,  543,  546,  546,  542,  682,
1394
      544,  774,  548,  548,  774,  598,  545,  615,  548,  546,
1395
 
1396
      548,  682,  547,  598,  613,  468,  468,  470,  470,  470,
1397
      470,  470,  470,  470,  470,  470,  470,  470,  470,  470,
1398
      470,  470,  470,  542,  543,  615,  647,  549,  549,  683,
1399
      544,  545,  545,  549,  622,  549,  580,  580,  546,  619,
1400
      619,  683,  580,  687,  726,  470,  470,  470,  647,  548,
1401
      590,  590,  554,  554,  554,  687,  583,  583,  554,  680,
1402
      584,  584,  583,  590,  583,  580,  584,  680,  584,  726,
1403
      470,  470,  503,  503,  588,  588,  585,  585,  503,  583,
1404
      503,  554,  585,  584,  549,  589,  589,  588,  503,  585,
1405
      554,  592,  592,  648,  503,  685,  594,  594,  589,  593,
1406
 
1407
      593,  729,  588,  590,  592,  585,  591,  591,  718,  594,
1408
      653,  621,  593,  718,  503,  503,  589,  597,  597,  591,
1409
      648,  503,  503,  597,  685,  597,  729,  653,  503,  607,
1410
      503,  511,  511,  511,  511,  511,  511,  511,  511,  511,
1411
      511,  511,  511,  601,  511,  511,  511,  591,  592,  594,
1412
      641,  593,  599,  599,  599,  614,  601,  642,  599,  596,
1413
      596,  617,  617,  641,  767,  595,  595,  617,  767,  511,
1414
      511,  511,  596,  688,  614,  620,  620,  719,  595,  601,
1415
      719,  599,  620,  640,  640,  642,  641,  651,  614,  719,
1416
      599,  640,  688,  642,  511,  511,  512,  512,  512,  512,
1417
 
1418
      512,  512,  512,  512,  512,  512,  512,  512,  512,  512,
1419
      512,  512,  595,  733,  651,  596,  604,  604,  604,  628,
1420
      628,  686,  604,  656,  656,  628,  595,  628,  728,  604,
1421
      656,  629,  629,  725,  512,  512,  512,  629,  686,  629,
1422
      633,  633,  733,  632,  632,  604,  725,  677,  677,  629,
1423
      605,  628,  728,  633,  604,  677,  632,  649,  649,  512,
1424
      512,  513,  513,  513,  513,  513,  513,  513,  513,  513,
1425
      513,  513,  513,  679,  513,  513,  513,  630,  630,  631,
1426
      631,  634,  634,  676,  676,  649,  679,  778,  849,  676,
1427
      630,  676,  631,  632,  634,  633,  658,  658,  727,  513,
1428
 
1429
      513,  513,  630,  658,  667,  667,  697,  697,  720,  679,
1430
      667,  631,  667,  775,  721,  775,  778,  849,  727,  697,
1431
      720,  721,  697,  667,  513,  513,  516,  516,  516,  516,
1432
      516,  516,  516,  516,  516,  516,  516,  516,  516,  516,
1433
      516,  516,  516,  516,  516,  516,  516,  516,  516,  516,
1434
      516,  516,  516,  516,  516,  516,  516,  516,  516,  516,
1435
      516,  516,  516,  516,  516,  516,  516,  516,  516,  516,
1436
      516,  516,  516,  516,  516,  516,  516,  516,  516,  516,
1437
      516,  516,  516,  516,  516,  516,  516,  516,  516,  516,
1438
      516,  555,  555,  555,  555,  555,  555,  555,  555,  555,
1439
 
1440
      555,  555,  555,  764,  555,  555,  555,  782,  853,  678,
1441
      715,  715,  668,  668,  853,  716,  715,  717,  715,  636,
1442
      636,  635,  635,  637,  637,  668,  730,  638,  638,  555,
1443
      555,  555,  636,  678,  635,  782,  637,  639,  639,  764,
1444
      638,  717,  582,  768,  716,  678,  730,  730,  768,  731,
1445
      639,  716,  668,  717,  555,  555,  558,  558,  558,  558,
1446
      558,  558,  558,  558,  558,  558,  558,  558,  635,  558,
1447
      558,  558,  638,  731,  636,  637,  732,  666,  666,  769,
1448
      671,  671,  766,  666,  769,  666,  639,  776,  672,  672,
1449
      737,  766,  732,  671,  558,  558,  558,  666,  669,  669,
1450
 
1451
      579,  672,  673,  673,  674,  674,  786,  737,  696,  696,
1452
      786,  669,  776,  770,  696,  673,  696,  674,  770,  558,
1453
      558,  559,  559,  559,  559,  559,  559,  559,  559,  559,
1454
      559,  559,  559,  672,  559,  559,  559,  671,  669,  696,
1455
      699,  699,  673,  809,  819,  777,  675,  675,  696,  779,
1456
      559,  674,  675,  699,  675,  809,  695,  695,  777,  559,
1457
      559,  559,  695,  819,  695,  702,  702,  675,  698,  698,
1458
      703,  703,  787,  779,  787,  675,  785,  780,  702,  695,
1459
      702,  698,  765,  703,  559,  559,  616,  616,  616,  616,
1460
      616,  616,  616,  616,  616,  616,  616,  616,  616,  616,
1461
 
1462
      616,  616,  780,  698,  700,  700,  701,  701,  781,  712,
1463
      712,  765,  785,  810,  810,  704,  704,  700,  765,  701,
1464
      705,  705,  712,  703,  616,  616,  616,  781,  704,  706,
1465
      706,  843,  700,  705,  701,  707,  707,  743,  743,  843,
1466
      576,  781,  706,  743,  808,  743,  817,  808,  707,  616,
1467
      616,  655,  655,  655,  655,  655,  655,  655,  655,  655,
1468
      655,  655,  655,  704,  655,  655,  655,  708,  708,  743,
1469
      791,  791,  705,  817,  709,  709,  791,  807,  791,  816,
1470
      708,  575,  706,  707,  707,  710,  710,  709,  811,  655,
1471
      655,  655,  811,  713,  713,  714,  714,  791,  710,  711,
1472
 
1473
      711,  816,  812,  744,  744,  711,  713,  711,  714,  744,
1474
      714,  744,  812,  807,  655,  655,  670,  670,  709,  708,
1475
      711,  574,  670,  745,  745,  713,  744,  906,  711,  670,
1476
      746,  746,  670,  734,  734,  906,  745,  813,  670,  734,
1477
      813,  734,  710,  746,  820,  670,  745,  747,  747,  742,
1478
      742,  748,  748,  746,  734,  742,  815,  742,  670,  670,
1479
      747,  844,  734,  814,  748,  670,  670,  814,  742,  815,
1480
      844,  820,  670,  560,  670,  684,  684,  684,  684,  684,
1481
      684,  684,  684,  684,  684,  684,  684,  684,  684,  684,
1482
      684,  684,  684,  684,  684,  684,  684,  684,  684,  684,
1483
 
1484
      684,  684,  684,  684,  684,  684,  684,  684,  684,  684,
1485
      684,  684,  684,  684,  684,  684,  684,  684,  684,  684,
1486
      684,  684,  684,  684,  684,  684,  684,  684,  684,  684,
1487
      684,  684,  684,  684,  684,  684,  684,  684,  684,  684,
1488
      689,  689,  689,  689,  689,  689,  689,  689,  689,  689,
1489
      689,  689,  689,  689,  689,  689,  749,  749,  750,  750,
1490
      751,  751,  689,  532,  754,  754,  822,  818,  818,  749,
1491
      689,  750,  821,  751,  752,  752,  825,  754,  689,  689,
1492
      689,  753,  753,  822,  749,  755,  755,  752,  845,  750,
1493
      751,  790,  790,  825,  753,  818,  821,  790,  755,  790,
1494
 
1495
      845,  863,  863,  689,  689,  690,  690,  690,  690,  690,
1496
      690,  690,  690,  690,  690,  690,  690,  690,  690,  690,
1497
      690,  754,  753,  759,  759,  760,  760,  752,  867,  756,
1498
      756,  790,  823,  758,  758,  867,  759,  755,  760,  757,
1499
      757,  527,  756,  690,  690,  690,  758,  793,  793,  771,
1500
      771,  771,  757,  823,  762,  762,  840,  842,  841,  864,
1501
      793,  842,  771,  841,  864,  793,  840,  762,  690,  690,
1502
      691,  691,  691,  691,  691,  691,  691,  691,  691,  691,
1503
      691,  691,  756,  691,  691,  691,  757,  771,  494,  758,
1504
      762,  763,  763,  783,  783,  783,  493,  789,  789,  846,
1505
 
1506
      757,  794,  794,  789,  763,  789,  783,  850,  691,  691,
1507
      691,  846,  796,  796,  794,  792,  792,  797,  797,  795,
1508
      795,  763,  789,  447,  850,  796,  794,  796,  792,  446,
1509
      797,  783,  795,  691,  691,  722,  722,  722,  722,  722,
1510
      722,  722,  722,  722,  722,  722,  722,  792,  722,  722,
1511
      722,  795,  799,  799,  851,  827,  827,  798,  798,  870,
1512
      847,  827,  847,  827,  437,  799,  851,  797,  801,  801,
1513
      798,  800,  800,  722,  722,  722,  802,  802,  827,  803,
1514
      803,  801,  804,  804,  800,  828,  828,  868,  870,  802,
1515
      868,  828,  803,  828,  436,  804,  425,  852,  722,  722,
1516
 
1517
      723,  723,  723,  723,  723,  723,  723,  723,  723,  723,
1518
      723,  723,  798,  723,  723,  723,  852,  828,  800,  805,
1519
      805,  806,  806,  801,  803,  866,  871,  871,  802,  723,
1520
      883,  804,  805,  424,  806,  883,  806,  866,  723,  723,
1521
      723,  826,  826,  830,  830,  831,  831,  826,  865,  826,
1522
      880,  865,  893,  882,  880,  893,  830,  882,  831,  826,
1523
      865,  869,  830,  723,  723,  735,  735,  735,  735,  735,
1524
      735,  735,  735,  735,  735,  735,  735,  869,  735,  735,
1525
      735,  829,  829,  832,  832,  831,  833,  833,  884,  835,
1526
      835,  881,  925,  884,  829,  925,  832,  836,  836,  833,
1527
 
1528
      881,  829,  835,  735,  735,  735,  885,  837,  837,  897,
1529
      836,  885,  833,  838,  838,  895,  895,  911,  911,  897,
1530
      837,  848,  848,  832,  927,  927,  838,  848,  735,  735,
1531
      736,  736,  736,  736,  736,  736,  736,  736,  736,  736,
1532
      736,  736,  836,  736,  736,  736,  835,  837,  839,  839,
1533
      848,  854,  854,  855,  855,  894,  419,  854,  896,  854,
1534
      838,  839,  896,  736,  857,  857,  855,  894,  736,  736,
1535
      736,  903,  856,  856,  839,  399,  855,  857,  854,  904,
1536
      857,  903,  398,  912,  904,  856,  858,  858,  912,  859,
1537
      859,  860,  860,  736,  736,  834,  834,  861,  861,  858,
1538
 
1539
      907,  834,  859,  856,  860,  862,  862,  926,  834,  907,
1540
      861,  834,  856,  873,  873,  874,  874,  834,  862,  926,
1541
      859,  858,  921,  872,  872,  932,  873,  921,  874,  872,
1542
      932,  872,  873,  875,  875,  860,  862,  834,  834,  876,
1543
      876,  919,  935,  935,  834,  834,  875,  874,  877,  877,
1544
      919,  834,  876,  834,  861,  872,  875,  878,  878,  879,
1545
      879,  877,  876,  888,  888,  889,  889,  890,  890,  905,
1546
      878,  877,  879,  905,  891,  891,  888,  918,  889,  391,
1547
      890,  918,  892,  892,  898,  898,  931,  891,  888,  913,
1548
      899,  899,  913,  390,  890,  892,  931,  898,  900,  900,
1549
 
1550
      892,  913,  898,  899,  382,  889,  891,  901,  901,  902,
1551
      902,  900,  378,  899,  368,  362,  908,  908,  909,  909,
1552
      901,  361,  902,  910,  910,  914,  914,  901,  902,  908,
1553
      900,  909,  915,  915,  916,  916,  910,  360,  914,  917,
1554
      917,  909,  920,  908,  359,  915,  920,  916,  922,  922,
1555
      351,  915,  917,  343,  910,  923,  923,  914,  924,  924,
1556
      337,  922,  917,  910,  928,  928,  916,  336,  923,  335,
1557
      334,  924,  933,  922,  929,  929,  933,  928,  930,  930,
1558
      934,  934,  928,  936,  936,  924,  937,  929,  331,  330,
1559
      937,  930,  323,  934,  307,  923,  936,  929,  306,  305,
1560
 
1561
      304,  303,  301,  300,  299,  298,  292,  934,  291,  284,
1562
      930,  274,  272,  271,  270,  936,  939,  939,  939,  939,
1563
      939,  939,  939,  939,  939,  939,  939,  939,  939,  940,
1564
      940,  940,  940,  940,  940,  940,  940,  940,  940,  940,
1565
      940,  940,  941,  941,  941,  941,  941,  941,  941,  941,
1566
      941,  941,  941,  941,  941,  942,  942,  942,  942,  942,
1567
      942,  942,  942,  942,  942,  942,  942,  942,  943,  943,
1568
      943,  943,  943,  943,  943,  943,  943,  943,  943,  943,
1569
      943,  944,  944,  944,  944,  944,  944,  944,  944,  944,
1570
      944,  944,  944,  944,  945,  269,  945,  946,  946,  946,
1571
 
1572
      946,  946,  946,  946,  946,  946,  946,  946,  946,  946,
1573
      947,  947,  947,  947,  947,  947,  947,  947,  947,  947,
1574
      947,  947,  947,  948,  948,  948,  948,  948,  948,  948,
1575
      948,  948,  948,  948,  948,  948,  949,  949,  949,  949,
1576
      949,  949,  949,  949,  949,  949,  949,  268,  949,  950,
1577
      267,  266,  257,  256,  254,  247,  950,  246,  950,  951,
1578
      951,  245,  951,  951,  951,  244,  951,  951,  951,  951,
1579
      951,  951,  952,  952,  952,  952,  952,  952,  952,  952,
1580
      952,  952,  952,  952,  952,  953,  953,  953,  234,  953,
1581
      953,  953,  953,  953,  953,  953,  953,  953,  954,  954,
1582
 
1583
      954,  954,  954,  954,  954,  954,  954,  954,  954,  954,
1584
      954,  955,  232,  955,  956,  956,  231,  956,  956,  956,
1585
      230,  956,  956,  956,  956,  956,  956,  957,  957,  957,
1586
      229,  957,  957,  957,  957,  957,  957,  957,  957,  957,
1587
      958,  958,  228,  958,  958,  958,  227,  958,  958,  958,
1588
      958,  958,  958,  959,  959,  959,  216,  959,  959,  959,
1589
      959,  959,  959,  959,  959,  959,  960,  960,  215,  214,
1590
      213,  205,  204,  203,  202,  960,  961,  961,  201,  961,
1591
      961,  961,  179,  961,  961,  961,  961,  961,  961,  962,
1592
      962,  962,  178,  962,  962,  962,  962,  962,  962,  962,
1593
 
1594
      962,  962,  963,  963,  177,  176,  963,  169,  963,  963,
1595
      168,  963,  964,  964,  167,  964,  964,  964,  166,  964,
1596
      964,  964,  964,  964,  964,  965,  965,  965,  165,  965,
1597
      965,  965,  965,  965,  965,  965,  965,  965,  966,  966,
1598
      140,  139,  138,  137,  131,  130,  129,  966,  967,  967,
1599
      127,  967,  967,  967,  102,  967,  967,  967,  967,  967,
1600
      967,  968,  968,  968,   97,  968,  968,  968,  968,  968,
1601
      968,  968,  968,  968,  969,  969,   96,   94,   92,   91,
1602
       90,   89,   85,  969,  970,  970,  970,  970,  970,  970,
1603
      970,  970,  970,  970,  970,  970,  970,  971,  971,  971,
1604
 
1605
      971,  971,  971,  971,  971,  971,  971,  971,  971,  971,
1606
      972,  972,   84,   83,  972,   81,  972,  972,   80,  972,
1607
      973,  973,  973,  973,  973,  973,  973,  973,   79,  973,
1608
       78,  973,  973,  974,  974,   71,  974,  974,  974,   70,
1609
      974,  974,  974,  974,  974,  974,  975,  975,  975,   62,
1610
      975,  975,  975,  975,  975,  975,  975,  975,  975,  976,
1611
      976,   60,   59,   58,   57,   56,  976,   53,  976,  977,
1612
      977,  977,  977,  977,  977,  977,  977,  977,  977,  977,
1613
      977,  977,  978,  978,   52,  978,   39,   37,   31,  978,
1614
       30,  978,  979,  979,   28,  979,  979,  979,   27,  979,
1615
 
1616
      979,  979,  979,  979,  979,  980,  980,  980,   22,  980,
1617
      980,  980,  980,  980,  980,  980,  980,  980,  981,  981,
1618
       11,    4,    0,    0,    0,    0,    0,  981,  982,  982,
1619
        0,    0,    0,    0,    0,    0,    0,  982,  983,  983,
1620
        0,  983,  983,  983,    0,  983,  983,  983,  983,  983,
1621
      983,  984,  984,  984,    0,  984,  984,  984,  984,  984,
1622
      984,  984,  984,  984,  985,  985,    0,  985,    0,  985,
1623
        0,  985,    0,  985,  986,  986,  986,  986,  986,  986,
1624
      986,  986,  986,  986,  986,  986,  986,  987,  987,    0,
1625
        0,  987,    0,  987,  987,    0,  987,  988,  988,    0,
1626
 
1627
      988,  988,  988,    0,  988,  988,  988,  988,  988,  988,
1628
      989,  989,  989,    0,  989,  989,  989,  989,  989,  989,
1629
      989,  989,  989,  990,  990,    0,  990,    0,  990,    0,
1630
        0,    0,  990,  991,  991,  991,  991,  991,  991,  991,
1631
      991,  991,  991,  991,  991,  991,  992,  992,    0,    0,
1632
        0,    0,    0,    0,    0,  992,  993,  993,    0,  993,
1633
      993,  993,    0,  993,  993,  993,  993,  993,  993,  994,
1634
      994,  994,    0,  994,  994,  994,  994,  994,  994,  994,
1635
      994,  994,  995,  995,    0,    0,    0,    0,    0,  995,
1636
        0,  995,  996,  996,    0,    0,    0,    0,    0,    0,
1637
 
1638
        0,  996,  997,  997,  997,  997,  997,  997,  997,  997,
1639
      997,  997,  997,  997,  997,  998,  998,  998,  998,  998,
1640
      998,  998,  998,  998,  998,  998,  998,  998,  999,  999,
1641
        0,    0,  999,    0,  999,  999,    0,  999, 1000, 1000,
1642
        0, 1000, 1000, 1000,    0, 1000, 1000, 1000, 1000, 1000,
1643
     1000, 1001, 1001, 1001,    0, 1001, 1001, 1001, 1001, 1001,
1644
     1001, 1001, 1001, 1001, 1002, 1002,    0,    0, 1002,    0,
1645
        0, 1002,    0, 1002, 1003, 1003,    0, 1003,    0, 1003,
1646
        0,    0,    0, 1003, 1004, 1004, 1004, 1004, 1004, 1004,
1647
     1004, 1004, 1004, 1004, 1004, 1004, 1004, 1005, 1005,    0,
1648
 
1649
     1005, 1005, 1005,    0, 1005, 1005, 1005, 1005, 1005, 1005,
1650
     1006, 1006, 1006,    0, 1006, 1006, 1006, 1006, 1006, 1006,
1651
     1006, 1006, 1006, 1007, 1007,    0,    0,    0,    0,    0,
1652
     1007, 1007, 1007, 1008, 1008, 1008, 1008, 1008, 1008, 1008,
1653
     1008, 1008, 1008, 1008, 1008, 1008, 1009, 1009,    0,    0,
1654
        0,    0,    0,    0,    0, 1009, 1010, 1010,    0, 1010,
1655
     1010, 1010,    0, 1010, 1010, 1010, 1010, 1010, 1010, 1011,
1656
     1011, 1011,    0, 1011, 1011, 1011, 1011, 1011, 1011, 1011,
1657
     1011, 1011, 1012, 1012,    0, 1012,    0, 1012,    0,    0,
1658
        0, 1012, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013,
1659
 
1660
     1013, 1013, 1013, 1013, 1013, 1014, 1014,    0,    0, 1014,
1661
        0,    0, 1014,    0, 1014, 1015, 1015,    0, 1015, 1015,
1662
     1015,    0, 1015, 1015, 1015, 1015, 1015, 1015, 1016, 1016,
1663
     1016,    0, 1016, 1016, 1016, 1016, 1016, 1016, 1016, 1016,
1664
     1016, 1017, 1017,    0,    0,    0, 1017,    0, 1017,    0,
1665
     1017, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018,
1666
     1018, 1018, 1018, 1018, 1019, 1019,    0, 1019,    0,    0,
1667
        0,    0, 1019, 1019, 1020, 1020,    0, 1020,    0, 1020,
1668
        0,    0,    0, 1020, 1021, 1021, 1021, 1021, 1021, 1021,
1669
     1021, 1021, 1021, 1021, 1021, 1021, 1021, 1022, 1022,    0,
1670
 
1671
        0,    0,    0,    0, 1022, 1022, 1022, 1023, 1023,    0,
1672
        0,    0,    0,    0, 1023, 1023, 1023, 1024, 1024, 1024,
1673
     1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
1674
     1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025,
1675
     1025, 1025, 1025,  938,  938,  938,  938,  938,  938,  938,
1676
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
1677
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
1678
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
1679
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
1680
      938,  938,  938,  938,  938,  938,  938,  938,  938,  938,
1681
 
1682
      938,  938,  938,  938,  938,  938,  938,  938,  938
1683
    } ;
1684
 
1685
static yy_state_type yy_last_accepting_state;
1686
static char *yy_last_accepting_cpos;
1687
 
1688
extern int yy_flex_debug;
1689
int yy_flex_debug = 0;
1690
 
1691
/* The intent behind this definition is that it'll catch
1692
 * any uses of REJECT which flex missed.
1693
 */
1694
#define REJECT reject_used_but_not_detected
1695
#define yymore() yymore_used_but_not_detected
1696
#define YY_MORE_ADJ 0
1697
#define YY_RESTORE_YY_MORE_OFFSET
1698
char *yytext;
1699
#line 1 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
1700
/* -*- indented-text -*- */
1701
/* Process source files and output type information.
1702
   Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
1703
 
1704
This file is part of GCC.
1705
 
1706
GCC is free software; you can redistribute it and/or modify it under
1707
the terms of the GNU General Public License as published by the Free
1708
Software Foundation; either version 2, or (at your option) any later
1709
version.
1710
 
1711
GCC is distributed in the hope that it will be useful, but WITHOUT ANY
1712
WARRANTY; without even the implied warranty of MERCHANTABILITY or
1713
FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
1714
for more details.
1715
 
1716
You should have received a copy of the GNU General Public License
1717
along with GCC; see the file COPYING.  If not, write to the Free
1718
Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
1719
02110-1301, USA.  */
1720
#line 23 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
1721
#include "bconfig.h"
1722
#include "coretypes.h"
1723
#include "system.h"
1724
 
1725
#define malloc xmalloc
1726
#define realloc xrealloc
1727
 
1728
#include "gengtype.h"
1729
#include "gengtype-yacc.h"
1730
 
1731
#define YY_INPUT(BUF,RESULT,SIZE) ((RESULT) = macro_input (BUF,SIZE))
1732
 
1733
static unsigned macro_input (char *buffer, unsigned);
1734
static const char *push_macro_expansion (const char *, unsigned,
1735
                                         const char *, unsigned);
1736
static char *mangle_macro_name (const char *, unsigned,
1737
                                const char *, unsigned);
1738
static void update_lineno (const char *l, size_t len);
1739
 
1740
struct fileloc lexer_line;
1741
int lexer_toplevel_done;
1742
 
1743
static void
1744
update_lineno (const char *l, size_t len)
1745
{
1746
  while (len-- > 0)
1747
    if (*l++ == '\n')
1748
      lexer_line.line++;
1749
}
1750
 
1751
 
1752
#line 1753 "gengtype-lex.c"
1753
 
1754
#define INITIAL 0
1755
#define in_struct 1
1756
#define in_struct_comment 2
1757
#define in_comment 3
1758
#define in_yacc_escape 4
1759
 
1760
/* Special case for "unistd.h", since it is non-ANSI. We include it way
1761
 * down here because we want the user's section 1 to have been scanned first.
1762
 * The user has a chance to override it with an option.
1763
 */
1764
#include <unistd.h>
1765
 
1766
#ifndef YY_EXTRA_TYPE
1767
#define YY_EXTRA_TYPE void *
1768
#endif
1769
 
1770
/* Macros after this point can all be overridden by user definitions in
1771
 * section 1.
1772
 */
1773
 
1774
#ifndef YY_SKIP_YYWRAP
1775
#ifdef __cplusplus
1776
extern "C" int yywrap (void );
1777
#else
1778
extern int yywrap (void );
1779
#endif
1780
#endif
1781
 
1782
#ifndef yytext_ptr
1783
static void yy_flex_strncpy (char *,yyconst char *,int );
1784
#endif
1785
 
1786
#ifdef YY_NEED_STRLEN
1787
static int yy_flex_strlen (yyconst char * );
1788
#endif
1789
 
1790
#ifndef YY_NO_INPUT
1791
 
1792
#ifdef __cplusplus
1793
static int yyinput (void );
1794
#else
1795
static int input (void );
1796
#endif
1797
 
1798
#endif
1799
 
1800
/* Amount of stuff to slurp up with each read. */
1801
#ifndef YY_READ_BUF_SIZE
1802
#define YY_READ_BUF_SIZE 8192
1803
#endif
1804
 
1805
/* Copy whatever the last rule matched to the standard output. */
1806
#ifndef ECHO
1807
/* This used to be an fputs(), but since the string might contain NUL's,
1808
 * we now use fwrite().
1809
 */
1810
#define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
1811
#endif
1812
 
1813
/* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
1814
 * is returned in "result".
1815
 */
1816
#ifndef YY_INPUT
1817
#define YY_INPUT(buf,result,max_size) \
1818
        if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
1819
                { \
1820
                int c = '*'; \
1821
                size_t n; \
1822
                for ( n = 0; n < max_size && \
1823
                             (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1824
                        buf[n] = (char) c; \
1825
                if ( c == '\n' ) \
1826
                        buf[n++] = (char) c; \
1827
                if ( c == EOF && ferror( yyin ) ) \
1828
                        YY_FATAL_ERROR( "input in flex scanner failed" ); \
1829
                result = n; \
1830
                } \
1831
        else \
1832
                { \
1833
                errno=0; \
1834
                while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
1835
                        { \
1836
                        if( errno != EINTR) \
1837
                                { \
1838
                                YY_FATAL_ERROR( "input in flex scanner failed" ); \
1839
                                break; \
1840
                                } \
1841
                        errno=0; \
1842
                        clearerr(yyin); \
1843
                        } \
1844
                }\
1845
\
1846
 
1847
#endif
1848
 
1849
/* No semi-colon after return; correct usage is to write "yyterminate();" -
1850
 * we don't want an extra ';' after the "return" because that will cause
1851
 * some compilers to complain about unreachable statements.
1852
 */
1853
#ifndef yyterminate
1854
#define yyterminate() return YY_NULL
1855
#endif
1856
 
1857
/* Number of entries by which start-condition stack grows. */
1858
#ifndef YY_START_STACK_INCR
1859
#define YY_START_STACK_INCR 25
1860
#endif
1861
 
1862
/* Report a fatal error. */
1863
#ifndef YY_FATAL_ERROR
1864
#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1865
#endif
1866
 
1867
/* end tables serialization structures and prototypes */
1868
 
1869
/* Default declaration of generated scanner - a define so the user can
1870
 * easily add parameters.
1871
 */
1872
#ifndef YY_DECL
1873
#define YY_DECL_IS_OURS 1
1874
 
1875
extern int yylex (void);
1876
 
1877
#define YY_DECL int yylex (void)
1878
#endif /* !YY_DECL */
1879
 
1880
/* Code executed at the beginning of each rule, after yytext and yyleng
1881
 * have been set up.
1882
 */
1883
#ifndef YY_USER_ACTION
1884
#define YY_USER_ACTION
1885
#endif
1886
 
1887
/* Code executed at the end of each rule. */
1888
#ifndef YY_BREAK
1889
#define YY_BREAK break;
1890
#endif
1891
 
1892
#define YY_RULE_SETUP \
1893
        if ( yyleng > 0 ) \
1894
                YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \
1895
                                (yytext[yyleng - 1] == '\n'); \
1896
        YY_USER_ACTION
1897
 
1898
/** The main scanner function which does all the work.
1899
 */
1900
YY_DECL
1901
{
1902
        register yy_state_type yy_current_state;
1903
        register char *yy_cp, *yy_bp;
1904
        register int yy_act;
1905
 
1906
#line 63 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
1907
 
1908
 
1909
#line 1910 "gengtype-lex.c"
1910
 
1911
        if ( (yy_init) )
1912
                {
1913
                (yy_init) = 0;
1914
 
1915
#ifdef YY_USER_INIT
1916
                YY_USER_INIT;
1917
#endif
1918
 
1919
                if ( ! (yy_start) )
1920
                        (yy_start) = 1; /* first start state */
1921
 
1922
                if ( ! yyin )
1923
                        yyin = stdin;
1924
 
1925
                if ( ! yyout )
1926
                        yyout = stdout;
1927
 
1928
                if ( ! YY_CURRENT_BUFFER ) {
1929
                        yyensure_buffer_stack ();
1930
                        YY_CURRENT_BUFFER_LVALUE =
1931
                                yy_create_buffer(yyin,YY_BUF_SIZE );
1932
                }
1933
 
1934
                yy_load_buffer_state( );
1935
                }
1936
 
1937
        while ( 1 )             /* loops until end-of-file is reached */
1938
                {
1939
                yy_cp = (yy_c_buf_p);
1940
 
1941
                /* Support of yytext. */
1942
                *yy_cp = (yy_hold_char);
1943
 
1944
                /* yy_bp points to the position in yy_ch_buf of the start of
1945
                 * the current run.
1946
                 */
1947
                yy_bp = yy_cp;
1948
 
1949
                yy_current_state = (yy_start);
1950
                yy_current_state += YY_AT_BOL();
1951
yy_match:
1952
                do
1953
                        {
1954
                        register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1955
                        if ( yy_accept[yy_current_state] )
1956
                                {
1957
                                (yy_last_accepting_state) = yy_current_state;
1958
                                (yy_last_accepting_cpos) = yy_cp;
1959
                                }
1960
                        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1961
                                {
1962
                                yy_current_state = (int) yy_def[yy_current_state];
1963
                                if ( yy_current_state >= 939 )
1964
                                        yy_c = yy_meta[(unsigned int) yy_c];
1965
                                }
1966
                        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1967
                        ++yy_cp;
1968
                        }
1969
                while ( yy_current_state != 938 );
1970
                yy_cp = (yy_last_accepting_cpos);
1971
                yy_current_state = (yy_last_accepting_state);
1972
 
1973
yy_find_action:
1974
                yy_act = yy_accept[yy_current_state];
1975
 
1976
                YY_DO_BEFORE_ACTION;
1977
 
1978
do_action:      /* This label is used only to access EOF actions. */
1979
 
1980
                switch ( yy_act )
1981
        { /* beginning of action switch */
1982
                        case 0: /* must back up */
1983
                        /* undo the effects of YY_DO_BEFORE_ACTION */
1984
                        *yy_cp = (yy_hold_char);
1985
                        yy_cp = (yy_last_accepting_cpos);
1986
                        yy_current_state = (yy_last_accepting_state);
1987
                        goto yy_find_action;
1988
 
1989
case 1:
1990
/* rule 1 can match eol */
1991
YY_RULE_SETUP
1992
#line 65 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
1993
{
1994
  char *tagstart;
1995
  size_t taglen;
1996
  char *namestart;
1997
  size_t namelen;
1998
  int is_pointer = 0;
1999
  struct type *t;
2000
  int union_p;
2001
 
2002
  tagstart = yytext + strlen (" typedef ");
2003
  while (ISSPACE (*tagstart))
2004
    tagstart++;
2005
  union_p = tagstart[0] == 'u';
2006
  tagstart += strlen ("union ");
2007
  while (ISSPACE (*tagstart))
2008
    tagstart++;
2009
  for (taglen = 1; ISIDNUM (tagstart[taglen]); taglen++)
2010
    ;
2011
  for (namestart = tagstart + taglen;
2012
       ! ISIDNUM (*namestart);
2013
       namestart++)
2014
    if (*namestart == '*')
2015
      is_pointer = 1;
2016
  for (namelen = 1; ISIDNUM (namestart[namelen]); namelen++)
2017
    ;
2018
  t = find_structure ((const char *) xmemdup (tagstart, taglen, taglen+1),
2019
                      union_p);
2020
  if (is_pointer)
2021
    t = create_pointer (t);
2022
  namestart = (char *) xmemdup (namestart, namelen, namelen+1);
2023
#ifdef USE_MAPPED_LOCATION
2024
  /* temporary kludge - gentype doesn't handle cpp conditionals */
2025
  if (strcmp (namestart, "location_t") != 0
2026
      && strcmp (namestart, "expanded_location") != 0)
2027
#endif
2028
  do_typedef (namestart, t, &lexer_line);
2029
  update_lineno (yytext, yyleng);
2030
}
2031
        YY_BREAK
2032
case 2:
2033
/* rule 2 can match eol */
2034
YY_RULE_SETUP
2035
#line 104 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2036
{
2037
 
2038
  char *namestart;
2039
  size_t namelen;
2040
  struct type *t;
2041
  char *typestart;
2042
  size_t typelen;
2043
 
2044
  for (namestart = yytext + yyleng - 2; ISSPACE (*namestart); namestart--)
2045
    ;
2046
  for (namelen = 1; !ISSPACE (namestart[-namelen]); namelen++)
2047
    ;
2048
  namestart -= namelen - 1;
2049
  for (typestart = yytext + strlen (" typedef ");
2050
       ISSPACE(*typestart);
2051
       typestart++)
2052
    ;
2053
  for (typelen = namestart - typestart;
2054
       ISSPACE (typestart[typelen-1]);
2055
       typelen--)
2056
    ;
2057
 
2058
  t = create_scalar_type (typestart, typelen);
2059
  do_typedef ((const char *) xmemdup (namestart, namelen, namelen+1), t,
2060
              &lexer_line);
2061
  update_lineno (yytext, yyleng);
2062
}
2063
        YY_BREAK
2064
case 3:
2065
/* rule 3 can match eol */
2066
YY_RULE_SETUP
2067
#line 132 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2068
{
2069
  char *namestart;
2070
  size_t namelen;
2071
  struct type *t;
2072
 
2073
  for (namestart = yytext + yyleng - 7; ISSPACE (*namestart); namestart--)
2074
    ;
2075
  for (namelen = 1; !ISSPACE (namestart[-namelen]); namelen++)
2076
    ;
2077
  namestart -= namelen - 1;
2078
 
2079
  t = create_scalar_type ("function type", sizeof ("function type")-1);
2080
  do_typedef ((const char *) xmemdup (namestart, namelen, namelen+1), t,
2081
              &lexer_line);
2082
  update_lineno (yytext, yyleng);
2083
}
2084
        YY_BREAK
2085
case 4:
2086
/* rule 4 can match eol */
2087
YY_RULE_SETUP
2088
#line 149 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2089
{
2090
  char *namestart;
2091
  size_t namelen;
2092
  struct type *t;
2093
 
2094
  for (namestart = yytext + yyleng - 2; ISSPACE (*namestart); namestart--)
2095
    ;
2096
  for (namelen = 1; !ISSPACE (namestart[-namelen]); namelen++)
2097
    ;
2098
  namestart -= namelen - 1;
2099
 
2100
  t = create_scalar_type ("function type", sizeof ("function type")-1);
2101
  do_typedef ((const char *) xmemdup (namestart, namelen, namelen+1), t,
2102
              &lexer_line);
2103
  update_lineno (yytext, yyleng);
2104
}
2105
        YY_BREAK
2106
case 5:
2107
/* rule 5 can match eol */
2108
YY_RULE_SETUP
2109
#line 166 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2110
{
2111
  char *namestart;
2112
  size_t namelen;
2113
  struct type *t;
2114
 
2115
  for (namestart = yytext + yyleng - 7; !ISIDNUM (*namestart); namestart--)
2116
    ;
2117
  for (namelen = 1; ISIDNUM (namestart[-namelen]); namelen++)
2118
    ;
2119
  namestart -= namelen - 1;
2120
 
2121
  t = create_scalar_type ("function type", sizeof ("function type")-1);
2122
  do_typedef ((const char *) xmemdup (namestart, namelen, namelen+1), t,
2123
              &lexer_line);
2124
  update_lineno (yytext, yyleng);
2125
}
2126
        YY_BREAK
2127
case 6:
2128
/* rule 6 can match eol */
2129
YY_RULE_SETUP
2130
#line 183 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2131
{
2132
  char *namestart;
2133
  size_t namelen;
2134
  struct type *t;
2135
 
2136
  for (namestart = yytext + yyleng - 2; !ISIDNUM (*namestart); namestart--)
2137
    ;
2138
  for (namelen = 1; ISIDNUM (namestart[-namelen]); namelen++)
2139
    ;
2140
  namestart -= namelen - 1;
2141
 
2142
  t = create_scalar_type ("function type", sizeof ("function type")-1);
2143
  do_typedef ((const char *) xmemdup (namestart, namelen, namelen+1), t,
2144
              &lexer_line);
2145
  update_lineno (yytext, yyleng);
2146
}
2147
        YY_BREAK
2148
case 7:
2149
/* rule 7 can match eol */
2150
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2151
(yy_c_buf_p) = yy_cp -= 3;
2152
YY_DO_BEFORE_ACTION; /* set up yytext again */
2153
YY_RULE_SETUP
2154
#line 200 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2155
{
2156
  char *tagstart;
2157
  size_t taglen;
2158
  int typedef_p;
2159
  int union_p;
2160
 
2161
  typedef_p = yytext[1] == 't';
2162
  if (typedef_p)
2163
    for (tagstart = yytext + strlen (" typedef ");
2164
         ISSPACE(*tagstart);
2165
         tagstart++)
2166
      ;
2167
  else
2168
    tagstart = yytext + 1;
2169
 
2170
  union_p = tagstart[0] == 'u';
2171
  tagstart += strlen ("union ");
2172
  while (ISSPACE (*tagstart))
2173
    tagstart++;
2174
  for (taglen = 1; ISIDNUM (tagstart[taglen]); taglen++)
2175
    ;
2176
 
2177
  yylval.t = find_structure ((const char *) xmemdup (tagstart, taglen,
2178
                                                     taglen + 1),
2179
                             union_p);
2180
  BEGIN(in_struct);
2181
  update_lineno (yytext, yyleng);
2182
  return typedef_p ? ENT_TYPEDEF_STRUCT : ENT_STRUCT;
2183
}
2184
        YY_BREAK
2185
case 8:
2186
/* rule 8 can match eol */
2187
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2188
(yy_c_buf_p) = yy_cp -= 3;
2189
YY_DO_BEFORE_ACTION; /* set up yytext again */
2190
YY_RULE_SETUP
2191
#line 230 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2192
{
2193
  BEGIN(in_struct);
2194
  update_lineno (yytext, yyleng);
2195
  return ENT_EXTERNSTATIC;
2196
}
2197
        YY_BREAK
2198
case 9:
2199
/* rule 9 can match eol */
2200
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2201
(yy_c_buf_p) = yy_cp -= 3;
2202
YY_DO_BEFORE_ACTION; /* set up yytext again */
2203
YY_RULE_SETUP
2204
#line 236 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2205
{
2206
  BEGIN(in_struct);
2207
  update_lineno (yytext, yyleng);
2208
  return ENT_YACCUNION;
2209
}
2210
        YY_BREAK
2211
case 10:
2212
/* rule 10 can match eol */
2213
YY_RULE_SETUP
2214
#line 242 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2215
{
2216
  char *macro, *arg;
2217
  unsigned macro_len, arg_len;
2218
  char *ptr = yytext;
2219
  const char *additional;
2220
  type_p t;
2221
 
2222
  /* Find the macro name.  */
2223
  for (macro = ptr; *ptr != '(' && !ISSPACE (*ptr); ptr++)
2224
    continue;
2225
  for (macro_len = ptr - macro; !(ISALNUM (*ptr) || *ptr == '_'); ptr++)
2226
    continue;
2227
 
2228
  /* Find the argument(s).  */
2229
  for (arg = ptr; *ptr != ')'; ptr++)
2230
    continue;
2231
  arg_len = ptr - arg;
2232
 
2233
  /* Create the struct and typedef.  */
2234
  ptr = mangle_macro_name ("VEC", 3, arg, arg_len);
2235
 
2236
  t = find_structure (ptr, 0);
2237
  do_typedef (ptr, t, &lexer_line);
2238
 
2239
  /* Push the macro for later expansion.  */
2240
  additional = push_macro_expansion (macro, macro_len, arg, arg_len);
2241
 
2242
  if (additional)
2243
    {
2244
      ptr = mangle_macro_name (ptr, strlen (ptr),
2245
                               additional, strlen (additional));
2246
      t = find_structure (ptr, 0);
2247
      do_typedef (ptr, t, &lexer_line);
2248
    }
2249
}
2250
        YY_BREAK
2251
 
2252
case 11:
2253
YY_RULE_SETUP
2254
#line 280 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2255
{ BEGIN(in_struct_comment); }
2256
        YY_BREAK
2257
case 12:
2258
YY_RULE_SETUP
2259
#line 282 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2260
{ BEGIN(in_yacc_escape); } /* } */
2261
        YY_BREAK
2262
case 13:
2263
/* rule 13 can match eol */
2264
YY_RULE_SETUP
2265
#line 284 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2266
{ update_lineno (yytext, yyleng); }
2267
        YY_BREAK
2268
case 14:
2269
/* rule 14 can match eol */
2270
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2271
(yy_c_buf_p) = yy_cp = yy_bp + 5;
2272
YY_DO_BEFORE_ACTION; /* set up yytext again */
2273
YY_RULE_SETUP
2274
#line 286 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2275
/* don't care */
2276
        YY_BREAK
2277
case 15:
2278
/* rule 15 can match eol */
2279
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2280
(yy_c_buf_p) = yy_cp = yy_bp + 3;
2281
YY_DO_BEFORE_ACTION; /* set up yytext again */
2282
YY_RULE_SETUP
2283
#line 287 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2284
{ return GTY_TOKEN; }
2285
        YY_BREAK
2286
case 16:
2287
/* rule 16 can match eol */
2288
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2289
(yy_c_buf_p) = yy_cp = yy_bp + 5;
2290
YY_DO_BEFORE_ACTION; /* set up yytext again */
2291
YY_RULE_SETUP
2292
#line 288 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2293
{ return UNION; }
2294
        YY_BREAK
2295
case 17:
2296
/* rule 17 can match eol */
2297
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2298
(yy_c_buf_p) = yy_cp = yy_bp + 6;
2299
YY_DO_BEFORE_ACTION; /* set up yytext again */
2300
YY_RULE_SETUP
2301
#line 289 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2302
{ return STRUCT; }
2303
        YY_BREAK
2304
case 18:
2305
/* rule 18 can match eol */
2306
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2307
(yy_c_buf_p) = yy_cp = yy_bp + 4;
2308
YY_DO_BEFORE_ACTION; /* set up yytext again */
2309
YY_RULE_SETUP
2310
#line 290 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2311
{ return ENUM; }
2312
        YY_BREAK
2313
case 19:
2314
/* rule 19 can match eol */
2315
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2316
(yy_c_buf_p) = yy_cp = yy_bp + 9;
2317
YY_DO_BEFORE_ACTION; /* set up yytext again */
2318
YY_RULE_SETUP
2319
#line 291 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2320
{ return ALIAS; }
2321
        YY_BREAK
2322
case 20:
2323
/* rule 20 can match eol */
2324
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2325
(yy_c_buf_p) = yy_cp = yy_bp + 10;
2326
YY_DO_BEFORE_ACTION; /* set up yytext again */
2327
YY_RULE_SETUP
2328
#line 292 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2329
{ return NESTED_PTR; }
2330
        YY_BREAK
2331
case 21:
2332
YY_RULE_SETUP
2333
#line 293 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2334
{ return NUM; }
2335
        YY_BREAK
2336
case 22:
2337
/* rule 22 can match eol */
2338
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2339
(yy_c_buf_p) = yy_cp -= 1;
2340
YY_DO_BEFORE_ACTION; /* set up yytext again */
2341
YY_RULE_SETUP
2342
#line 294 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2343
{
2344
  yylval.s = (const char *) xmemdup (yytext, yyleng, yyleng+1);
2345
  return PARAM_IS;
2346
}
2347
        YY_BREAK
2348
case 23:
2349
/* rule 23 can match eol */
2350
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2351
(yy_c_buf_p) = yy_cp -= 1;
2352
YY_DO_BEFORE_ACTION; /* set up yytext again */
2353
#line 300 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2354
case 24:
2355
/* rule 24 can match eol */
2356
YY_RULE_SETUP
2357
#line 300 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2358
{
2359
  size_t len;
2360
 
2361
  for (len = yyleng; ISSPACE (yytext[len-1]); len--)
2362
    ;
2363
 
2364
  yylval.t = create_scalar_type (yytext, len);
2365
  update_lineno (yytext, yyleng);
2366
  return SCALAR;
2367
}
2368
        YY_BREAK
2369
case 25:
2370
/* rule 25 can match eol */
2371
YY_RULE_SETUP
2372
#line 311 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2373
{
2374
  char *macro, *arg;
2375
  unsigned macro_len, arg_len;
2376
  char *ptr = yytext;
2377
 
2378
  /* Find the macro name */
2379
  for (macro = ptr; *ptr != '(' && !ISSPACE (*ptr); ptr++)
2380
    continue;
2381
  for (macro_len = ptr - macro; !(ISALNUM(*ptr) || *ptr == '_'); ptr++)
2382
    continue;
2383
 
2384
  /* Find the arguments.  */
2385
  for (arg = ptr; *ptr != ')'; ptr++)
2386
    continue;
2387
  arg_len = ptr - arg;
2388
 
2389
  ptr = mangle_macro_name (macro, macro_len, arg, arg_len);
2390
  yylval.s = ptr;
2391
  return ID;
2392
}
2393
        YY_BREAK
2394
case 26:
2395
/* rule 26 can match eol */
2396
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2397
(yy_c_buf_p) = yy_cp -= 1;
2398
YY_DO_BEFORE_ACTION; /* set up yytext again */
2399
YY_RULE_SETUP
2400
#line 332 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2401
{
2402
  yylval.s = (const char *) xmemdup (yytext, yyleng, yyleng+1);
2403
  return ID;
2404
}
2405
        YY_BREAK
2406
case 27:
2407
/* rule 27 can match eol */
2408
YY_RULE_SETUP
2409
#line 337 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2410
{
2411
  yylval.s = (const char *) xmemdup (yytext+1, yyleng-2, yyleng-1);
2412
  return STRING;
2413
}
2414
        YY_BREAK
2415
case 28:
2416
/* rule 28 can match eol */
2417
YY_RULE_SETUP
2418
#line 341 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2419
{
2420
  yylval.s = (const char *) xmemdup (yytext+1, yyleng-2, yyleng-1);
2421
  return ARRAY;
2422
}
2423
        YY_BREAK
2424
case 29:
2425
YY_RULE_SETUP
2426
#line 345 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2427
{
2428
  yylval.s = (const char *) xmemdup (yytext+1, yyleng-1, yyleng);
2429
  return PERCENT_ID;
2430
}
2431
        YY_BREAK
2432
case 30:
2433
/* rule 30 can match eol */
2434
YY_RULE_SETUP
2435
#line 349 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2436
{
2437
  yylval.s = (const char *) xmemdup (yytext+1, yyleng-2, yyleng);
2438
  return CHAR;
2439
}
2440
        YY_BREAK
2441
case 31:
2442
YY_RULE_SETUP
2443
#line 354 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2444
{ return yytext[0]; }
2445
        YY_BREAK
2446
case 32:
2447
YY_RULE_SETUP
2448
#line 356 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2449
{
2450
  if (lexer_toplevel_done)
2451
    {
2452
      BEGIN(INITIAL);
2453
      lexer_toplevel_done = 0;
2454
    }
2455
  return yytext[0];
2456
}
2457
        YY_BREAK
2458
case 33:
2459
YY_RULE_SETUP
2460
#line 365 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2461
{
2462
  BEGIN(INITIAL);
2463
  return PERCENTPERCENT;
2464
}
2465
        YY_BREAK
2466
case 34:
2467
/* rule 34 can match eol */
2468
YY_RULE_SETUP
2469
#line 370 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2470
{lexer_line.line++;}
2471
        YY_BREAK
2472
case 35:
2473
YY_RULE_SETUP
2474
#line 372 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2475
{
2476
  error_at_line (&lexer_line, "unexpected character `%s'", yytext);
2477
}
2478
        YY_BREAK
2479
 
2480
case 36:
2481
YY_RULE_SETUP
2482
#line 377 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2483
{ BEGIN(in_comment); }
2484
        YY_BREAK
2485
case 37:
2486
/* rule 37 can match eol */
2487
YY_RULE_SETUP
2488
#line 378 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2489
{ lexer_line.line++; }
2490
        YY_BREAK
2491
case 38:
2492
#line 380 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2493
case 39:
2494
/* rule 39 can match eol */
2495
#line 381 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2496
case 40:
2497
/* rule 40 can match eol */
2498
YY_RULE_SETUP
2499
#line 381 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2500
/* do nothing */
2501
        YY_BREAK
2502
case 41:
2503
/* rule 41 can match eol */
2504
YY_RULE_SETUP
2505
#line 382 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2506
{ update_lineno (yytext, yyleng); }
2507
        YY_BREAK
2508
case 42:
2509
/* rule 42 can match eol */
2510
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2511
(yy_c_buf_p) = yy_cp = yy_bp + 1;
2512
YY_DO_BEFORE_ACTION; /* set up yytext again */
2513
YY_RULE_SETUP
2514
#line 383 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2515
/* do nothing */
2516
        YY_BREAK
2517
 
2518
case 43:
2519
/* rule 43 can match eol */
2520
YY_RULE_SETUP
2521
#line 386 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2522
{ lexer_line.line++; }
2523
        YY_BREAK
2524
case 44:
2525
#line 388 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2526
case 45:
2527
YY_RULE_SETUP
2528
#line 388 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2529
/* do nothing */
2530
        YY_BREAK
2531
case 46:
2532
/* rule 46 can match eol */
2533
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2534
(yy_c_buf_p) = yy_cp = yy_bp + 1;
2535
YY_DO_BEFORE_ACTION; /* set up yytext again */
2536
YY_RULE_SETUP
2537
#line 389 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2538
/* do nothing */
2539
        YY_BREAK
2540
 
2541
case 47:
2542
YY_RULE_SETUP
2543
#line 391 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2544
{ BEGIN(INITIAL); }
2545
        YY_BREAK
2546
case 48:
2547
YY_RULE_SETUP
2548
#line 392 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2549
{ BEGIN(in_struct); }
2550
        YY_BREAK
2551
 
2552
case 49:
2553
/* rule 49 can match eol */
2554
YY_RULE_SETUP
2555
#line 395 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2556
{ lexer_line.line++; }
2557
        YY_BREAK
2558
case 50:
2559
/* rule 50 can match eol */
2560
#line 397 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2561
case 51:
2562
/* rule 51 can match eol */
2563
YY_RULE_SETUP
2564
#line 397 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2565
/* do nothing */
2566
        YY_BREAK
2567
case 52:
2568
/* rule 52 can match eol */
2569
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2570
(yy_c_buf_p) = yy_cp = yy_bp + 1;
2571
YY_DO_BEFORE_ACTION; /* set up yytext again */
2572
YY_RULE_SETUP
2573
#line 398 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2574
/* do nothing */
2575
        YY_BREAK
2576
case 53:
2577
YY_RULE_SETUP
2578
#line 399 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2579
{ BEGIN(in_struct); }
2580
        YY_BREAK
2581
case 54:
2582
YY_RULE_SETUP
2583
#line 400 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2584
{
2585
  error_at_line (&lexer_line,
2586
                 "unterminated %%{; unexpected EOF");
2587
}
2588
        YY_BREAK
2589
 
2590
case 55:
2591
#line 408 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2592
case 56:
2593
YY_RULE_SETUP
2594
#line 408 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2595
{
2596
  error_at_line (&lexer_line,
2597
                 "unterminated comment or string; unexpected EOF");
2598
}
2599
        YY_BREAK
2600
case 57:
2601
/* rule 57 can match eol */
2602
YY_RULE_SETUP
2603
#line 413 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2604
/* do nothing */
2605
        YY_BREAK
2606
case 58:
2607
/* rule 58 can match eol */
2608
YY_RULE_SETUP
2609
#line 414 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2610
{
2611
  error_at_line (&lexer_line, "stray GTY marker");
2612
}
2613
        YY_BREAK
2614
case 59:
2615
YY_RULE_SETUP
2616
#line 418 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
2617
YY_FATAL_ERROR( "flex scanner jammed" );
2618
        YY_BREAK
2619
#line 2620 "gengtype-lex.c"
2620
case YY_STATE_EOF(INITIAL):
2621
case YY_STATE_EOF(in_struct):
2622
case YY_STATE_EOF(in_struct_comment):
2623
case YY_STATE_EOF(in_comment):
2624
case YY_STATE_EOF(in_yacc_escape):
2625
        yyterminate();
2626
 
2627
        case YY_END_OF_BUFFER:
2628
                {
2629
                /* Amount of text matched not including the EOB char. */
2630
                int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
2631
 
2632
                /* Undo the effects of YY_DO_BEFORE_ACTION. */
2633
                *yy_cp = (yy_hold_char);
2634
                YY_RESTORE_YY_MORE_OFFSET
2635
 
2636
                if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
2637
                        {
2638
                        /* We're scanning a new file or input source.  It's
2639
                         * possible that this happened because the user
2640
                         * just pointed yyin at a new source and called
2641
                         * yylex().  If so, then we have to assure
2642
                         * consistency between YY_CURRENT_BUFFER and our
2643
                         * globals.  Here is the right place to do so, because
2644
                         * this is the first action (other than possibly a
2645
                         * back-up) that will match for the new input source.
2646
                         */
2647
                        (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
2648
                        YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
2649
                        YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
2650
                        }
2651
 
2652
                /* Note that here we test for yy_c_buf_p "<=" to the position
2653
                 * of the first EOB in the buffer, since yy_c_buf_p will
2654
                 * already have been incremented past the NUL character
2655
                 * (since all states make transitions on EOB to the
2656
                 * end-of-buffer state).  Contrast this with the test
2657
                 * in input().
2658
                 */
2659
                if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
2660
                        { /* This was really a NUL. */
2661
                        yy_state_type yy_next_state;
2662
 
2663
                        (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
2664
 
2665
                        yy_current_state = yy_get_previous_state(  );
2666
 
2667
                        /* Okay, we're now positioned to make the NUL
2668
                         * transition.  We couldn't have
2669
                         * yy_get_previous_state() go ahead and do it
2670
                         * for us because it doesn't know how to deal
2671
                         * with the possibility of jamming (and we don't
2672
                         * want to build jamming into it because then it
2673
                         * will run more slowly).
2674
                         */
2675
 
2676
                        yy_next_state = yy_try_NUL_trans( yy_current_state );
2677
 
2678
                        yy_bp = (yytext_ptr) + YY_MORE_ADJ;
2679
 
2680
                        if ( yy_next_state )
2681
                                {
2682
                                /* Consume the NUL. */
2683
                                yy_cp = ++(yy_c_buf_p);
2684
                                yy_current_state = yy_next_state;
2685
                                goto yy_match;
2686
                                }
2687
 
2688
                        else
2689
                                {
2690
                                yy_cp = (yy_last_accepting_cpos);
2691
                                yy_current_state = (yy_last_accepting_state);
2692
                                goto yy_find_action;
2693
                                }
2694
                        }
2695
 
2696
                else switch ( yy_get_next_buffer(  ) )
2697
                        {
2698
                        case EOB_ACT_END_OF_FILE:
2699
                                {
2700
                                (yy_did_buffer_switch_on_eof) = 0;
2701
 
2702
                                if ( yywrap( ) )
2703
                                        {
2704
                                        /* Note: because we've taken care in
2705
                                         * yy_get_next_buffer() to have set up
2706
                                         * yytext, we can now set up
2707
                                         * yy_c_buf_p so that if some total
2708
                                         * hoser (like flex itself) wants to
2709
                                         * call the scanner after we return the
2710
                                         * YY_NULL, it'll still work - another
2711
                                         * YY_NULL will get returned.
2712
                                         */
2713
                                        (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
2714
 
2715
                                        yy_act = YY_STATE_EOF(YY_START);
2716
                                        goto do_action;
2717
                                        }
2718
 
2719
                                else
2720
                                        {
2721
                                        if ( ! (yy_did_buffer_switch_on_eof) )
2722
                                                YY_NEW_FILE;
2723
                                        }
2724
                                break;
2725
                                }
2726
 
2727
                        case EOB_ACT_CONTINUE_SCAN:
2728
                                (yy_c_buf_p) =
2729
                                        (yytext_ptr) + yy_amount_of_matched_text;
2730
 
2731
                                yy_current_state = yy_get_previous_state(  );
2732
 
2733
                                yy_cp = (yy_c_buf_p);
2734
                                yy_bp = (yytext_ptr) + YY_MORE_ADJ;
2735
                                goto yy_match;
2736
 
2737
                        case EOB_ACT_LAST_MATCH:
2738
                                (yy_c_buf_p) =
2739
                                &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
2740
 
2741
                                yy_current_state = yy_get_previous_state(  );
2742
 
2743
                                yy_cp = (yy_c_buf_p);
2744
                                yy_bp = (yytext_ptr) + YY_MORE_ADJ;
2745
                                goto yy_find_action;
2746
                        }
2747
                break;
2748
                }
2749
 
2750
        default:
2751
                YY_FATAL_ERROR(
2752
                        "fatal flex scanner internal error--no action found" );
2753
        } /* end of action switch */
2754
                } /* end of scanning one token */
2755
} /* end of yylex */
2756
 
2757
/* yy_get_next_buffer - try to read in a new buffer
2758
 *
2759
 * Returns a code representing an action:
2760
 *      EOB_ACT_LAST_MATCH -
2761
 *      EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2762
 *      EOB_ACT_END_OF_FILE - end of file
2763
 */
2764
static int yy_get_next_buffer (void)
2765
{
2766
        register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
2767
        register char *source = (yytext_ptr);
2768
        register int number_to_move, i;
2769
        int ret_val;
2770
 
2771
        if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
2772
                YY_FATAL_ERROR(
2773
                "fatal flex scanner internal error--end of buffer missed" );
2774
 
2775
        if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
2776
                { /* Don't try to fill the buffer, so this is an EOF. */
2777
                if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
2778
                        {
2779
                        /* We matched a single character, the EOB, so
2780
                         * treat this as a final EOF.
2781
                         */
2782
                        return EOB_ACT_END_OF_FILE;
2783
                        }
2784
 
2785
                else
2786
                        {
2787
                        /* We matched some text prior to the EOB, first
2788
                         * process it.
2789
                         */
2790
                        return EOB_ACT_LAST_MATCH;
2791
                        }
2792
                }
2793
 
2794
        /* Try to read more data. */
2795
 
2796
        /* First move last chars to start of buffer. */
2797
        number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
2798
 
2799
        for ( i = 0; i < number_to_move; ++i )
2800
                *(dest++) = *(source++);
2801
 
2802
        if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
2803
                /* don't do the read, it's not guaranteed to return an EOF,
2804
                 * just force an EOF
2805
                 */
2806
                YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
2807
 
2808
        else
2809
                {
2810
                        size_t num_to_read =
2811
                        YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
2812
 
2813
                while ( num_to_read <= 0 )
2814
                        { /* Not enough room in the buffer - grow it. */
2815
 
2816
                        /* just a shorter name for the current buffer */
2817
                        YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
2818
 
2819
                        int yy_c_buf_p_offset =
2820
                                (int) ((yy_c_buf_p) - b->yy_ch_buf);
2821
 
2822
                        if ( b->yy_is_our_buffer )
2823
                                {
2824
                                int new_size = b->yy_buf_size * 2;
2825
 
2826
                                if ( new_size <= 0 )
2827
                                        b->yy_buf_size += b->yy_buf_size / 8;
2828
                                else
2829
                                        b->yy_buf_size *= 2;
2830
 
2831
                                b->yy_ch_buf = (char *)
2832
                                        /* Include room in for 2 EOB chars. */
2833
                                        yyrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2  );
2834
                                }
2835
                        else
2836
                                /* Can't grow it, we don't own it. */
2837
                                b->yy_ch_buf = 0;
2838
 
2839
                        if ( ! b->yy_ch_buf )
2840
                                YY_FATAL_ERROR(
2841
                                "fatal error - scanner input buffer overflow" );
2842
 
2843
                        (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
2844
 
2845
                        num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
2846
                                                number_to_move - 1;
2847
 
2848
                        }
2849
 
2850
                if ( num_to_read > YY_READ_BUF_SIZE )
2851
                        num_to_read = YY_READ_BUF_SIZE;
2852
 
2853
                /* Read in more data. */
2854
                YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
2855
                        (yy_n_chars), num_to_read );
2856
 
2857
                YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
2858
                }
2859
 
2860
        if ( (yy_n_chars) == 0 )
2861
                {
2862
                if ( number_to_move == YY_MORE_ADJ )
2863
                        {
2864
                        ret_val = EOB_ACT_END_OF_FILE;
2865
                        yyrestart(yyin  );
2866
                        }
2867
 
2868
                else
2869
                        {
2870
                        ret_val = EOB_ACT_LAST_MATCH;
2871
                        YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
2872
                                YY_BUFFER_EOF_PENDING;
2873
                        }
2874
                }
2875
 
2876
        else
2877
                ret_val = EOB_ACT_CONTINUE_SCAN;
2878
 
2879
        (yy_n_chars) += number_to_move;
2880
        YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
2881
        YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
2882
 
2883
        (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
2884
 
2885
        return ret_val;
2886
}
2887
 
2888
/* yy_get_previous_state - get the state just before the EOB char was reached */
2889
 
2890
    static yy_state_type yy_get_previous_state (void)
2891
{
2892
        register yy_state_type yy_current_state;
2893
        register char *yy_cp;
2894
 
2895
        yy_current_state = (yy_start);
2896
        yy_current_state += YY_AT_BOL();
2897
 
2898
        for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
2899
                {
2900
                register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2901
                if ( yy_accept[yy_current_state] )
2902
                        {
2903
                        (yy_last_accepting_state) = yy_current_state;
2904
                        (yy_last_accepting_cpos) = yy_cp;
2905
                        }
2906
                while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2907
                        {
2908
                        yy_current_state = (int) yy_def[yy_current_state];
2909
                        if ( yy_current_state >= 939 )
2910
                                yy_c = yy_meta[(unsigned int) yy_c];
2911
                        }
2912
                yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2913
                }
2914
 
2915
        return yy_current_state;
2916
}
2917
 
2918
/* yy_try_NUL_trans - try to make a transition on the NUL character
2919
 *
2920
 * synopsis
2921
 *      next_state = yy_try_NUL_trans( current_state );
2922
 */
2923
    static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state )
2924
{
2925
        register int yy_is_jam;
2926
        register char *yy_cp = (yy_c_buf_p);
2927
 
2928
        register YY_CHAR yy_c = 1;
2929
        if ( yy_accept[yy_current_state] )
2930
                {
2931
                (yy_last_accepting_state) = yy_current_state;
2932
                (yy_last_accepting_cpos) = yy_cp;
2933
                }
2934
        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2935
                {
2936
                yy_current_state = (int) yy_def[yy_current_state];
2937
                if ( yy_current_state >= 939 )
2938
                        yy_c = yy_meta[(unsigned int) yy_c];
2939
                }
2940
        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2941
        yy_is_jam = (yy_current_state == 938);
2942
 
2943
        return yy_is_jam ? 0 : yy_current_state;
2944
}
2945
 
2946
#ifndef YY_NO_INPUT
2947
#ifdef __cplusplus
2948
    static int yyinput (void)
2949
#else
2950
    static int input  (void)
2951
#endif
2952
 
2953
{
2954
        int c;
2955
 
2956
        *(yy_c_buf_p) = (yy_hold_char);
2957
 
2958
        if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
2959
                {
2960
                /* yy_c_buf_p now points to the character we want to return.
2961
                 * If this occurs *before* the EOB characters, then it's a
2962
                 * valid NUL; if not, then we've hit the end of the buffer.
2963
                 */
2964
                if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
2965
                        /* This was really a NUL. */
2966
                        *(yy_c_buf_p) = '\0';
2967
 
2968
                else
2969
                        { /* need more input */
2970
                        int offset = (yy_c_buf_p) - (yytext_ptr);
2971
                        ++(yy_c_buf_p);
2972
 
2973
                        switch ( yy_get_next_buffer(  ) )
2974
                                {
2975
                                case EOB_ACT_LAST_MATCH:
2976
                                        /* This happens because yy_g_n_b()
2977
                                         * sees that we've accumulated a
2978
                                         * token and flags that we need to
2979
                                         * try matching the token before
2980
                                         * proceeding.  But for input(),
2981
                                         * there's no matching to consider.
2982
                                         * So convert the EOB_ACT_LAST_MATCH
2983
                                         * to EOB_ACT_END_OF_FILE.
2984
                                         */
2985
 
2986
                                        /* Reset buffer status. */
2987
                                        yyrestart(yyin );
2988
 
2989
                                        /*FALLTHROUGH*/
2990
 
2991
                                case EOB_ACT_END_OF_FILE:
2992
                                        {
2993
                                        if ( yywrap( ) )
2994
                                                return EOF;
2995
 
2996
                                        if ( ! (yy_did_buffer_switch_on_eof) )
2997
                                                YY_NEW_FILE;
2998
#ifdef __cplusplus
2999
                                        return yyinput();
3000
#else
3001
                                        return input();
3002
#endif
3003
                                        }
3004
 
3005
                                case EOB_ACT_CONTINUE_SCAN:
3006
                                        (yy_c_buf_p) = (yytext_ptr) + offset;
3007
                                        break;
3008
                                }
3009
                        }
3010
                }
3011
 
3012
        c = *(unsigned char *) (yy_c_buf_p);    /* cast for 8-bit char's */
3013
        *(yy_c_buf_p) = '\0';   /* preserve yytext */
3014
        (yy_hold_char) = *++(yy_c_buf_p);
3015
 
3016
        YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n');
3017
 
3018
        return c;
3019
}
3020
#endif  /* ifndef YY_NO_INPUT */
3021
 
3022
/** Immediately switch to a different input stream.
3023
 * @param input_file A readable stream.
3024
 *
3025
 * @note This function does not reset the start condition to @c INITIAL .
3026
 */
3027
    void yyrestart  (FILE * input_file )
3028
{
3029
 
3030
        if ( ! YY_CURRENT_BUFFER ){
3031
        yyensure_buffer_stack ();
3032
                YY_CURRENT_BUFFER_LVALUE =
3033
            yy_create_buffer(yyin,YY_BUF_SIZE );
3034
        }
3035
 
3036
        yy_init_buffer(YY_CURRENT_BUFFER,input_file );
3037
        yy_load_buffer_state( );
3038
}
3039
 
3040
/** Switch to a different input buffer.
3041
 * @param new_buffer The new input buffer.
3042
 *
3043
 */
3044
    void yy_switch_to_buffer  (YY_BUFFER_STATE  new_buffer )
3045
{
3046
 
3047
        /* TODO. We should be able to replace this entire function body
3048
         * with
3049
         *              yypop_buffer_state();
3050
         *              yypush_buffer_state(new_buffer);
3051
     */
3052
        yyensure_buffer_stack ();
3053
        if ( YY_CURRENT_BUFFER == new_buffer )
3054
                return;
3055
 
3056
        if ( YY_CURRENT_BUFFER )
3057
                {
3058
                /* Flush out information for old buffer. */
3059
                *(yy_c_buf_p) = (yy_hold_char);
3060
                YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
3061
                YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3062
                }
3063
 
3064
        YY_CURRENT_BUFFER_LVALUE = new_buffer;
3065
        yy_load_buffer_state( );
3066
 
3067
        /* We don't actually know whether we did this switch during
3068
         * EOF (yywrap()) processing, but the only time this flag
3069
         * is looked at is after yywrap() is called, so it's safe
3070
         * to go ahead and always set it.
3071
         */
3072
        (yy_did_buffer_switch_on_eof) = 1;
3073
}
3074
 
3075
static void yy_load_buffer_state  (void)
3076
{
3077
        (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
3078
        (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
3079
        yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
3080
        (yy_hold_char) = *(yy_c_buf_p);
3081
}
3082
 
3083
/** Allocate and initialize an input buffer state.
3084
 * @param file A readable stream.
3085
 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
3086
 *
3087
 * @return the allocated buffer state.
3088
 */
3089
    YY_BUFFER_STATE yy_create_buffer  (FILE * file, int  size )
3090
{
3091
        YY_BUFFER_STATE b;
3092
 
3093
        b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state )  );
3094
        if ( ! b )
3095
                YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
3096
 
3097
        b->yy_buf_size = size;
3098
 
3099
        /* yy_ch_buf has to be 2 characters longer than the size given because
3100
         * we need to put in 2 end-of-buffer characters.
3101
         */
3102
        b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2  );
3103
        if ( ! b->yy_ch_buf )
3104
                YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
3105
 
3106
        b->yy_is_our_buffer = 1;
3107
 
3108
        yy_init_buffer(b,file );
3109
 
3110
        return b;
3111
}
3112
 
3113
/** Destroy the buffer.
3114
 * @param b a buffer created with yy_create_buffer()
3115
 *
3116
 */
3117
    void yy_delete_buffer (YY_BUFFER_STATE  b )
3118
{
3119
 
3120
        if ( ! b )
3121
                return;
3122
 
3123
        if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
3124
                YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
3125
 
3126
        if ( b->yy_is_our_buffer )
3127
                yyfree((void *) b->yy_ch_buf  );
3128
 
3129
        yyfree((void *) b  );
3130
}
3131
 
3132
/* Initializes or reinitializes a buffer.
3133
 * This function is sometimes called more than once on the same buffer,
3134
 * such as during a yyrestart() or at EOF.
3135
 */
3136
    static void yy_init_buffer  (YY_BUFFER_STATE  b, FILE * file )
3137
 
3138
{
3139
        int oerrno = errno;
3140
 
3141
        yy_flush_buffer(b );
3142
 
3143
        b->yy_input_file = file;
3144
        b->yy_fill_buffer = 1;
3145
 
3146
    /* If b is the current buffer, then yy_init_buffer was _probably_
3147
     * called from yyrestart() or through yy_get_next_buffer.
3148
     * In that case, we don't want to reset the lineno or column.
3149
     */
3150
    if (b != YY_CURRENT_BUFFER){
3151
        b->yy_bs_lineno = 1;
3152
        b->yy_bs_column = 0;
3153
    }
3154
 
3155
        b->yy_is_interactive = 0;
3156
 
3157
        errno = oerrno;
3158
}
3159
 
3160
/** Discard all buffered characters. On the next scan, YY_INPUT will be called.
3161
 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
3162
 *
3163
 */
3164
    void yy_flush_buffer (YY_BUFFER_STATE  b )
3165
{
3166
        if ( ! b )
3167
                return;
3168
 
3169
        b->yy_n_chars = 0;
3170
 
3171
        /* We always need two end-of-buffer characters.  The first causes
3172
         * a transition to the end-of-buffer state.  The second causes
3173
         * a jam in that state.
3174
         */
3175
        b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
3176
        b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
3177
 
3178
        b->yy_buf_pos = &b->yy_ch_buf[0];
3179
 
3180
        b->yy_at_bol = 1;
3181
        b->yy_buffer_status = YY_BUFFER_NEW;
3182
 
3183
        if ( b == YY_CURRENT_BUFFER )
3184
                yy_load_buffer_state( );
3185
}
3186
 
3187
/** Pushes the new state onto the stack. The new state becomes
3188
 *  the current state. This function will allocate the stack
3189
 *  if necessary.
3190
 *  @param new_buffer The new state.
3191
 *
3192
 */
3193
void yypush_buffer_state (YY_BUFFER_STATE new_buffer )
3194
{
3195
        if (new_buffer == NULL)
3196
                return;
3197
 
3198
        yyensure_buffer_stack();
3199
 
3200
        /* This block is copied from yy_switch_to_buffer. */
3201
        if ( YY_CURRENT_BUFFER )
3202
                {
3203
                /* Flush out information for old buffer. */
3204
                *(yy_c_buf_p) = (yy_hold_char);
3205
                YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
3206
                YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3207
                }
3208
 
3209
        /* Only push if top exists. Otherwise, replace top. */
3210
        if (YY_CURRENT_BUFFER)
3211
                (yy_buffer_stack_top)++;
3212
        YY_CURRENT_BUFFER_LVALUE = new_buffer;
3213
 
3214
        /* copied from yy_switch_to_buffer. */
3215
        yy_load_buffer_state( );
3216
        (yy_did_buffer_switch_on_eof) = 1;
3217
}
3218
 
3219
/** Removes and deletes the top of the stack, if present.
3220
 *  The next element becomes the new top.
3221
 *
3222
 */
3223
void yypop_buffer_state (void)
3224
{
3225
        if (!YY_CURRENT_BUFFER)
3226
                return;
3227
 
3228
        yy_delete_buffer(YY_CURRENT_BUFFER );
3229
        YY_CURRENT_BUFFER_LVALUE = NULL;
3230
        if ((yy_buffer_stack_top) > 0)
3231
                --(yy_buffer_stack_top);
3232
 
3233
        if (YY_CURRENT_BUFFER) {
3234
                yy_load_buffer_state( );
3235
                (yy_did_buffer_switch_on_eof) = 1;
3236
        }
3237
}
3238
 
3239
/* Allocates the stack if it does not exist.
3240
 *  Guarantees space for at least one push.
3241
 */
3242
static void yyensure_buffer_stack (void)
3243
{
3244
        int num_to_alloc;
3245
 
3246
        if (!(yy_buffer_stack)) {
3247
 
3248
                /* First allocation is just for 2 elements, since we don't know if this
3249
                 * scanner will even need a stack. We use 2 instead of 1 to avoid an
3250
                 * immediate realloc on the next call.
3251
         */
3252
                num_to_alloc = 1;
3253
                (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
3254
                                                                (num_to_alloc * sizeof(struct yy_buffer_state*)
3255
                                                                );
3256
 
3257
                memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
3258
 
3259
                (yy_buffer_stack_max) = num_to_alloc;
3260
                (yy_buffer_stack_top) = 0;
3261
                return;
3262
        }
3263
 
3264
        if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
3265
 
3266
                /* Increase the buffer to prepare for a possible push. */
3267
                int grow_size = 8 /* arbitrary grow size */;
3268
 
3269
                num_to_alloc = (yy_buffer_stack_max) + grow_size;
3270
                (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc
3271
                                                                ((yy_buffer_stack),
3272
                                                                num_to_alloc * sizeof(struct yy_buffer_state*)
3273
                                                                );
3274
 
3275
                /* zero only the new slots.*/
3276
                memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
3277
                (yy_buffer_stack_max) = num_to_alloc;
3278
        }
3279
}
3280
 
3281
/** Setup the input buffer state to scan directly from a user-specified character buffer.
3282
 * @param base the character buffer
3283
 * @param size the size in bytes of the character buffer
3284
 *
3285
 * @return the newly allocated buffer state object.
3286
 */
3287
YY_BUFFER_STATE yy_scan_buffer  (char * base, yy_size_t  size )
3288
{
3289
        YY_BUFFER_STATE b;
3290
 
3291
        if ( size < 2 ||
3292
             base[size-2] != YY_END_OF_BUFFER_CHAR ||
3293
             base[size-1] != YY_END_OF_BUFFER_CHAR )
3294
                /* They forgot to leave room for the EOB's. */
3295
                return 0;
3296
 
3297
        b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state )  );
3298
        if ( ! b )
3299
                YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
3300
 
3301
        b->yy_buf_size = size - 2;      /* "- 2" to take care of EOB's */
3302
        b->yy_buf_pos = b->yy_ch_buf = base;
3303
        b->yy_is_our_buffer = 0;
3304
        b->yy_input_file = 0;
3305
        b->yy_n_chars = b->yy_buf_size;
3306
        b->yy_is_interactive = 0;
3307
        b->yy_at_bol = 1;
3308
        b->yy_fill_buffer = 0;
3309
        b->yy_buffer_status = YY_BUFFER_NEW;
3310
 
3311
        yy_switch_to_buffer(b  );
3312
 
3313
        return b;
3314
}
3315
 
3316
/** Setup the input buffer state to scan a string. The next call to yylex() will
3317
 * scan from a @e copy of @a str.
3318
 * @param str a NUL-terminated string to scan
3319
 *
3320
 * @return the newly allocated buffer state object.
3321
 * @note If you want to scan bytes that may contain NUL values, then use
3322
 *       yy_scan_bytes() instead.
3323
 */
3324
YY_BUFFER_STATE yy_scan_string (yyconst char * str )
3325
{
3326
 
3327
        return yy_scan_bytes(str,strlen(str) );
3328
}
3329
 
3330
/** Setup the input buffer state to scan the given bytes. The next call to yylex() will
3331
 * scan from a @e copy of @a bytes.
3332
 * @param bytes the byte buffer to scan
3333
 * @param len the number of bytes in the buffer pointed to by @a bytes.
3334
 *
3335
 * @return the newly allocated buffer state object.
3336
 */
3337
YY_BUFFER_STATE yy_scan_bytes  (yyconst char * bytes, int  len )
3338
{
3339
        YY_BUFFER_STATE b;
3340
        char *buf;
3341
        yy_size_t n;
3342
        int i;
3343
 
3344
        /* Get memory for full buffer, including space for trailing EOB's. */
3345
        n = len + 2;
3346
        buf = (char *) yyalloc(n  );
3347
        if ( ! buf )
3348
                YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
3349
 
3350
        for ( i = 0; i < len; ++i )
3351
                buf[i] = bytes[i];
3352
 
3353
        buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
3354
 
3355
        b = yy_scan_buffer(buf,n );
3356
        if ( ! b )
3357
                YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
3358
 
3359
        /* It's okay to grow etc. this buffer, and we should throw it
3360
         * away when we're done.
3361
         */
3362
        b->yy_is_our_buffer = 1;
3363
 
3364
        return b;
3365
}
3366
 
3367
#ifndef YY_EXIT_FAILURE
3368
#define YY_EXIT_FAILURE 2
3369
#endif
3370
 
3371
static void yy_fatal_error (yyconst char* msg )
3372
{
3373
        (void) fprintf( stderr, "%s\n", msg );
3374
        exit( YY_EXIT_FAILURE );
3375
}
3376
 
3377
/* Redefine yyless() so it works in section 3 code. */
3378
 
3379
#undef yyless
3380
#define yyless(n) \
3381
        do \
3382
                { \
3383
                /* Undo effects of setting up yytext. */ \
3384
        int yyless_macro_arg = (n); \
3385
        YY_LESS_LINENO(yyless_macro_arg);\
3386
                yytext[yyleng] = (yy_hold_char); \
3387
                (yy_c_buf_p) = yytext + yyless_macro_arg; \
3388
                (yy_hold_char) = *(yy_c_buf_p); \
3389
                *(yy_c_buf_p) = '\0'; \
3390
                yyleng = yyless_macro_arg; \
3391
                } \
3392
        while ( 0 )
3393
 
3394
/* Accessor  methods (get/set functions) to struct members. */
3395
 
3396
/** Get the current line number.
3397
 *
3398
 */
3399
int yyget_lineno  (void)
3400
{
3401
 
3402
    return yylineno;
3403
}
3404
 
3405
/** Get the input stream.
3406
 *
3407
 */
3408
FILE *yyget_in  (void)
3409
{
3410
        return yyin;
3411
}
3412
 
3413
/** Get the output stream.
3414
 *
3415
 */
3416
FILE *yyget_out  (void)
3417
{
3418
        return yyout;
3419
}
3420
 
3421
/** Get the length of the current token.
3422
 *
3423
 */
3424
int yyget_leng  (void)
3425
{
3426
        return yyleng;
3427
}
3428
 
3429
/** Get the current token.
3430
 *
3431
 */
3432
 
3433
char *yyget_text  (void)
3434
{
3435
        return yytext;
3436
}
3437
 
3438
/** Set the current line number.
3439
 * @param line_number
3440
 *
3441
 */
3442
void yyset_lineno (int  line_number )
3443
{
3444
 
3445
    yylineno = line_number;
3446
}
3447
 
3448
/** Set the input stream. This does not discard the current
3449
 * input buffer.
3450
 * @param in_str A readable stream.
3451
 *
3452
 * @see yy_switch_to_buffer
3453
 */
3454
void yyset_in (FILE *  in_str )
3455
{
3456
        yyin = in_str ;
3457
}
3458
 
3459
void yyset_out (FILE *  out_str )
3460
{
3461
        yyout = out_str ;
3462
}
3463
 
3464
int yyget_debug  (void)
3465
{
3466
        return yy_flex_debug;
3467
}
3468
 
3469
void yyset_debug (int  bdebug )
3470
{
3471
        yy_flex_debug = bdebug ;
3472
}
3473
 
3474
/* yylex_destroy is for both reentrant and non-reentrant scanners. */
3475
int yylex_destroy  (void)
3476
{
3477
 
3478
    /* Pop the buffer stack, destroying each element. */
3479
        while(YY_CURRENT_BUFFER){
3480
                yy_delete_buffer(YY_CURRENT_BUFFER  );
3481
                YY_CURRENT_BUFFER_LVALUE = NULL;
3482
                yypop_buffer_state();
3483
        }
3484
 
3485
        /* Destroy the stack itself. */
3486
        yyfree((yy_buffer_stack) );
3487
        (yy_buffer_stack) = NULL;
3488
 
3489
    return 0;
3490
}
3491
 
3492
/*
3493
 * Internal utility routines.
3494
 */
3495
 
3496
#ifndef yytext_ptr
3497
static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
3498
{
3499
        register int i;
3500
        for ( i = 0; i < n; ++i )
3501
                s1[i] = s2[i];
3502
}
3503
#endif
3504
 
3505
#ifdef YY_NEED_STRLEN
3506
static int yy_flex_strlen (yyconst char * s )
3507
{
3508
        register int n;
3509
        for ( n = 0; s[n]; ++n )
3510
                ;
3511
 
3512
        return n;
3513
}
3514
#endif
3515
 
3516
void *yyalloc (yy_size_t  size )
3517
{
3518
        return (void *) malloc( size );
3519
}
3520
 
3521
void *yyrealloc  (void * ptr, yy_size_t  size )
3522
{
3523
        /* The cast to (char *) in the following accommodates both
3524
         * implementations that use char* generic pointers, and those
3525
         * that use void* generic pointers.  It works with the latter
3526
         * because both ANSI C and C++ allow castless assignment from
3527
         * any pointer type to void*, and deal with argument conversions
3528
         * as though doing an assignment.
3529
         */
3530
        return (void *) realloc( (char *) ptr, size );
3531
}
3532
 
3533
void yyfree (void * ptr )
3534
{
3535
        free( (char *) ptr );   /* see yyrealloc() for (char *) cast */
3536
}
3537
 
3538
#define YYTABLES_NAME "yytables"
3539
 
3540
#undef YY_NEW_FILE
3541
#undef YY_FLUSH_BUFFER
3542
#undef yy_set_bol
3543
#undef yy_new_buffer
3544
#undef yy_set_interactive
3545
#undef yytext_ptr
3546
#undef YY_DO_BEFORE_ACTION
3547
 
3548
#ifdef YY_DECL_IS_OURS
3549
#undef YY_DECL_IS_OURS
3550
#undef YY_DECL
3551
#endif
3552
#line 418 "/scratch/mitchell/gcc-releases/gcc-4.1.1/gcc-4.1.1/gcc/gengtype-lex.l"
3553
 
3554
 
3555
 
3556
/* Deal with the expansion caused by the DEF_VEC_x macros.  */
3557
 
3558
/* Mangle a macro and argument list as done by cpp concatenation in
3559
   the compiler proper.  */
3560
static char *
3561
mangle_macro_name (const char *macro, unsigned macro_len,
3562
                   const char *arg, unsigned arg_len)
3563
{
3564
  char *ptr = (char *) xmemdup (macro, macro_len, macro_len + arg_len + 2);
3565
 
3566
  /* Now copy and concatenate each argument */
3567
  while (arg_len)
3568
    {
3569
      ptr[macro_len++] = '_';
3570
      for (; arg_len && (ISALNUM(*arg) || *arg == '_'); arg_len--)
3571
        ptr[macro_len++] = *arg++;
3572
      for (; arg_len && !(ISALNUM(*arg) || *arg == '_'); arg_len--)
3573
        arg++;
3574
    }
3575
  ptr[macro_len] = 0;
3576
 
3577
  return ptr;
3578
}
3579
 
3580
typedef struct macro_def
3581
{
3582
  const char *name;
3583
  const char *expansion;
3584
  const char *additional;
3585
} macro_def_t;
3586
 
3587
typedef struct macro
3588
{
3589
  const macro_def_t *def;
3590
  struct macro *next;
3591
  const char *args[10];
3592
} macro_t;
3593
 
3594
static const macro_def_t macro_defs[] =
3595
{
3596
#define IN_GENGTYPE 1
3597
#include "vec.h"
3598
  {NULL, NULL, NULL}
3599
};
3600
 
3601
/* Chain of macro expansions to do at end of scanning.  */
3602
static macro_t *macro_expns;
3603
static macro_t *macro_expns_end;
3604
 
3605
/* Push macro NAME (NAME_LEN) with argument ARG (ARG_LEN) onto the
3606
   expansion queue.  We ensure NAME is known at this point.  */
3607
 
3608
static const char *
3609
push_macro_expansion (const char *name, unsigned name_len,
3610
                      const char *arg, unsigned arg_len)
3611
{
3612
  unsigned ix;
3613
 
3614
  for (ix = 0; macro_defs[ix].name; ix++)
3615
    if (strlen (macro_defs[ix].name) == name_len
3616
        && !memcmp (name, macro_defs[ix].name, name_len))
3617
      {
3618
        macro_t *expansion = XNEW (macro_t);
3619
        char *args;
3620
        unsigned argno, last_arg;
3621
 
3622
        expansion->def = &macro_defs[ix];
3623
        expansion->next = NULL;
3624
        args = (char *) xmemdup (arg, arg_len, arg_len+1);
3625
        args[arg_len] = 0;
3626
        for (argno = 0; *args;)
3627
          {
3628
            expansion->args[argno++] = args;
3629
            while (*args && (ISALNUM (*args) || *args == '_'))
3630
              args++;
3631
            if (argno == 1)
3632
              expansion->args[argno++] = "base";
3633
            if (!*args)
3634
              break;
3635
            *args++ = 0;
3636
            while (*args && !(ISALNUM (*args) || *args == '_'))
3637
              args++;
3638
          }
3639
        last_arg = argno;
3640
        for (; argno != 10; argno++)
3641
          expansion->args[argno] = NULL;
3642
        if (macro_expns_end)
3643
          macro_expns_end->next = expansion;
3644
        else
3645
          macro_expns = expansion;
3646
        macro_expns_end = expansion;
3647
        if (macro_defs[ix].additional)
3648
          {
3649
            macro_t *expn2 = XNEW (macro_t);
3650
            memcpy (expn2, expansion, sizeof (*expn2));
3651
            expansion = expn2;
3652
            expansion->def += 1;
3653
            expansion->args[last_arg++] = macro_defs[ix].additional;
3654
            macro_expns_end->next = expansion;
3655
            macro_expns_end = expansion;
3656
          }
3657
        if (last_arg > 2 && strcmp (expansion->args[last_arg - 1], "heap"))
3658
          expansion->args[last_arg++] = "GTY (())";
3659
        return macro_defs[ix].additional;
3660
      }
3661
  error_at_line (&lexer_line, "unrecognized macro `%.*s(%.*s)'",
3662
                 name_len, name, arg_len, arg);
3663
  return NULL;
3664
}
3665
 
3666
/* Attempt to read some input.  Use fread until we're at the end of
3667
   file.  At end of file expand the next queued macro.  We presume the
3668
   buffer is large enough for the entire expansion.  */
3669
 
3670
static unsigned
3671
macro_input (char *buffer, unsigned size)
3672
{
3673
  unsigned result;
3674
 
3675
  result = fread (buffer, 1, size, yyin);
3676
  if (result)
3677
    /*NOP*/;
3678
  else if (ferror (yyin))
3679
    YY_FATAL_ERROR ("read of source file failed");
3680
  else if (macro_expns)
3681
    {
3682
      const char *expn;
3683
      unsigned len;
3684
 
3685
      for (expn = macro_expns->def->expansion; *expn; expn++)
3686
        {
3687
          if (*expn == '#')
3688
            {
3689
              int argno;
3690
 
3691
              argno = expn[1] - '0';
3692
              expn += 1;
3693
 
3694
              /* Remove inserted space? */
3695
              if (buffer[result-1] == ' ' && buffer[result-2] == '_')
3696
                result--;
3697
 
3698
              /* Insert the argument value */
3699
              if (macro_expns->args[argno])
3700
                {
3701
                  len = strlen (macro_expns->args[argno]);
3702
                  memcpy (&buffer[result], macro_expns->args[argno], len);
3703
                  result += len;
3704
                }
3705
 
3706
              /* Skip next space? */
3707
              if (expn[1] == ' ' && expn[2] == '_')
3708
                expn++;
3709
            }
3710
          else
3711
            {
3712
              buffer[result++] = *expn;
3713
              if (*expn == ';' || *expn == '{')
3714
                buffer[result++] = '\n';
3715
            }
3716
        }
3717
      if (result > size)
3718
        YY_FATAL_ERROR ("buffer too small to expand macro");
3719
      macro_expns = macro_expns->next;
3720
      if (!macro_expns)
3721
        macro_expns_end = NULL;
3722
    }
3723
  return result;
3724
}
3725
 
3726
void
3727
yyerror (const char *s)
3728
{
3729
  error_at_line (&lexer_line, s);
3730
}
3731
 
3732
void
3733
parse_file (const char *fname)
3734
{
3735
  yyin = fopen (fname, "r");
3736
  lexer_line.file = fname;
3737
  lexer_line.line = 1;
3738
  if (yyin == NULL)
3739
    {
3740
      perror (fname);
3741
      exit (1);
3742
    }
3743
  if (yyparse() != 0)
3744
    exit (1);
3745
  fclose (yyin);
3746
}
3747
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.