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