1 /* A lexical scanner generated by flex */
3 /* Scanner skeleton version:
4 * $Header: /cvs/src/src/ld/Attic/ldlex.c,v 1.1.16.1 2006/04/16 18:36:47 drow Exp $
8 #define YY_FLEX_MAJOR_VERSION 2
9 #define YY_FLEX_MINOR_VERSION 5
14 /* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
29 /* Use prototypes in function declarations. */
32 /* The "const" storage-class-modifier is valid. */
35 #else /* ! __cplusplus */
43 #endif /* ! __cplusplus */
62 #define YY_PROTO(proto) proto
64 #define YY_PROTO(proto) ()
68 /* Returned upon end-of-file. */
71 /* Promotes a possibly negative, possibly signed char to an unsigned
72 * integer for use as an array index. If the signed char is negative,
73 * we want to instead treat it as an 8-bit unsigned char, hence the
76 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
78 /* Enter a start condition. This macro really ought to take a parameter,
79 * but we do it the disgusting crufty way forced on us by the ()-less
80 * definition of BEGIN.
82 #define BEGIN yy_start = 1 + 2 *
84 /* Translate the current start state into a value that can be later handed
85 * to BEGIN to return to the state. The YYSTATE alias is for lex
88 #define YY_START ((yy_start - 1) / 2)
89 #define YYSTATE YY_START
91 /* Action number for EOF rule of a given start state. */
92 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
94 /* Special action meaning "start processing a new file". */
95 #define YY_NEW_FILE yyrestart( yyin )
97 #define YY_END_OF_BUFFER_CHAR 0
99 /* Size of default input buffer. */
100 #define YY_BUF_SIZE 16384
102 typedef struct yy_buffer_state *YY_BUFFER_STATE;
105 extern FILE *yyin, *yyout;
107 #define EOB_ACT_CONTINUE_SCAN 0
108 #define EOB_ACT_END_OF_FILE 1
109 #define EOB_ACT_LAST_MATCH 2
111 /* The funky do-while in the following #define is used to turn the definition
112 * int a single C statement (which needs a semi-colon terminator). This
113 * avoids problems with code like:
115 * if ( condition_holds )
118 * do_something_else();
120 * Prior to using the do-while the compiler would get upset at the
121 * "else" because it interpreted the "if" statement as being all
122 * done when it reached the ';' after the yyless() call.
125 /* Return all but the first 'n' matched characters back to the input stream. */
130 /* Undo effects of setting up yytext. */ \
131 *yy_cp = yy_hold_char; \
132 YY_RESTORE_YY_MORE_OFFSET \
133 yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
134 YY_DO_BEFORE_ACTION; /* set up yytext again */ \
138 #define unput(c) yyunput( c, yytext_ptr )
140 /* The following is because we cannot portably get our hands on size_t
141 * (without autoconf's help, which isn't available because we want
142 * flex-generated scanners to compile on their own).
144 typedef unsigned int yy_size_t;
147 struct yy_buffer_state
151 char *yy_ch_buf; /* input buffer */
152 char *yy_buf_pos; /* current position in input buffer */
154 /* Size of input buffer in bytes, not including room for EOB
157 yy_size_t yy_buf_size;
159 /* Number of characters read into yy_ch_buf, not including EOB
164 /* Whether we "own" the buffer - i.e., we know we created it,
165 * and can realloc() it to grow it, and should free() it to
168 int yy_is_our_buffer;
170 /* Whether this is an "interactive" input source; if so, and
171 * if we're using stdio for input, then we want to use getc()
172 * instead of fread(), to make sure we stop fetching input after
175 int yy_is_interactive;
177 /* Whether we're considered to be at the beginning of a line.
178 * If so, '^' rules will be active on the next match, otherwise
183 /* Whether to try to fill the input buffer when we reach the
188 int yy_buffer_status;
189 #define YY_BUFFER_NEW 0
190 #define YY_BUFFER_NORMAL 1
191 /* When an EOF's been seen but there's still some text to process
192 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
193 * shouldn't try reading from the input source any more. We might
194 * still have a bunch of tokens to match, though, because of
195 * possible backing-up.
197 * When we actually see the EOF, we change the status to "new"
198 * (via yyrestart()), so that the user can continue scanning by
199 * just pointing yyin at a new input file.
201 #define YY_BUFFER_EOF_PENDING 2
204 static YY_BUFFER_STATE yy_current_buffer = 0;
206 /* We provide macros for accessing buffer states in case in the
207 * future we want to put the buffer states in a more general
210 #define YY_CURRENT_BUFFER yy_current_buffer
213 /* yy_hold_char holds the character lost when yytext is formed. */
214 static char yy_hold_char;
216 static int yy_n_chars; /* number of characters read into yy_ch_buf */
221 /* Points to current character in buffer. */
222 static char *yy_c_buf_p = (char *) 0;
223 static int yy_init = 1; /* whether we need to initialize */
224 static int yy_start = 0; /* start state number */
226 /* Flag which is used to allow yywrap()'s to do buffer switches
227 * instead of setting up a fresh yyin. A bit of a hack ...
229 static int yy_did_buffer_switch_on_eof;
231 void yyrestart YY_PROTO(( FILE *input_file ));
233 void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
234 void yy_load_buffer_state YY_PROTO(( void ));
235 YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
236 void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
237 void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
238 void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));
239 #define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
241 YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
242 YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
243 YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
245 static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
246 static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));
247 static void yy_flex_free YY_PROTO(( void * ));
249 #define yy_new_buffer yy_create_buffer
251 #define yy_set_interactive(is_interactive) \
253 if ( ! yy_current_buffer ) \
254 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
255 yy_current_buffer->yy_is_interactive = is_interactive; \
258 #define yy_set_bol(at_bol) \
260 if ( ! yy_current_buffer ) \
261 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
262 yy_current_buffer->yy_at_bol = at_bol; \
265 #define YY_AT_BOL() (yy_current_buffer->yy_at_bol)
267 typedef unsigned char YY_CHAR;
268 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
269 typedef int yy_state_type;
271 #define yytext_ptr yytext
273 static yy_state_type yy_get_previous_state YY_PROTO(( void ));
274 static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
275 static int yy_get_next_buffer YY_PROTO(( void ));
276 static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
278 /* Done after the current pattern has been matched and before the
279 * corresponding action - sets up yytext.
281 #define YY_DO_BEFORE_ACTION \
282 yytext_ptr = yy_bp; \
283 yyleng = (int) (yy_cp - yy_bp); \
284 yy_hold_char = *yy_cp; \
288 #define YY_NUM_RULES 182
289 #define YY_END_OF_BUFFER 183
290 static yyconst short int yy_accept[1301] =
292 0, 0, 162, 162, 0, 0, 0, 0, 0, 0,
293 0, 0, 0, 0, 0, 0, 0, 0, 183, 182,
294 180, 165, 164, 32, 180, 162, 38, 29, 44, 43,
295 34, 35, 28, 36, 162, 37, 8, 8, 45, 46,
296 39, 40, 27, 33, 162, 162, 162, 162, 162, 162,
297 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
298 162, 162, 162, 10, 9, 162, 110, 108, 162, 42,
299 30, 41, 31, 181, 165, 32, 181, 160, 38, 29,
300 44, 43, 34, 35, 28, 36, 160, 37, 8, 8,
301 45, 46, 39, 40, 27, 33, 160, 160, 160, 160,
303 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
304 160, 10, 9, 160, 160, 42, 30, 41, 31, 160,
305 8, 8, 160, 160, 160, 160, 160, 160, 160, 160,
306 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
307 110, 108, 4, 3, 2, 4, 5, 121, 120, 159,
308 34, 35, 28, 36, 159, 37, 8, 8, 45, 46,
309 40, 33, 159, 159, 159, 159, 159, 159, 159, 159,
310 159, 159, 159, 159, 10, 9, 159, 159, 159, 159,
311 159, 159, 159, 159, 159, 159, 159, 31, 179, 177,
312 178, 180, 172, 171, 166, 173, 174, 170, 170, 170,
314 170, 175, 176, 165, 15, 0, 163, 162, 8, 26,
315 24, 22, 20, 21, 1, 23, 8, 8, 162, 18,
316 17, 14, 16, 19, 162, 162, 162, 162, 114, 162,
317 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
318 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
319 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
320 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
321 162, 162, 162, 162, 25, 13, 160, 6, 22, 20,
322 21, 0, 1, 23, 8, 0, 7, 7, 8, 7,
323 14, 160, 7, 7, 7, 160, 160, 114, 7, 160,
325 160, 7, 160, 160, 160, 7, 160, 160, 160, 160,
326 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
327 160, 160, 160, 7, 160, 8, 8, 0, 160, 160,
328 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
329 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
330 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
331 160, 4, 4, 120, 120, 159, 6, 122, 22, 23,
332 123, 159, 7, 7, 7, 159, 159, 159, 7, 159,
333 7, 7, 159, 159, 159, 159, 159, 159, 159, 159,
334 7, 159, 159, 159, 7, 159, 7, 7, 159, 159,
336 159, 159, 159, 159, 159, 159, 179, 178, 171, 170,
337 0, 170, 170, 170, 11, 12, 162, 162, 162, 162,
338 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
339 162, 162, 162, 162, 162, 162, 86, 162, 162, 162,
340 162, 162, 162, 162, 162, 68, 162, 162, 162, 162,
341 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
342 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
343 162, 162, 111, 109, 162, 8, 161, 8, 160, 7,
344 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
345 160, 160, 160, 160, 160, 59, 60, 160, 160, 160,
347 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
348 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
349 86, 160, 160, 160, 160, 68, 160, 160, 160, 160,
350 160, 160, 160, 160, 160, 160, 160, 160, 160, 160,
351 160, 111, 109, 4, 8, 159, 159, 159, 159, 159,
352 124, 159, 159, 159, 159, 159, 159, 159, 159, 159,
353 159, 159, 159, 159, 159, 159, 141, 159, 159, 159,
354 159, 159, 159, 159, 159, 159, 159, 170, 170, 170,
355 162, 57, 162, 162, 51, 162, 93, 162, 102, 162,
356 162, 162, 162, 162, 162, 162, 82, 162, 162, 162,
358 162, 103, 162, 162, 118, 162, 162, 91, 162, 64,
359 162, 162, 162, 162, 162, 162, 162, 162, 162, 89,
360 162, 162, 162, 162, 162, 99, 162, 162, 162, 162,
361 162, 162, 162, 162, 162, 160, 57, 160, 160, 160,
362 51, 160, 102, 160, 160, 160, 160, 160, 103, 118,
363 160, 160, 64, 160, 160, 160, 160, 160, 160, 160,
364 160, 160, 160, 160, 160, 93, 160, 160, 160, 160,
365 82, 160, 160, 160, 160, 160, 91, 160, 160, 160,
366 160, 160, 89, 160, 160, 160, 99, 160, 160, 160,
367 160, 160, 159, 159, 159, 128, 136, 127, 159, 159,
369 138, 131, 134, 159, 159, 139, 159, 159, 159, 159,
370 159, 145, 153, 144, 159, 159, 156, 148, 151, 159,
371 159, 157, 159, 159, 170, 170, 170, 162, 53, 162,
372 50, 162, 162, 162, 162, 101, 62, 162, 162, 88,
373 162, 74, 162, 162, 73, 162, 162, 162, 162, 162,
374 162, 162, 162, 162, 162, 113, 162, 162, 162, 162,
375 92, 162, 162, 162, 90, 162, 162, 162, 162, 162,
376 162, 162, 160, 53, 160, 160, 50, 160, 160, 101,
377 160, 74, 160, 160, 160, 160, 160, 160, 160, 160,
378 160, 160, 160, 160, 160, 160, 160, 160, 62, 160,
380 88, 160, 160, 160, 73, 160, 160, 160, 160, 113,
381 160, 160, 92, 160, 90, 160, 160, 160, 160, 159,
382 129, 126, 159, 159, 138, 138, 133, 159, 137, 159,
383 159, 146, 143, 159, 159, 156, 156, 150, 159, 155,
384 159, 170, 170, 168, 162, 162, 162, 162, 162, 162,
385 162, 63, 162, 162, 162, 52, 162, 47, 162, 162,
386 100, 162, 48, 72, 162, 162, 162, 162, 162, 69,
387 162, 162, 162, 162, 87, 70, 162, 162, 162, 160,
388 61, 160, 160, 160, 160, 52, 160, 160, 100, 160,
389 48, 160, 160, 160, 69, 160, 160, 160, 160, 160,
391 160, 63, 160, 160, 160, 47, 160, 72, 160, 160,
392 160, 160, 160, 87, 70, 160, 159, 159, 63, 135,
393 132, 159, 159, 159, 154, 152, 149, 159, 169, 167,
394 162, 162, 162, 162, 162, 76, 162, 162, 112, 162,
395 162, 162, 94, 162, 162, 96, 116, 162, 162, 162,
396 162, 162, 107, 83, 162, 49, 162, 162, 160, 160,
397 160, 76, 160, 160, 160, 160, 104, 116, 160, 160,
398 107, 160, 160, 160, 160, 160, 160, 112, 160, 94,
399 160, 96, 160, 160, 160, 83, 49, 159, 159, 159,
400 159, 159, 159, 140, 162, 162, 162, 162, 162, 162,
402 162, 58, 162, 162, 162, 162, 162, 162, 81, 162,
403 162, 162, 115, 158, 162, 140, 160, 160, 160, 58,
404 160, 160, 160, 160, 160, 115, 158, 160, 160, 160,
405 160, 160, 160, 160, 160, 81, 160, 140, 125, 130,
406 158, 142, 147, 75, 162, 162, 162, 162, 162, 162,
407 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
408 162, 75, 160, 160, 160, 160, 160, 160, 160, 160,
409 160, 160, 160, 160, 160, 160, 160, 160, 160, 162,
410 162, 162, 162, 162, 162, 162, 105, 106, 162, 162,
411 162, 71, 162, 162, 162, 162, 162, 160, 160, 160,
413 105, 106, 160, 160, 160, 160, 160, 160, 160, 160,
414 160, 160, 71, 160, 160, 162, 162, 162, 162, 162,
415 162, 95, 85, 162, 162, 162, 162, 162, 162, 162,
416 160, 160, 95, 160, 160, 160, 160, 160, 160, 160,
417 160, 85, 160, 160, 160, 78, 162, 162, 119, 162,
418 162, 162, 162, 162, 162, 162, 97, 162, 160, 119,
419 160, 160, 160, 160, 78, 160, 160, 160, 160, 160,
420 97, 162, 162, 162, 162, 84, 162, 67, 162, 162,
421 162, 160, 160, 67, 160, 160, 160, 160, 160, 84,
422 160, 162, 162, 162, 162, 162, 162, 117, 66, 162,
424 65, 160, 160, 160, 117, 66, 65, 160, 160, 160,
425 160, 162, 162, 162, 162, 162, 162, 162, 160, 160,
426 160, 160, 160, 160, 160, 162, 162, 56, 162, 162,
427 162, 162, 160, 56, 160, 160, 160, 160, 160, 162,
428 162, 162, 162, 162, 98, 160, 160, 160, 160, 160,
429 98, 162, 54, 162, 162, 162, 54, 160, 160, 160,
430 160, 162, 162, 162, 162, 160, 160, 160, 160, 162,
431 162, 162, 162, 160, 160, 160, 160, 77, 162, 162,
432 162, 160, 77, 160, 160, 55, 162, 162, 55, 160,
433 160, 79, 162, 79, 160, 162, 160, 80, 80, 0
437 static yyconst int yy_ec[256] =
439 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
440 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
441 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
442 1, 2, 4, 5, 6, 7, 8, 9, 1, 10,
443 11, 12, 13, 14, 15, 16, 17, 18, 19, 19,
444 19, 19, 19, 19, 19, 19, 19, 20, 21, 22,
445 23, 24, 25, 1, 26, 27, 28, 29, 30, 31,
446 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
447 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
448 52, 53, 54, 55, 56, 1, 57, 58, 59, 60,
450 61, 62, 63, 64, 65, 16, 66, 67, 68, 69,
451 70, 71, 16, 72, 73, 74, 75, 16, 16, 76,
452 16, 77, 78, 79, 80, 81, 1, 1, 1, 1,
453 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
454 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
455 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
456 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
457 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
458 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
459 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
461 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
462 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
463 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
464 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
465 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
469 static yyconst int yy_meta[82] =
471 1, 1, 2, 3, 1, 1, 4, 1, 1, 1,
472 1, 5, 6, 7, 8, 9, 10, 11, 11, 8,
473 1, 1, 7, 1, 5, 11, 11, 11, 11, 11,
474 11, 9, 9, 9, 9, 9, 9, 9, 9, 9,
475 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
476 9, 8, 4, 8, 3, 9, 11, 11, 11, 11,
477 11, 11, 9, 9, 9, 9, 9, 9, 9, 9,
478 9, 9, 9, 9, 9, 9, 9, 1, 1, 1,
482 static yyconst short int yy_base[1323] =
484 0, 0, 0, 0, 81, 0, 156, 0, 226, 306,
485 386, 0, 164, 174, 467, 548, 629, 710, 2217, 2218,
486 2218, 2214, 2218, 2192, 2209, 774, 2218, 155, 2218, 2218,
487 2190, 2189, 0, 2188, 0, 156, 304, 235, 0, 2218,
488 149, 2187, 181, 0, 230, 172, 159, 181, 171, 221,
489 2166, 2171, 2168, 2176, 226, 139, 230, 240, 229, 2159,
490 304, 2178, 2173, 0, 0, 2144, 2140, 2128, 2134, 2218,
491 185, 2218, 0, 2218, 2196, 2174, 2191, 819, 2218, 254,
492 2218, 2218, 2172, 2171, 2218, 198, 0, 270, 864, 143,
493 2218, 2218, 246, 2170, 261, 2218, 923, 330, 466, 470,
495 489, 498, 2149, 2152, 2160, 258, 263, 260, 252, 2146,
496 302, 2218, 2218, 547, 2123, 2218, 273, 2218, 0, 982,
497 638, 717, 550, 328, 323, 325, 253, 339, 2150, 2147,
498 341, 468, 483, 462, 496, 2139, 574, 2158, 2153, 2124,
499 2120, 2108, 1027, 2218, 2218, 0, 2218, 2218, 2176, 1072,
500 2155, 2154, 2218, 2153, 0, 2152, 0, 292, 2218, 0,
501 2151, 2218, 1117, 504, 556, 548, 572, 585, 299, 2147,
502 2129, 2125, 143, 2127, 2218, 2218, 596, 553, 618, 668,
503 631, 312, 2112, 2096, 2092, 443, 2094, 0, 2163, 2218,
504 0, 2152, 2218, 0, 2218, 2218, 2218, 2143, 512, 577,
506 454, 2218, 2218, 2160, 2218, 2156, 2218, 0, 1176, 2218,
507 2218, 0, 0, 0, 0, 0, 728, 0, 623, 2137,
508 2218, 0, 2218, 2136, 2114, 2128, 2122, 2099, 0, 2115,
509 2113, 2107, 557, 2121, 2105, 2118, 2118, 2102, 536, 2109,
510 2105, 2101, 2103, 2105, 636, 2111, 2101, 634, 2098, 2100,
511 2088, 634, 2099, 2101, 2089, 2103, 2103, 2091, 2104, 652,
512 2089, 2077, 2084, 2096, 2079, 2098, 2096, 2078, 2078, 2077,
513 2046, 2049, 2054, 2039, 2218, 2218, 0, 1227, 2218, 2218,
514 2218, 0, 2218, 0, 307, 731, 0, 2218, 2218, 0,
515 2218, 714, 779, 782, 0, 2081, 168, 0, 785, 2075,
517 2073, 2071, 814, 825, 2081, 2082, 2069, 2077, 2077, 2067,
518 2079, 2055, 2064, 2053, 500, 2064, 2066, 2069, 2058, 2065,
519 2045, 2065, 2067, 828, 2016, 634, 848, 0, 2048, 2062,
520 2045, 640, 2059, 2043, 2056, 2041, 638, 2048, 2044, 2040,
521 2045, 729, 659, 495, 2043, 666, 2035, 2049, 2049, 2051,
522 746, 2036, 2032, 2028, 2047, 2028, 2028, 2027, 1996, 1999,
523 2004, 0, 1278, 2063, 2218, 0, 1329, 0, 0, 2218,
524 0, 711, 738, 715, 0, 2031, 861, 862, 2030, 2034,
525 2017, 2018, 2016, 2033, 2020, 2028, 2029, 2027, 2028, 2007,
526 788, 1987, 791, 882, 1986, 1990, 1975, 1976, 1974, 1989,
528 1977, 1984, 1985, 1983, 1984, 1965, 2037, 0, 0, 2018,
529 2017, 666, 566, 558, 2218, 2218, 1996, 1992, 2002, 1994,
530 2003, 2003, 2000, 1985, 1978, 2001, 2000, 1991, 1996, 1980,
531 1985, 1991, 1983, 1993, 1990, 1971, 0, 1979, 1975, 1980,
532 1967, 1971, 1979, 1981, 1977, 0, 1968, 1962, 1963, 1968,
533 1964, 1953, 1970, 1960, 1957, 1956, 1951, 1968, 1953, 1950,
534 1956, 1950, 1962, 1946, 1962, 1963, 1945, 1961, 1949, 1953,
535 1940, 1913, 0, 0, 1921, 0, 0, 718, 1941, 900,
536 1948, 1949, 1939, 1948, 1948, 1925, 1948, 932, 1945, 1935,
537 1925, 1930, 1928, 1936, 1938, 0, 0, 1921, 1922, 1924,
539 1913, 1930, 1918, 1913, 1921, 1928, 1929, 1930, 1885, 1893,
540 1910, 1922, 1907, 1924, 1915, 1905, 1917, 1909, 1919, 1916,
541 0, 1906, 1908, 1895, 1908, 0, 1899, 1901, 1896, 1893,
542 1892, 1905, 1890, 1887, 1888, 1885, 1903, 1885, 1890, 1894,
543 1881, 0, 0, 0, 0, 1884, 667, 1884, 1873, 1851,
544 0, 1851, 1835, 1825, 1838, 1836, 1831, 1813, 1794, 1785,
545 1783, 1750, 682, 1743, 1742, 1731, 0, 1740, 1725, 1640,
546 1653, 1651, 1650, 1643, 1635, 1636, 1638, 274, 668, 741,
547 1669, 0, 1666, 1674, 0, 1667, 0, 1657, 0, 1656,
548 1644, 1660, 1653, 1647, 1650, 1652, 0, 1649, 1663, 1650,
550 1644, 0, 1662, 1643, 0, 1642, 1660, 0, 1642, 0,
551 1644, 1643, 1656, 1625, 1646, 1633, 1641, 1633, 1642, 0,
552 1647, 1640, 1643, 1627, 1631, 1614, 1635, 1639, 1622, 1629,
553 1631, 1634, 1629, 1590, 1586, 1618, 0, 1615, 1610, 1622,
554 0, 1614, 0, 1588, 1601, 1589, 1587, 1591, 0, 0,
555 1586, 1604, 0, 1589, 1602, 1571, 1592, 1588, 1590, 1593,
556 1582, 1587, 1583, 1552, 1548, 0, 1572, 1571, 1565, 1571,
557 0, 1568, 1581, 1564, 1582, 1563, 0, 1564, 1566, 1559,
558 1567, 1559, 0, 1574, 1567, 1555, 1543, 1569, 1552, 1562,
559 1565, 1560, 1556, 1548, 1552, 0, 0, 0, 1547, 1563,
561 1397, 0, 0, 1545, 1553, 0, 1541, 1557, 1517, 1510,
562 1508, 0, 0, 0, 1504, 1518, 1477, 0, 0, 1502,
563 1508, 0, 1498, 1511, 748, 756, 743, 1518, 0, 1530,
564 0, 1511, 1523, 1508, 1521, 0, 0, 1521, 1510, 0,
565 1492, 0, 1518, 1512, 0, 1512, 1515, 1493, 1498, 1515,
566 1511, 1505, 1499, 1492, 1510, 0, 1506, 1501, 1493, 1492,
567 0, 1499, 1502, 1502, 0, 1481, 1492, 1498, 1479, 1483,
568 1447, 1459, 1474, 0, 1474, 1488, 0, 1473, 1486, 0,
569 1486, 0, 1481, 1484, 1468, 1482, 1476, 1470, 1482, 1478,
570 1467, 1474, 1478, 1469, 1422, 1434, 1452, 1464, 0, 1454,
572 0, 1436, 1461, 1450, 0, 1430, 1448, 1428, 1446, 0,
573 1438, 1430, 0, 1442, 0, 197, 249, 302, 443, 466,
574 0, 502, 516, 561, 0, 1557, 0, 585, 0, 592,
575 566, 0, 649, 653, 651, 0, 1637, 0, 720, 0,
576 724, 775, 801, 767, 772, 810, 794, 786, 823, 831,
577 833, 0, 843, 844, 830, 0, 856, 0, 843, 851,
578 0, 872, 0, 851, 858, 880, 855, 873, 870, 861,
579 868, 883, 890, 901, 0, 0, 896, 862, 882, 894,
580 0, 917, 917, 919, 927, 0, 929, 918, 0, 933,
581 0, 915, 940, 926, 917, 937, 943, 904, 923, 940,
583 932, 0, 961, 960, 946, 0, 947, 938, 945, 940,
584 958, 948, 961, 0, 0, 964, 959, 965, 0, 0,
585 0, 961, 933, 944, 0, 0, 0, 941, 996, 997,
586 988, 989, 992, 981, 990, 0, 967, 984, 0, 969,
587 983, 984, 0, 972, 1003, 0, 974, 1002, 988, 977,
588 1002, 980, 0, 0, 998, 0, 977, 983, 1018, 1019,
589 1018, 0, 995, 1009, 1016, 1004, 0, 1005, 1006, 1030,
590 0, 1025, 1004, 1002, 1039, 1028, 1029, 0, 1014, 0,
591 1045, 0, 1043, 1029, 1018, 0, 0, 1045, 1048, 1048,
592 1018, 1020, 1020, 0, 1053, 1038, 1065, 1055, 1063, 1057,
594 1068, 0, 1067, 1061, 1062, 1066, 1074, 1074, 0, 1065,
595 1080, 1085, 0, 0, 1051, 0, 1084, 1076, 1084, 0,
596 1086, 1074, 1085, 1075, 1090, 0, 0, 1060, 1077, 1096,
597 1087, 1098, 1084, 1088, 1103, 0, 1112, 0, 0, 0,
598 0, 0, 0, 0, 1099, 1105, 1111, 1108, 1111, 1112,
599 1122, 1115, 1128, 1115, 1125, 1117, 1116, 1136, 1127, 1139,
600 1110, 0, 1138, 1135, 1139, 1132, 1137, 1128, 1156, 1126,
601 1144, 1150, 1148, 1148, 1161, 1147, 1148, 1155, 1170, 1154,
602 1168, 1160, 1163, 1161, 1170, 1165, 0, 0, 1177, 1173,
603 1184, 0, 1189, 1187, 1183, 1180, 1159, 1181, 1184, 1178,
605 0, 0, 1194, 1198, 1196, 1166, 1184, 1198, 1189, 1192,
606 1198, 1194, 0, 1205, 1202, 1197, 1215, 1202, 1218, 1210,
607 1212, 0, 0, 1225, 1223, 1216, 1230, 1229, 1232, 1203,
608 1221, 1237, 0, 1239, 1226, 1240, 1210, 1228, 1245, 1235,
609 1237, 0, 1250, 1245, 1248, 0, 1234, 1224, 0, 1225,
610 1242, 1238, 1260, 1246, 1249, 1255, 0, 1226, 1243, 0,
611 1270, 1256, 1259, 1231, 0, 1265, 1255, 1272, 1268, 1276,
612 0, 1261, 1298, 1292, 1280, 0, 1281, 0, 1277, 1284,
613 1250, 1299, 1287, 0, 1283, 1257, 1275, 1306, 1294, 0,
614 1296, 1299, 1308, 1310, 1320, 1314, 1296, 0, 0, 1323,
616 0, 1317, 1322, 1332, 0, 0, 0, 1319, 1327, 1310,
617 1338, 1319, 1336, 1342, 1335, 1336, 1348, 1336, 1342, 1348,
618 1341, 1329, 1343, 1355, 1343, 1345, 1352, 0, 1342, 1352,
619 1356, 1349, 1364, 0, 1357, 1366, 1370, 1375, 1368, 1387,
620 1376, 1376, 1389, 1386, 0, 1385, 1385, 1399, 1399, 1391,
621 0, 1389, 0, 1374, 1405, 1392, 0, 1377, 1394, 1409,
622 1396, 1400, 1408, 1394, 1412, 1411, 1405, 1398, 1416, 1401,
623 1407, 1413, 1422, 1410, 1406, 1417, 1427, 0, 1425, 1415,
624 1411, 1428, 0, 1418, 1414, 0, 1421, 1427, 0, 1423,
625 1429, 0, 1424, 0, 1425, 1427, 1428, 0, 0, 2218,
627 1717, 1728, 1739, 1750, 1761, 1772, 1780, 1788, 1796, 1807,
628 1815, 1826, 1837, 1848, 1851, 1860, 1868, 1457, 1879, 1890,
632 static yyconst short int yy_def[1323] =
634 1301, 1301, 1300, 3, 1300, 5, 5, 7, 1302, 1302,
635 1300, 11, 1303, 1303, 1304, 1304, 1305, 1305, 1300, 1300,
636 1300, 1300, 1300, 1300, 1306, 1307, 1300, 1300, 1300, 1300,
637 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1300,
638 1300, 1307, 1300, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
639 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
640 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1300,
641 1300, 1300, 1307, 1300, 1300, 1300, 1306, 1308, 1300, 1300,
642 1300, 1300, 1300, 1300, 1300, 1300, 1308, 1308, 1300, 89,
643 1300, 1300, 1300, 1300, 1300, 1300, 1308, 97, 97, 97,
645 97, 97, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
646 1308, 1300, 1300, 97, 1308, 1300, 1300, 1300, 1308, 1308,
647 1300, 1300, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
648 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
649 1308, 1308, 1309, 1300, 1300, 1309, 1300, 1300, 1310, 1311,
650 1312, 1300, 1300, 1300, 1311, 1311, 89, 89, 1300, 1313,
651 1300, 1300, 1311, 163, 163, 163, 163, 163, 1311, 1311,
652 1311, 1311, 1311, 1311, 1300, 1300, 163, 163, 163, 163,
653 163, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1300, 1300,
654 1314, 1300, 1300, 1315, 1300, 1300, 1300, 1316, 1316, 1316,
656 1316, 1300, 1300, 1300, 1300, 1306, 1300, 1307, 1307, 1300,
657 1300, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 209, 1300,
658 1300, 1307, 1300, 1300, 1307, 1307, 1307, 1307, 1307, 1307,
659 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
660 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
661 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
662 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
663 1307, 1307, 1307, 1307, 1300, 1300, 1308, 1308, 1300, 1300,
664 1300, 1317, 1300, 1308, 89, 89, 286, 1300, 1300, 1318,
665 1300, 97, 97, 97, 1308, 1308, 1308, 1308, 97, 1308,
667 1308, 1308, 97, 97, 1308, 1308, 1308, 1308, 1308, 1308,
668 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
669 1308, 1308, 1308, 97, 1308, 120, 1300, 1318, 1308, 1308,
670 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
671 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
672 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
673 1308, 1309, 1309, 1310, 1300, 1311, 1311, 1312, 1312, 1300,
674 1313, 163, 163, 163, 1311, 1311, 163, 163, 1311, 1311,
675 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311,
676 163, 1311, 163, 163, 1311, 1311, 1311, 1311, 1311, 1311,
678 1311, 1311, 1311, 1311, 1311, 1311, 1300, 1314, 1315, 1316,
679 1300, 1316, 1316, 1316, 1300, 1300, 1307, 1307, 1307, 1307,
680 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
681 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
682 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
683 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
684 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
685 1307, 1307, 1307, 1307, 1307, 1308, 1317, 1318, 1308, 97,
686 1308, 1308, 1308, 1308, 1308, 1308, 1308, 97, 1308, 1308,
687 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
689 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
690 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
691 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
692 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
693 1308, 1308, 1308, 1309, 1311, 1311, 1311, 1311, 1311, 1311,
694 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311,
695 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311,
696 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1316, 1316, 1316,
697 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
698 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
700 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
701 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
702 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
703 1307, 1307, 1307, 1307, 1307, 1308, 1308, 1308, 1308, 1308,
704 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
705 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
706 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
707 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
708 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
709 1308, 1308, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311,
711 1319, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311,
712 1311, 1311, 1311, 1311, 1311, 1311, 1320, 1311, 1311, 1311,
713 1311, 1311, 1311, 1311, 1316, 1316, 1316, 1307, 1307, 1307,
714 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
715 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
716 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
717 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
718 1307, 1307, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
719 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
720 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
722 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
723 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1311,
724 1311, 1311, 1311, 1311, 1321, 1319, 1311, 1311, 1311, 1311,
725 1311, 1311, 1311, 1311, 1311, 1322, 1320, 1311, 1311, 1311,
726 1311, 1316, 1316, 1316, 1307, 1307, 1307, 1307, 1307, 1307,
727 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
728 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
729 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1308,
730 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
731 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
733 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
734 1308, 1308, 1308, 1308, 1308, 1308, 1311, 1311, 1311, 1311,
735 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1311, 1316, 1316,
736 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
737 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
738 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1308, 1308,
739 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
740 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
741 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1311, 1311, 1311,
742 1311, 1311, 1311, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
744 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
745 1307, 1307, 1307, 1307, 1307, 1308, 1308, 1308, 1308, 1308,
746 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
747 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1311, 1311, 1311,
748 1311, 1311, 1311, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
749 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
750 1307, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
751 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1307,
752 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
753 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1308, 1308, 1308,
755 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
756 1308, 1308, 1308, 1308, 1308, 1307, 1307, 1307, 1307, 1307,
757 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
758 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
759 1308, 1308, 1308, 1308, 1308, 1307, 1307, 1307, 1307, 1307,
760 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1308, 1308,
761 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
762 1308, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
763 1307, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
764 1308, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
766 1307, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1308,
767 1308, 1307, 1307, 1307, 1307, 1307, 1307, 1307, 1308, 1308,
768 1308, 1308, 1308, 1308, 1308, 1307, 1307, 1307, 1307, 1307,
769 1307, 1307, 1308, 1308, 1308, 1308, 1308, 1308, 1308, 1307,
770 1307, 1307, 1307, 1307, 1307, 1308, 1308, 1308, 1308, 1308,
771 1308, 1307, 1307, 1307, 1307, 1307, 1308, 1308, 1308, 1308,
772 1308, 1307, 1307, 1307, 1307, 1308, 1308, 1308, 1308, 1307,
773 1307, 1307, 1307, 1308, 1308, 1308, 1308, 1307, 1307, 1307,
774 1307, 1308, 1308, 1308, 1308, 1307, 1307, 1307, 1308, 1308,
775 1308, 1307, 1307, 1308, 1308, 1307, 1308, 1307, 1308, 0,
777 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
778 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
782 static yyconst short int yy_nxt[2300] =
784 21, 22, 23, 24, 25, 21, 26, 27, 28, 29,
785 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
786 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
787 50, 51, 52, 53, 35, 54, 55, 56, 57, 58,
788 59, 60, 35, 61, 62, 35, 63, 35, 35, 35,
789 35, 64, 35, 65, 21, 35, 66, 35, 35, 35,
790 35, 35, 35, 35, 35, 35, 67, 35, 35, 68,
791 35, 35, 69, 35, 35, 35, 35, 70, 71, 72,
792 73, 74, 75, 23, 76, 77, 74, 78, 79, 80,
793 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
795 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
796 101, 102, 103, 87, 104, 87, 105, 106, 107, 108,
797 109, 110, 87, 87, 111, 87, 87, 87, 87, 87,
798 87, 87, 112, 87, 113, 74, 87, 114, 102, 102,
799 102, 102, 102, 87, 87, 87, 87, 87, 87, 87,
800 87, 87, 87, 115, 87, 87, 87, 87, 116, 117,
801 118, 119, 120, 210, 249, 189, 190, 215, 250, 191,
802 220, 221, 388, 121, 122, 189, 190, 211, 216, 191,
803 192, 123, 124, 125, 126, 127, 128, 389, 129, 130,
804 192, 288, 131, 132, 133, 134, 135, 136, 233, 137,
806 138, 234, 139, 223, 224, 230, 235, 275, 231, 238,
807 236, 482, 140, 87, 87, 87, 87, 87, 288, 239,
808 281, 232, 141, 483, 237, 142, 74, 74, 20, 74,
809 74, 74, 143, 74, 74, 74, 74, 74, 144, 74,
810 145, 193, 913, 121, 122, 74, 74, 74, 147, 74,
811 74, 193, 217, 217, 240, 247, 225, 241, 226, 251,
812 242, 257, 210, 276, 282, 248, 227, 220, 221, 252,
813 218, 258, 218, 228, 229, 914, 211, 74, 253, 74,
814 74, 283, 254, 223, 224, 255, 256, 310, 312, 314,
815 316, 336, 284, 411, 317, 275, 313, 311, 318, 315,
817 218, 337, 218, 74, 74, 74, 74, 74, 20, 74,
818 74, 74, 143, 74, 74, 74, 74, 74, 144, 74,
819 145, 217, 217, 121, 122, 74, 74, 74, 147, 74,
820 74, 320, 383, 260, 725, 321, 261, 262, 384, 218,
821 288, 218, 322, 263, 264, 265, 915, 323, 266, 267,
822 334, 276, 219, 268, 335, 288, 299, 74, 299, 74,
823 74, 300, 332, 300, 301, 333, 301, 288, 305, 218,
824 310, 218, 338, 277, 277, 339, 399, 331, 340, 219,
825 343, 400, 288, 74, 74, 74, 21, 22, 148, 24,
826 21, 149, 150, 27, 28, 29, 30, 151, 152, 153,
828 154, 155, 156, 157, 158, 159, 160, 41, 161, 43,
829 162, 163, 164, 165, 166, 167, 168, 155, 155, 155,
830 155, 155, 169, 155, 170, 171, 172, 155, 155, 173,
831 174, 155, 155, 155, 155, 155, 155, 175, 155, 176,
832 21, 155, 177, 178, 179, 166, 180, 181, 155, 155,
833 155, 155, 182, 155, 183, 184, 185, 155, 186, 187,
834 155, 155, 155, 70, 71, 72, 188, 21, 189, 190,
835 21, 21, 191, 411, 21, 21, 21, 21, 21, 21,
836 195, 21, 916, 192, 21, 21, 195, 195, 21, 21,
837 21, 21, 299, 344, 299, 303, 299, 345, 299, 304,
839 316, 313, 277, 404, 317, 302, 277, 347, 348, 277,
840 277, 917, 314, 305, 277, 299, 405, 299, 21, 21,
841 21, 21, 346, 414, 299, 277, 299, 499, 349, 377,
842 374, 411, 277, 277, 277, 526, 500, 306, 319, 918,
843 366, 277, 277, 496, 196, 21, 197, 21, 21, 189,
844 190, 21, 21, 191, 919, 21, 21, 21, 21, 21,
845 21, 195, 21, 431, 192, 21, 21, 195, 195, 21,
846 21, 21, 21, 299, 374, 299, 329, 411, 330, 374,
847 432, 378, 374, 277, 366, 411, 296, 412, 379, 366,
848 277, 277, 366, 297, 298, 424, 411, 425, 374, 21,
850 21, 21, 21, 351, 324, 920, 352, 321, 366, 393,
851 380, 374, 921, 353, 322, 354, 580, 922, 355, 323,
852 381, 366, 374, 356, 382, 196, 21, 197, 21, 21,
853 189, 190, 366, 25, 191, 579, 21, 21, 21, 21,
854 923, 21, 195, 413, 374, 192, 21, 21, 195, 195,
855 21, 21, 21, 391, 366, 327, 327, 374, 208, 444,
856 208, 449, 392, 438, 450, 490, 439, 366, 440, 476,
857 451, 476, 445, 289, 394, 289, 441, 459, 513, 460,
858 486, 395, 517, 461, 495, 411, 328, 411, 208, 199,
859 208, 200, 694, 499, 374, 201, 528, 525, 695, 476,
861 398, 476, 500, 289, 366, 289, 202, 21, 203, 21,
862 21, 189, 190, 328, 25, 191, 924, 21, 21, 21,
863 21, 925, 21, 195, 926, 726, 192, 21, 21, 195,
864 195, 21, 21, 21, 327, 327, 396, 374, 710, 578,
865 299, 374, 299, 397, 711, 217, 217, 366, 286, 286,
866 277, 366, 289, 289, 289, 289, 522, 277, 277, 492,
867 411, 523, 411, 218, 374, 218, 1300, 411, 1300, 524,
868 199, 533, 200, 534, 366, 411, 201, 505, 927, 288,
869 928, 546, 289, 289, 289, 289, 411, 202, 21, 203,
870 21, 209, 209, 218, 411, 218, 1300, 727, 1300, 209,
872 209, 209, 209, 209, 209, 299, 288, 299, 299, 844,
873 480, 299, 843, 299, 374, 277, 931, 374, 277, 842,
874 411, 277, 479, 277, 366, 277, 277, 366, 277, 277,
875 209, 209, 209, 209, 209, 209, 278, 278, 932, 933,
876 299, 934, 299, 929, 278, 278, 278, 278, 278, 278,
877 277, 299, 935, 299, 299, 488, 299, 277, 487, 936,
878 562, 277, 937, 564, 277, 327, 327, 930, 277, 277,
879 938, 277, 277, 939, 940, 278, 278, 278, 278, 278,
880 278, 285, 285, 289, 941, 289, 942, 374, 374, 286,
881 287, 286, 287, 286, 286, 943, 288, 366, 366, 289,
883 509, 289, 944, 288, 548, 549, 945, 946, 374, 947,
884 948, 949, 290, 289, 950, 289, 951, 952, 366, 953,
885 286, 287, 286, 287, 286, 286, 299, 288, 299, 289,
886 954, 289, 955, 288, 956, 957, 277, 958, 959, 290,
887 292, 292, 637, 277, 277, 960, 961, 962, 292, 293,
888 292, 294, 292, 292, 565, 295, 963, 964, 299, 296,
889 299, 965, 295, 966, 967, 645, 297, 298, 277, 968,
890 969, 295, 970, 971, 972, 277, 277, 973, 974, 292,
891 299, 292, 299, 292, 292, 975, 295, 976, 977, 978,
892 979, 980, 295, 981, 982, 983, 984, 985, 295, 326,
894 326, 986, 987, 988, 989, 990, 991, 326, 326, 326,
895 326, 326, 326, 992, 993, 411, 411, 994, 995, 996,
896 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1007,
897 1008, 1009, 1010, 1006, 1011, 1012, 1013, 1014, 326, 326,
898 326, 326, 326, 326, 363, 363, 1015, 1016, 1017, 1018,
899 1019, 1020, 363, 363, 363, 363, 363, 363, 1021, 1022,
900 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
901 1033, 1035, 1036, 1037, 1038, 1034, 1039, 1040, 1041, 1042,
902 1043, 1044, 1045, 363, 363, 363, 363, 363, 363, 367,
903 367, 1046, 1047, 1048, 1049, 1050, 1051, 367, 367, 367,
905 367, 367, 367, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
906 1059, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069,
907 1070, 1071, 1072, 1060, 1073, 1074, 1075, 1076, 367, 367,
908 367, 367, 367, 367, 372, 372, 1077, 1078, 1080, 1081,
909 1082, 1083, 372, 373, 372, 374, 372, 372, 1084, 375,
910 1079, 1085, 1086, 376, 1087, 1089, 375, 1090, 1091, 1092,
911 1093, 1094, 1088, 1095, 1096, 375, 1097, 1098, 1099, 1100,
912 1103, 1101, 1104, 372, 374, 372, 374, 372, 372, 1102,
913 375, 1105, 1106, 1107, 1108, 1109, 375, 1110, 1111, 1112,
914 1113, 1114, 375, 209, 209, 1115, 1116, 1117, 1118, 1119,
916 1120, 209, 209, 209, 209, 209, 209, 1121, 1122, 1123,
917 1124, 218, 1125, 218, 1126, 1127, 1128, 1129, 1130, 1131,
918 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141,
919 1142, 1143, 209, 209, 209, 209, 209, 209, 1144, 1145,
920 1146, 218, 1147, 218, 278, 278, 1148, 1149, 1150, 1151,
921 1152, 1153, 278, 278, 278, 278, 278, 278, 1154, 1155,
922 1156, 1157, 476, 1158, 476, 1159, 1160, 1161, 1162, 1163,
923 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173,
924 1174, 1175, 1176, 278, 278, 278, 278, 278, 278, 1177,
925 1178, 1179, 476, 1180, 476, 363, 363, 1181, 1182, 1183,
927 1184, 1185, 1186, 363, 363, 363, 363, 363, 363, 1187,
928 1188, 1189, 1190, 544, 1191, 544, 1192, 1196, 1197, 1198,
929 1199, 1200, 1201, 1193, 1202, 1205, 1206, 1194, 1203, 1207,
930 1208, 1209, 1210, 1211, 363, 363, 363, 363, 363, 363,
931 1195, 1204, 1212, 544, 1213, 544, 367, 367, 1214, 1215,
932 1216, 1217, 1218, 1219, 367, 367, 367, 367, 367, 367,
933 1220, 1221, 1222, 1223, 545, 1224, 545, 1225, 1226, 1227,
934 1228, 1229, 1230, 1231, 1232, 1233, 1234, 1235, 1236, 1237,
935 1238, 1239, 1240, 1241, 1242, 367, 367, 367, 367, 367,
936 367, 1243, 1244, 1245, 545, 1246, 545, 825, 825, 1247,
938 825, 825, 825, 1248, 825, 825, 825, 825, 825, 1249,
939 825, 1250, 1251, 1252, 1253, 1254, 1255, 825, 825, 825,
940 825, 825, 1256, 1257, 1258, 1259, 1260, 1261, 1262, 1263,
941 1264, 1265, 1266, 1267, 1268, 1269, 1270, 1271, 1272, 1273,
942 1274, 1275, 1276, 1277, 1278, 1279, 1280, 1281, 1282, 1283,
943 1284, 825, 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292,
944 1293, 1294, 1295, 1296, 1297, 1298, 1299, 478, 912, 911,
945 910, 909, 908, 907, 825, 825, 825, 836, 836, 906,
946 836, 836, 836, 905, 836, 836, 836, 836, 836, 904,
947 836, 903, 902, 901, 900, 899, 898, 836, 836, 836,
949 836, 836, 897, 896, 895, 894, 893, 892, 891, 890,
950 889, 888, 887, 886, 885, 884, 883, 882, 881, 880,
951 879, 878, 877, 876, 875, 874, 873, 872, 871, 870,
952 869, 836, 868, 867, 866, 865, 864, 863, 862, 861,
953 860, 859, 858, 857, 856, 855, 854, 853, 852, 851,
954 850, 849, 848, 847, 836, 836, 836, 825, 825, 846,
955 825, 825, 825, 845, 825, 825, 825, 825, 825, 841,
956 825, 840, 839, 838, 835, 834, 833, 825, 825, 825,
957 825, 825, 832, 831, 830, 829, 828, 827, 824, 823,
958 822, 821, 820, 819, 818, 817, 816, 815, 814, 813,
960 812, 811, 810, 809, 808, 807, 806, 805, 804, 803,
961 802, 825, 801, 800, 799, 798, 797, 796, 795, 794,
962 793, 792, 791, 790, 789, 788, 787, 786, 785, 784,
963 783, 782, 781, 780, 825, 825, 825, 836, 836, 779,
964 836, 836, 836, 778, 836, 836, 836, 836, 836, 777,
965 836, 776, 775, 774, 773, 772, 771, 836, 836, 836,
966 836, 836, 770, 769, 768, 767, 766, 765, 764, 763,
967 762, 761, 760, 759, 758, 757, 756, 755, 754, 753,
968 752, 751, 750, 749, 748, 747, 746, 745, 744, 743,
969 742, 836, 741, 740, 739, 738, 737, 736, 735, 734,
971 733, 732, 731, 730, 729, 728, 724, 723, 722, 721,
972 720, 719, 718, 717, 836, 836, 836, 20, 20, 20,
973 20, 20, 20, 20, 20, 20, 20, 20, 146, 146,
974 146, 146, 146, 146, 146, 146, 146, 146, 146, 21,
975 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
976 194, 194, 194, 194, 194, 194, 194, 194, 194, 194,
977 194, 198, 198, 198, 198, 198, 198, 198, 198, 198,
978 198, 198, 206, 206, 206, 206, 206, 206, 206, 206,
979 206, 206, 206, 208, 208, 208, 208, 208, 208, 208,
980 208, 277, 716, 277, 277, 277, 277, 277, 277, 362,
982 715, 714, 713, 712, 362, 362, 362, 364, 364, 364,
983 364, 364, 364, 364, 364, 364, 364, 364, 366, 709,
984 366, 708, 366, 366, 366, 366, 368, 707, 368, 368,
985 368, 368, 368, 368, 368, 368, 368, 371, 706, 371,
986 371, 371, 371, 371, 371, 371, 371, 371, 408, 705,
987 408, 408, 408, 408, 408, 408, 408, 408, 408, 409,
988 704, 409, 410, 410, 410, 703, 702, 410, 410, 701,
989 410, 477, 700, 477, 477, 477, 477, 477, 477, 826,
990 699, 826, 826, 826, 826, 826, 826, 826, 826, 826,
991 837, 698, 837, 837, 837, 837, 837, 837, 837, 837,
993 837, 825, 697, 825, 825, 825, 825, 825, 825, 825,
994 825, 825, 836, 696, 836, 836, 836, 836, 836, 836,
995 836, 836, 836, 693, 692, 691, 690, 689, 688, 687,
996 686, 685, 684, 683, 682, 681, 680, 679, 678, 677,
997 676, 675, 674, 673, 672, 671, 670, 669, 645, 668,
998 667, 666, 637, 665, 664, 663, 662, 661, 660, 659,
999 658, 657, 656, 655, 654, 653, 652, 651, 650, 649,
1000 648, 647, 646, 644, 643, 642, 641, 640, 639, 638,
1001 636, 635, 634, 633, 632, 631, 630, 629, 628, 627,
1002 626, 625, 624, 623, 622, 621, 620, 619, 618, 617,
1004 616, 615, 614, 613, 612, 611, 610, 609, 608, 607,
1005 606, 605, 604, 603, 602, 601, 600, 599, 598, 597,
1006 596, 595, 594, 593, 592, 591, 590, 589, 588, 587,
1007 586, 585, 584, 583, 582, 581, 410, 411, 407, 577,
1008 576, 575, 574, 573, 572, 571, 570, 569, 568, 567,
1009 566, 563, 561, 560, 559, 558, 557, 556, 555, 554,
1010 553, 552, 551, 550, 547, 365, 543, 542, 509, 541,
1011 540, 539, 538, 537, 536, 535, 532, 531, 530, 529,
1012 527, 521, 520, 519, 518, 516, 515, 487, 514, 512,
1013 511, 479, 510, 508, 507, 506, 505, 504, 503, 502,
1015 501, 498, 497, 496, 495, 494, 493, 492, 491, 490,
1016 489, 486, 485, 484, 481, 475, 474, 473, 472, 471,
1017 470, 469, 468, 467, 466, 465, 464, 463, 462, 458,
1018 457, 456, 455, 454, 453, 452, 448, 447, 446, 443,
1019 442, 437, 436, 435, 434, 433, 430, 429, 428, 427,
1020 426, 423, 422, 421, 420, 419, 418, 417, 416, 415,
1021 207, 204, 411, 283, 407, 406, 403, 402, 401, 390,
1022 387, 386, 385, 291, 370, 281, 280, 369, 365, 361,
1023 360, 359, 358, 357, 350, 342, 341, 325, 319, 309,
1024 308, 307, 291, 280, 279, 207, 205, 204, 274, 273,
1026 272, 271, 270, 269, 259, 246, 245, 244, 243, 222,
1027 214, 213, 212, 207, 205, 204, 1300, 19, 1300, 1300,
1028 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1029 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1030 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1031 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1032 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1033 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1034 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1035 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300
1039 static yyconst short int yy_chk[2300] =
1041 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1042 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1043 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1044 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1045 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1046 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1047 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1048 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1049 3, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1050 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1052 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1053 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1054 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1055 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1056 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1057 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1058 5, 5, 7, 28, 56, 13, 13, 36, 56, 13,
1059 41, 41, 173, 7, 7, 14, 14, 28, 36, 14,
1060 13, 7, 7, 7, 7, 7, 7, 173, 7, 7,
1061 14, 90, 7, 7, 7, 7, 7, 7, 47, 7,
1063 7, 47, 7, 43, 43, 46, 48, 71, 46, 49,
1064 48, 297, 7, 7, 7, 7, 7, 7, 90, 49,
1065 86, 46, 7, 297, 48, 7, 9, 9, 9, 9,
1066 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
1067 9, 13, 816, 9, 9, 9, 9, 9, 9, 9,
1068 9, 14, 38, 38, 50, 55, 45, 50, 45, 57,
1069 50, 59, 80, 71, 86, 55, 45, 93, 93, 57,
1070 38, 59, 38, 45, 45, 817, 80, 9, 58, 9,
1071 9, 88, 58, 95, 95, 58, 58, 106, 107, 108,
1072 109, 127, 88, 578, 109, 117, 107, 106, 109, 108,
1074 38, 127, 38, 9, 9, 9, 10, 10, 10, 10,
1075 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
1076 10, 37, 37, 10, 10, 10, 10, 10, 10, 10,
1077 10, 111, 169, 61, 578, 111, 61, 61, 169, 37,
1078 158, 37, 111, 61, 61, 61, 818, 111, 61, 61,
1079 126, 117, 37, 61, 126, 285, 98, 10, 98, 10,
1080 10, 124, 125, 98, 124, 125, 98, 158, 126, 37,
1081 131, 37, 128, 98, 98, 128, 182, 124, 128, 37,
1082 131, 182, 285, 10, 10, 10, 11, 11, 11, 11,
1083 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
1085 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
1086 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
1087 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
1088 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
1089 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
1090 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
1091 11, 11, 11, 11, 11, 11, 11, 15, 15, 15,
1092 15, 15, 15, 201, 15, 15, 15, 15, 15, 15,
1093 15, 15, 819, 15, 15, 15, 15, 15, 15, 15,
1094 15, 15, 99, 132, 99, 100, 100, 132, 100, 100,
1096 134, 132, 99, 186, 134, 99, 100, 134, 134, 99,
1097 99, 820, 133, 100, 100, 101, 186, 101, 15, 15,
1098 15, 15, 133, 201, 102, 101, 102, 315, 135, 164,
1099 164, 199, 101, 101, 102, 344, 315, 101, 135, 822,
1100 164, 102, 102, 344, 15, 15, 15, 15, 16, 16,
1101 16, 16, 16, 16, 823, 16, 16, 16, 16, 16,
1102 16, 16, 16, 239, 16, 16, 16, 16, 16, 16,
1103 16, 16, 16, 114, 166, 114, 123, 414, 123, 178,
1104 239, 165, 165, 114, 166, 413, 123, 199, 165, 178,
1105 114, 114, 165, 123, 123, 233, 200, 233, 167, 16,
1107 16, 16, 16, 137, 114, 824, 137, 137, 167, 178,
1108 167, 168, 828, 137, 137, 137, 414, 830, 137, 137,
1109 167, 168, 177, 137, 168, 16, 16, 16, 16, 17,
1110 17, 17, 177, 17, 17, 413, 17, 17, 17, 17,
1111 831, 17, 17, 200, 179, 17, 17, 17, 17, 17,
1112 17, 17, 17, 177, 179, 121, 121, 181, 219, 248,
1113 219, 252, 177, 245, 252, 337, 245, 181, 245, 326,
1114 252, 326, 248, 121, 179, 121, 245, 260, 332, 260,
1115 332, 179, 337, 260, 343, 412, 121, 579, 219, 17,
1116 219, 17, 547, 346, 180, 17, 346, 343, 547, 326,
1118 181, 326, 346, 121, 180, 121, 17, 17, 17, 17,
1119 18, 18, 18, 121, 18, 18, 833, 18, 18, 18,
1120 18, 834, 18, 18, 835, 579, 18, 18, 18, 18,
1121 18, 18, 18, 18, 122, 122, 180, 372, 563, 412,
1122 292, 374, 292, 180, 563, 217, 217, 372, 286, 286,
1123 292, 374, 122, 478, 122, 478, 342, 292, 292, 342,
1124 580, 342, 727, 217, 373, 217, 286, 725, 286, 342,
1125 18, 351, 18, 351, 373, 726, 18, 351, 839, 286,
1126 841, 373, 122, 478, 122, 478, 844, 18, 18, 18,
1127 18, 26, 26, 217, 842, 217, 286, 580, 286, 26,
1129 26, 26, 26, 26, 26, 293, 286, 293, 294, 727,
1130 294, 299, 726, 299, 391, 293, 845, 393, 294, 725,
1131 843, 299, 293, 293, 391, 294, 294, 393, 299, 299,
1132 26, 26, 26, 26, 26, 26, 78, 78, 846, 847,
1133 303, 848, 303, 842, 78, 78, 78, 78, 78, 78,
1134 303, 304, 849, 304, 324, 304, 324, 303, 303, 850,
1135 391, 304, 851, 393, 324, 327, 327, 843, 304, 304,
1136 853, 324, 324, 854, 855, 78, 78, 78, 78, 78,
1137 78, 89, 89, 327, 857, 327, 859, 377, 378, 89,
1138 89, 89, 89, 89, 89, 860, 89, 377, 378, 89,
1140 324, 89, 862, 89, 377, 378, 864, 865, 394, 866,
1141 867, 868, 89, 327, 869, 327, 870, 871, 394, 872,
1142 89, 89, 89, 89, 89, 89, 480, 89, 480, 89,
1143 873, 89, 874, 89, 877, 878, 480, 879, 880, 89,
1144 97, 97, 480, 480, 480, 882, 883, 884, 97, 97,
1145 97, 97, 97, 97, 394, 97, 885, 887, 488, 97,
1146 488, 888, 97, 890, 892, 488, 97, 97, 488, 893,
1147 894, 97, 895, 896, 897, 488, 488, 898, 899, 97,
1148 97, 97, 97, 97, 97, 900, 97, 901, 903, 904,
1149 905, 907, 97, 908, 909, 910, 911, 912, 97, 120,
1151 120, 913, 916, 917, 918, 922, 923, 120, 120, 120,
1152 120, 120, 120, 924, 928, 929, 930, 931, 932, 933,
1153 934, 935, 937, 938, 940, 941, 942, 944, 945, 947,
1154 948, 949, 950, 945, 951, 952, 955, 957, 120, 120,
1155 120, 120, 120, 120, 143, 143, 958, 959, 960, 961,
1156 963, 964, 143, 143, 143, 143, 143, 143, 965, 966,
1157 968, 969, 970, 972, 973, 974, 975, 976, 977, 979,
1158 981, 983, 984, 985, 988, 981, 989, 990, 991, 992,
1159 993, 995, 996, 143, 143, 143, 143, 143, 143, 150,
1160 150, 997, 998, 999, 1000, 1001, 1003, 150, 150, 150,
1162 150, 150, 150, 1004, 1005, 1006, 1007, 1008, 1010, 1011,
1163 1012, 1015, 1017, 1018, 1019, 1021, 1022, 1023, 1024, 1025,
1164 1028, 1029, 1030, 1012, 1031, 1032, 1033, 1034, 150, 150,
1165 150, 150, 150, 150, 163, 163, 1035, 1037, 1045, 1046,
1166 1047, 1048, 163, 163, 163, 163, 163, 163, 1049, 163,
1167 1037, 1050, 1051, 163, 1052, 1053, 163, 1054, 1055, 1056,
1168 1057, 1058, 1052, 1059, 1060, 163, 1061, 1063, 1064, 1065,
1169 1067, 1066, 1068, 163, 163, 163, 163, 163, 163, 1066,
1170 163, 1069, 1070, 1071, 1072, 1073, 163, 1074, 1075, 1076,
1171 1077, 1078, 163, 209, 209, 1079, 1080, 1081, 1082, 1083,
1173 1084, 209, 209, 209, 209, 209, 209, 1085, 1086, 1089,
1174 1090, 209, 1091, 209, 1093, 1094, 1095, 1096, 1097, 1098,
1175 1099, 1100, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110,
1176 1111, 1112, 209, 209, 209, 209, 209, 209, 1114, 1115,
1177 1116, 209, 1117, 209, 278, 278, 1118, 1119, 1120, 1121,
1178 1124, 1125, 278, 278, 278, 278, 278, 278, 1126, 1127,
1179 1128, 1129, 278, 1130, 278, 1131, 1132, 1134, 1135, 1136,
1180 1137, 1138, 1139, 1140, 1141, 1143, 1144, 1145, 1147, 1148,
1181 1150, 1151, 1152, 278, 278, 278, 278, 278, 278, 1153,
1182 1154, 1155, 278, 1156, 278, 363, 363, 1158, 1159, 1161,
1184 1162, 1163, 1164, 363, 363, 363, 363, 363, 363, 1166,
1185 1167, 1168, 1169, 363, 1170, 363, 1172, 1174, 1175, 1177,
1186 1179, 1180, 1181, 1173, 1182, 1183, 1185, 1173, 1182, 1186,
1187 1187, 1188, 1189, 1191, 363, 363, 363, 363, 363, 363,
1188 1173, 1182, 1192, 363, 1193, 363, 367, 367, 1194, 1195,
1189 1196, 1197, 1200, 1202, 367, 367, 367, 367, 367, 367,
1190 1203, 1204, 1208, 1209, 367, 1210, 367, 1211, 1212, 1213,
1191 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223,
1192 1224, 1225, 1226, 1227, 1229, 367, 367, 367, 367, 367,
1193 367, 1230, 1231, 1232, 367, 1233, 367, 701, 701, 1235,
1195 701, 701, 701, 1236, 701, 701, 701, 701, 701, 1237,
1196 701, 1238, 1239, 1240, 1241, 1242, 1243, 701, 701, 701,
1197 701, 701, 1244, 1246, 1247, 1248, 1249, 1250, 1252, 1254,
1198 1255, 1256, 1258, 1259, 1260, 1261, 1262, 1263, 1264, 1265,
1199 1266, 1267, 1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275,
1200 1276, 701, 1277, 1279, 1280, 1281, 1282, 1284, 1285, 1287,
1201 1288, 1290, 1291, 1293, 1295, 1296, 1297, 1318, 814, 812,
1202 811, 809, 808, 807, 701, 701, 701, 717, 717, 806,
1203 717, 717, 717, 804, 717, 717, 717, 717, 717, 803,
1204 717, 802, 800, 798, 797, 796, 795, 717, 717, 717,
1206 717, 717, 794, 793, 792, 791, 790, 789, 788, 787,
1207 786, 785, 784, 783, 781, 779, 778, 776, 775, 773,
1208 772, 771, 770, 769, 768, 767, 766, 764, 763, 762,
1209 760, 717, 759, 758, 757, 755, 754, 753, 752, 751,
1210 750, 749, 748, 747, 746, 744, 743, 741, 739, 738,
1211 735, 734, 733, 732, 717, 717, 717, 826, 826, 730,
1212 826, 826, 826, 728, 826, 826, 826, 826, 826, 724,
1213 826, 723, 721, 720, 716, 715, 711, 826, 826, 826,
1214 826, 826, 710, 709, 708, 707, 705, 704, 700, 699,
1215 695, 694, 693, 692, 691, 690, 689, 688, 687, 686,
1217 685, 684, 682, 681, 680, 679, 678, 676, 675, 674,
1218 673, 826, 672, 670, 669, 668, 667, 665, 664, 663,
1219 662, 661, 660, 659, 658, 657, 656, 655, 654, 652,
1220 651, 648, 647, 646, 826, 826, 826, 837, 837, 645,
1221 837, 837, 837, 644, 837, 837, 837, 837, 837, 642,
1222 837, 640, 639, 638, 636, 635, 634, 837, 837, 837,
1223 837, 837, 633, 632, 631, 630, 629, 628, 627, 626,
1224 625, 624, 623, 622, 621, 619, 618, 617, 616, 615,
1225 614, 613, 612, 611, 609, 607, 606, 604, 603, 601,
1226 600, 837, 599, 598, 596, 595, 594, 593, 592, 591,
1228 590, 588, 586, 584, 583, 581, 577, 576, 575, 574,
1229 573, 572, 571, 570, 837, 837, 837, 1301, 1301, 1301,
1230 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1301, 1302, 1302,
1231 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1302, 1303,
1232 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303, 1303,
1233 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304, 1304,
1234 1304, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305, 1305,
1235 1305, 1305, 1306, 1306, 1306, 1306, 1306, 1306, 1306, 1306,
1236 1306, 1306, 1306, 1307, 1307, 1307, 1307, 1307, 1307, 1307,
1237 1307, 1308, 569, 1308, 1308, 1308, 1308, 1308, 1308, 1309,
1239 568, 566, 565, 564, 1309, 1309, 1309, 1310, 1310, 1310,
1240 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1310, 1311, 562,
1241 1311, 561, 1311, 1311, 1311, 1311, 1312, 560, 1312, 1312,
1242 1312, 1312, 1312, 1312, 1312, 1312, 1312, 1313, 559, 1313,
1243 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1313, 1314, 558,
1244 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1315,
1245 557, 1315, 1316, 1316, 1316, 556, 555, 1316, 1316, 554,
1246 1316, 1317, 553, 1317, 1317, 1317, 1317, 1317, 1317, 1319,
1247 552, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319,
1248 1320, 550, 1320, 1320, 1320, 1320, 1320, 1320, 1320, 1320,
1250 1320, 1321, 549, 1321, 1321, 1321, 1321, 1321, 1321, 1321,
1251 1321, 1321, 1322, 548, 1322, 1322, 1322, 1322, 1322, 1322,
1252 1322, 1322, 1322, 546, 541, 540, 539, 538, 537, 536,
1253 535, 534, 533, 532, 531, 530, 529, 528, 527, 525,
1254 524, 523, 522, 520, 519, 518, 517, 516, 515, 514,
1255 513, 512, 511, 510, 509, 508, 507, 506, 505, 504,
1256 503, 502, 501, 500, 499, 498, 495, 494, 493, 492,
1257 491, 490, 489, 487, 486, 485, 484, 483, 482, 481,
1258 479, 475, 472, 471, 470, 469, 468, 467, 466, 465,
1259 464, 463, 462, 461, 460, 459, 458, 457, 456, 455,
1261 454, 453, 452, 451, 450, 449, 448, 447, 445, 444,
1262 443, 442, 441, 440, 439, 438, 436, 435, 434, 433,
1263 432, 431, 430, 429, 428, 427, 426, 425, 424, 423,
1264 422, 421, 420, 419, 418, 417, 411, 410, 407, 406,
1265 405, 404, 403, 402, 401, 400, 399, 398, 397, 396,
1266 395, 392, 390, 389, 388, 387, 386, 385, 384, 383,
1267 382, 381, 380, 379, 376, 364, 361, 360, 359, 358,
1268 357, 356, 355, 354, 353, 352, 350, 349, 348, 347,
1269 345, 341, 340, 339, 338, 336, 335, 334, 333, 331,
1270 330, 329, 325, 323, 322, 321, 320, 319, 318, 317,
1272 316, 314, 313, 312, 311, 310, 309, 308, 307, 306,
1273 305, 302, 301, 300, 296, 274, 273, 272, 271, 270,
1274 269, 268, 267, 266, 265, 264, 263, 262, 261, 259,
1275 258, 257, 256, 255, 254, 253, 251, 250, 249, 247,
1276 246, 244, 243, 242, 241, 240, 238, 237, 236, 235,
1277 234, 232, 231, 230, 228, 227, 226, 225, 224, 220,
1278 206, 204, 198, 192, 189, 187, 185, 184, 183, 174,
1279 172, 171, 170, 161, 156, 154, 152, 151, 149, 142,
1280 141, 140, 139, 138, 136, 130, 129, 115, 110, 105,
1281 104, 103, 94, 84, 83, 77, 76, 75, 69, 68,
1283 67, 66, 63, 62, 60, 54, 53, 52, 51, 42,
1284 34, 32, 31, 25, 24, 22, 19, 1300, 1300, 1300,
1285 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1286 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1287 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1288 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1289 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1290 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1291 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300,
1292 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300, 1300
1296 static yy_state_type yy_last_accepting_state;
1297 static char *yy_last_accepting_cpos;
1299 /* The intent behind this definition is that it'll catch
1300 * any uses of REJECT which flex missed.
1302 #define REJECT reject_used_but_not_detected
1303 #define yymore() yymore_used_but_not_detected
1304 #define YY_MORE_ADJ 0
1305 #define YY_RESTORE_YY_MORE_OFFSET
1311 /* Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
1312 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
1314 This file is part of GLD, the Gnu Linker.
1316 GLD is free software; you can redistribute it and/or modify
1317 it under the terms of the GNU General Public License as published by
1318 the Free Software Foundation; either version 2, or (at your option)
1321 GLD is distributed in the hope that it will be useful,
1322 but WITHOUT ANY WARRANTY; without even the implied warranty of
1323 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1324 GNU General Public License for more details.
1326 You should have received a copy of the GNU General Public License
1327 along with GLD; see the file COPYING. If not, write to the Free
1328 Software Foundation, 51 Franklin Street - Fifth Floor, Boston, MA
1332 This was written by steve chamberlain
1341 #include "safe-ctype.h"
1342 #include "bfdlink.h"
1351 #include "libiberty.h"
1353 /* The type of top-level parser input.
1354 yylex and yyparse (indirectly) both check this. */
1355 input_type parser_input;
1357 /* Line number in the current input file.
1358 (FIXME Actually, it doesn't appear to get reset for each file?) */
1359 unsigned int lineno = 1;
1361 /* The string we are currently lexing, or NULL if we are reading a
1363 const char *lex_string = NULL;
1365 /* Support for flex reading from more than one input file (stream).
1366 `include_stack' is flex's input state for each open file;
1367 `file_name_stack' is the file names. `lineno_stack' is the current
1370 If `include_stack_ptr' is 0, we haven't started reading anything yet.
1371 Otherwise, stack elements 0 through `include_stack_ptr - 1' are valid. */
1374 #define YY_INPUT(buf,result,max_size) yy_input (buf, &result, max_size)
1378 #define MAX_INCLUDE_DEPTH 10
1379 static YY_BUFFER_STATE include_stack[MAX_INCLUDE_DEPTH];
1380 static const char *file_name_stack[MAX_INCLUDE_DEPTH];
1381 static unsigned int lineno_stack[MAX_INCLUDE_DEPTH];
1382 static unsigned int include_stack_ptr = 0;
1383 static int vers_node_nesting = 0;
1385 static void yy_input (char *, int *, int);
1386 static void comment (void);
1387 static void lex_warn_invalid (char *where, char *what);
1390 EXPRESSION definitely in an expression
1391 SCRIPT definitely in a script
1392 BOTH either EXPRESSION or SCRIPT
1393 DEFSYMEXP in an argument to -defsym
1394 MRI in an MRI script
1395 VERS_START starting a Sun style mapfile
1396 VERS_SCRIPT a Sun style mapfile
1397 VERS_NODE a node within a Sun style mapfile
1399 #define RTOKEN(x) { yylval.token = x; return x; }
1401 /* Some versions of flex want this. */
1403 int yywrap (void) { return 1; }
1407 #define EXPRESSION 2
1415 #define VERS_START 6
1417 #define VERS_SCRIPT 7
1421 #line 1422 "ldlex.c"
1423 /* Macros after this point can all be overridden by user definitions in
1427 #ifndef YY_SKIP_YYWRAP
1429 extern "C" int yywrap YY_PROTO(( void ));
1431 extern int yywrap YY_PROTO(( void ));
1436 static void yyunput YY_PROTO(( int c, char *buf_ptr ));
1440 static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
1443 #ifdef YY_NEED_STRLEN
1444 static int yy_flex_strlen YY_PROTO(( yyconst char * ));
1449 static int yyinput YY_PROTO(( void ));
1451 static int input YY_PROTO(( void ));
1456 static int yy_start_stack_ptr = 0;
1457 static int yy_start_stack_depth = 0;
1458 static int *yy_start_stack = 0;
1459 #ifndef YY_NO_PUSH_STATE
1460 static void yy_push_state YY_PROTO(( int new_state ));
1462 #ifndef YY_NO_POP_STATE
1463 static void yy_pop_state YY_PROTO(( void ));
1465 #ifndef YY_NO_TOP_STATE
1466 static int yy_top_state YY_PROTO(( void ));
1470 #define YY_NO_PUSH_STATE 1
1471 #define YY_NO_POP_STATE 1
1472 #define YY_NO_TOP_STATE 1
1475 #ifdef YY_MALLOC_DECL
1483 /* Just try to get by without declaring the routines. This will fail
1484 * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
1485 * or sizeof(void*) != sizeof(int).
1490 /* Amount of stuff to slurp up with each read. */
1491 #ifndef YY_READ_BUF_SIZE
1492 #define YY_READ_BUF_SIZE 8192
1495 /* Copy whatever the last rule matched to the standard output. */
1498 /* This used to be an fputs(), but since the string might contain NUL's,
1499 * we now use fwrite().
1501 #define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
1504 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1505 * is returned in "result".
1508 #define YY_INPUT(buf,result,max_size) \
1509 if ( yy_current_buffer->yy_is_interactive ) \
1512 for ( n = 0; n < max_size && \
1513 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1514 buf[n] = (char) c; \
1516 buf[n++] = (char) c; \
1517 if ( c == EOF && ferror( yyin ) ) \
1518 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1524 while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
1526 if( errno != EINTR) \
1528 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1537 /* No semi-colon after return; correct usage is to write "yyterminate();" -
1538 * we don't want an extra ';' after the "return" because that will cause
1539 * some compilers to complain about unreachable statements.
1542 #define yyterminate() return YY_NULL
1545 /* Number of entries by which start-condition stack grows. */
1546 #ifndef YY_START_STACK_INCR
1547 #define YY_START_STACK_INCR 25
1550 /* Report a fatal error. */
1551 #ifndef YY_FATAL_ERROR
1552 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1555 /* Default declaration of generated scanner - a define so the user can
1556 * easily add parameters.
1559 #define YY_DECL int yylex YY_PROTO(( void ))
1562 /* Code executed at the beginning of each rule, after yytext and yyleng
1565 #ifndef YY_USER_ACTION
1566 #define YY_USER_ACTION
1569 /* Code executed at the end of each rule. */
1571 #define YY_BREAK break;
1574 #define YY_RULE_SETUP \
1579 register yy_state_type yy_current_state;
1580 register char *yy_cp, *yy_bp;
1581 register int yy_act;
1586 if (parser_input != input_selected)
1588 /* The first token of the input determines the initial parser state. */
1589 input_type t = parser_input;
1590 parser_input = input_selected;
1593 case input_script: return INPUT_SCRIPT; break;
1594 case input_mri_script: return INPUT_MRI_SCRIPT; break;
1595 case input_version_script: return INPUT_VERSION_SCRIPT; break;
1596 case input_defsym: return INPUT_DEFSYM; break;
1601 #line 1602 "ldlex.c"
1612 yy_start = 1; /* first start state */
1620 if ( ! yy_current_buffer )
1622 yy_create_buffer( yyin, YY_BUF_SIZE );
1624 yy_load_buffer_state();
1627 while ( 1 ) /* loops until end-of-file is reached */
1631 /* Support of yytext. */
1632 *yy_cp = yy_hold_char;
1634 /* yy_bp points to the position in yy_ch_buf of the start of
1639 yy_current_state = yy_start;
1643 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1644 if ( yy_accept[yy_current_state] )
1646 yy_last_accepting_state = yy_current_state;
1647 yy_last_accepting_cpos = yy_cp;
1649 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1651 yy_current_state = (int) yy_def[yy_current_state];
1652 if ( yy_current_state >= 1301 )
1653 yy_c = yy_meta[(unsigned int) yy_c];
1655 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1658 while ( yy_base[yy_current_state] != 2218 );
1661 yy_act = yy_accept[yy_current_state];
1663 { /* have to back up */
1664 yy_cp = yy_last_accepting_cpos;
1665 yy_current_state = yy_last_accepting_state;
1666 yy_act = yy_accept[yy_current_state];
1669 YY_DO_BEFORE_ACTION;
1672 do_action: /* This label is used only to access EOF actions. */
1676 { /* beginning of action switch */
1677 case 0: /* must back up */
1678 /* undo the effects of YY_DO_BEFORE_ACTION */
1679 *yy_cp = yy_hold_char;
1680 yy_cp = yy_last_accepting_cpos;
1681 yy_current_state = yy_last_accepting_state;
1682 goto yy_find_action;
1702 { yylval.name = xstrdup (yytext); return NAME; }
1713 yylval.integer = bfd_scan_vma (yytext + 1, 0, 16);
1714 yylval.bigint.str = NULL;
1723 switch (yytext[yyleng - 1]) {
1741 yylval.integer = bfd_scan_vma (yytext, 0,
1743 yylval.bigint.str = NULL;
1759 yylval.integer = bfd_scan_vma (s, 0, ibase);
1760 yylval.bigint.str = NULL;
1761 if (yytext[yyleng - 1] == 'M'
1762 || yytext[yyleng - 1] == 'm')
1764 yylval.integer *= 1024 * 1024;
1766 else if (yytext[yyleng - 1] == 'K'
1767 || yytext[yyleng - 1]=='k')
1769 yylval.integer *= 1024;
1771 else if (yytext[0] == '0'
1772 && (yytext[1] == 'x'
1773 || yytext[1] == 'X'))
1775 yylval.bigint.str = xstrdup (yytext + 2);
1793 { RTOKEN(LSHIFTEQ);}
1798 { RTOKEN(RSHIFTEQ);}
1983 { RTOKEN(VERSIONK);}
2008 { RTOKEN(DATA_SEGMENT_ALIGN);}
2013 { RTOKEN(DATA_SEGMENT_RELRO_END);}
2018 { RTOKEN(DATA_SEGMENT_END);}
2028 { RTOKEN(LOADADDR);}
2043 { RTOKEN(ASSERT_K); }
2063 { RTOKEN(SIZEOF_HEADERS);}
2068 { RTOKEN(SIZEOF_HEADERS);}
2073 { RTOKEN(SEGMENT_START);}
2088 { RTOKEN(TARGET_K);}
2093 { RTOKEN(SEARCH_DIR);}
2113 { RTOKEN(AS_NEEDED);}
2123 { RTOKEN(CREATE_OBJECT_SYMBOLS);}
2128 { RTOKEN( CONSTRUCTORS);}
2133 { RTOKEN(FORCE_COMMON_ALLOCATION);}
2138 { RTOKEN(INHIBIT_COMMON_ALLOCATION);}
2143 { RTOKEN(SECTIONS);}
2158 { RTOKEN(OUTPUT_FORMAT);}
2163 { RTOKEN( OUTPUT_ARCH);}
2213 { RTOKEN(NOCROSSREFS);}
2218 { RTOKEN(OVERLAY); }
2223 { RTOKEN(SORT_BY_NAME); }
2228 { RTOKEN(SORT_BY_ALIGNMENT); }
2233 { RTOKEN(SORT_BY_NAME); }
2263 { RTOKEN(ONLY_IF_RO); }
2268 { RTOKEN(ONLY_IF_RW); }
2273 { RTOKEN(SPECIAL); }
2313 { RTOKEN(SUBALIGN);}
2318 { RTOKEN(PROVIDE); }
2323 { RTOKEN(PROVIDE_HIDDEN); }
2333 { RTOKEN(EXCLUDE_FILE); }
2343 { ++ lineno; RTOKEN(NEWLINE); }
2348 { /* Mri comment line */ }
2353 { /* Mri comment line */ }
2358 { RTOKEN(ENDWORD); }
2363 { RTOKEN(ALIGNMOD);}
2388 { RTOKEN(TRUNCATE); }
2408 { RTOKEN(NAMEWORD); }
2428 { RTOKEN(LIST); /* LIST and ignore to end of line */ }
2438 { RTOKEN(ABSOLUTE); }
2443 { RTOKEN(ENDWORD); }
2448 { RTOKEN(ALIGNMOD);}
2473 { RTOKEN(TRUNCATE); }
2493 { RTOKEN(NAMEWORD); }
2518 { RTOKEN(LIST); /* LIST and ignore to end of line */ }
2528 { RTOKEN(ABSOLUTE); }
2534 /* Filename without commas, needed to parse mri stuff */
2535 yylval.name = xstrdup (yytext);
2543 yylval.name = xstrdup (yytext);
2551 yylval.name = xstrdup (yytext + 2);
2559 /* Annoyingly, this pattern can match comments, and we have
2560 longest match issues to consider. So if the first two
2561 characters are a comment opening, put the input back and
2563 if (yytext[0] == '/' && yytext[1] == '*')
2570 yylval.name = xstrdup (yytext);
2579 /* No matter the state, quotes
2580 give what's inside */
2581 yylval.name = xstrdup (yytext + 1);
2582 yylval.name[yyleng - 2] = 0;
2619 { yylval.name = xstrdup (yytext);
2620 return VERS_IDENTIFIER; }
2625 { yylval.name = xstrdup (yytext);
2631 { BEGIN(VERS_SCRIPT); return *yytext; }
2637 vers_node_nesting = 0;
2649 { vers_node_nesting++; return *yytext; }
2654 { if (--vers_node_nesting < 0)
2667 { /* Eat up comments */ }
2672 { /* Eat up whitespace */ }
2674 case YY_STATE_EOF(INITIAL):
2675 case YY_STATE_EOF(SCRIPT):
2676 case YY_STATE_EOF(EXPRESSION):
2677 case YY_STATE_EOF(BOTH):
2678 case YY_STATE_EOF(DEFSYMEXP):
2679 case YY_STATE_EOF(MRI):
2680 case YY_STATE_EOF(VERS_START):
2681 case YY_STATE_EOF(VERS_SCRIPT):
2682 case YY_STATE_EOF(VERS_NODE):
2685 include_stack_ptr--;
2687 if (include_stack_ptr == 0)
2693 yy_switch_to_buffer (include_stack[include_stack_ptr]);
2696 ldfile_input_filename = file_name_stack[include_stack_ptr - 1];
2697 lineno = lineno_stack[include_stack_ptr];
2705 lex_warn_invalid (" in script", yytext);
2710 lex_warn_invalid (" in expression", yytext);
2717 #line 2718 "ldlex.c"
2719 case YY_END_OF_BUFFER:
2721 /* Amount of text matched not including the EOB char. */
2722 int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
2724 /* Undo the effects of YY_DO_BEFORE_ACTION. */
2725 *yy_cp = yy_hold_char;
2726 YY_RESTORE_YY_MORE_OFFSET
2728 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
2730 /* We're scanning a new file or input source. It's
2731 * possible that this happened because the user
2732 * just pointed yyin at a new source and called
2733 * yylex(). If so, then we have to assure
2734 * consistency between yy_current_buffer and our
2735 * globals. Here is the right place to do so, because
2736 * this is the first action (other than possibly a
2737 * back-up) that will match for the new input source.
2739 yy_n_chars = yy_current_buffer->yy_n_chars;
2740 yy_current_buffer->yy_input_file = yyin;
2741 yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
2744 /* Note that here we test for yy_c_buf_p "<=" to the position
2745 * of the first EOB in the buffer, since yy_c_buf_p will
2746 * already have been incremented past the NUL character
2747 * (since all states make transitions on EOB to the
2748 * end-of-buffer state). Contrast this with the test
2751 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
2752 { /* This was really a NUL. */
2753 yy_state_type yy_next_state;
2755 yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
2757 yy_current_state = yy_get_previous_state();
2759 /* Okay, we're now positioned to make the NUL
2760 * transition. We couldn't have
2761 * yy_get_previous_state() go ahead and do it
2762 * for us because it doesn't know how to deal
2763 * with the possibility of jamming (and we don't
2764 * want to build jamming into it because then it
2765 * will run more slowly).
2768 yy_next_state = yy_try_NUL_trans( yy_current_state );
2770 yy_bp = yytext_ptr + YY_MORE_ADJ;
2772 if ( yy_next_state )
2774 /* Consume the NUL. */
2775 yy_cp = ++yy_c_buf_p;
2776 yy_current_state = yy_next_state;
2783 goto yy_find_action;
2787 else switch ( yy_get_next_buffer() )
2789 case EOB_ACT_END_OF_FILE:
2791 yy_did_buffer_switch_on_eof = 0;
2795 /* Note: because we've taken care in
2796 * yy_get_next_buffer() to have set up
2797 * yytext, we can now set up
2798 * yy_c_buf_p so that if some total
2799 * hoser (like flex itself) wants to
2800 * call the scanner after we return the
2801 * YY_NULL, it'll still work - another
2802 * YY_NULL will get returned.
2804 yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
2806 yy_act = YY_STATE_EOF(YY_START);
2812 if ( ! yy_did_buffer_switch_on_eof )
2818 case EOB_ACT_CONTINUE_SCAN:
2820 yytext_ptr + yy_amount_of_matched_text;
2822 yy_current_state = yy_get_previous_state();
2825 yy_bp = yytext_ptr + YY_MORE_ADJ;
2828 case EOB_ACT_LAST_MATCH:
2830 &yy_current_buffer->yy_ch_buf[yy_n_chars];
2832 yy_current_state = yy_get_previous_state();
2835 yy_bp = yytext_ptr + YY_MORE_ADJ;
2836 goto yy_find_action;
2843 "fatal flex scanner internal error--no action found" );
2844 } /* end of action switch */
2845 } /* end of scanning one token */
2846 } /* end of yylex */
2849 /* yy_get_next_buffer - try to read in a new buffer
2851 * Returns a code representing an action:
2852 * EOB_ACT_LAST_MATCH -
2853 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2854 * EOB_ACT_END_OF_FILE - end of file
2857 static int yy_get_next_buffer()
2859 register char *dest = yy_current_buffer->yy_ch_buf;
2860 register char *source = yytext_ptr;
2861 register int number_to_move, i;
2864 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
2866 "fatal flex scanner internal error--end of buffer missed" );
2868 if ( yy_current_buffer->yy_fill_buffer == 0 )
2869 { /* Don't try to fill the buffer, so this is an EOF. */
2870 if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
2872 /* We matched a single character, the EOB, so
2873 * treat this as a final EOF.
2875 return EOB_ACT_END_OF_FILE;
2880 /* We matched some text prior to the EOB, first
2883 return EOB_ACT_LAST_MATCH;
2887 /* Try to read more data. */
2889 /* First move last chars to start of buffer. */
2890 number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
2892 for ( i = 0; i < number_to_move; ++i )
2893 *(dest++) = *(source++);
2895 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
2896 /* don't do the read, it's not guaranteed to return an EOF,
2899 yy_current_buffer->yy_n_chars = yy_n_chars = 0;
2904 yy_current_buffer->yy_buf_size - number_to_move - 1;
2906 while ( num_to_read <= 0 )
2907 { /* Not enough room in the buffer - grow it. */
2908 #ifdef YY_USES_REJECT
2910 "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
2913 /* just a shorter name for the current buffer */
2914 YY_BUFFER_STATE b = yy_current_buffer;
2916 int yy_c_buf_p_offset =
2917 (int) (yy_c_buf_p - b->yy_ch_buf);
2919 if ( b->yy_is_our_buffer )
2921 int new_size = b->yy_buf_size * 2;
2923 if ( new_size <= 0 )
2924 b->yy_buf_size += b->yy_buf_size / 8;
2926 b->yy_buf_size *= 2;
2928 b->yy_ch_buf = (char *)
2929 /* Include room in for 2 EOB chars. */
2930 yy_flex_realloc( (void *) b->yy_ch_buf,
2931 b->yy_buf_size + 2 );
2934 /* Can't grow it, we don't own it. */
2937 if ( ! b->yy_ch_buf )
2939 "fatal error - scanner input buffer overflow" );
2941 yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
2943 num_to_read = yy_current_buffer->yy_buf_size -
2948 if ( num_to_read > YY_READ_BUF_SIZE )
2949 num_to_read = YY_READ_BUF_SIZE;
2951 /* Read in more data. */
2952 YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
2953 yy_n_chars, num_to_read );
2955 yy_current_buffer->yy_n_chars = yy_n_chars;
2958 if ( yy_n_chars == 0 )
2960 if ( number_to_move == YY_MORE_ADJ )
2962 ret_val = EOB_ACT_END_OF_FILE;
2968 ret_val = EOB_ACT_LAST_MATCH;
2969 yy_current_buffer->yy_buffer_status =
2970 YY_BUFFER_EOF_PENDING;
2975 ret_val = EOB_ACT_CONTINUE_SCAN;
2977 yy_n_chars += number_to_move;
2978 yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
2979 yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
2981 yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
2987 /* yy_get_previous_state - get the state just before the EOB char was reached */
2989 static yy_state_type yy_get_previous_state()
2991 register yy_state_type yy_current_state;
2992 register char *yy_cp;
2994 yy_current_state = yy_start;
2996 for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
2998 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2999 if ( yy_accept[yy_current_state] )
3001 yy_last_accepting_state = yy_current_state;
3002 yy_last_accepting_cpos = yy_cp;
3004 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3006 yy_current_state = (int) yy_def[yy_current_state];
3007 if ( yy_current_state >= 1301 )
3008 yy_c = yy_meta[(unsigned int) yy_c];
3010 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
3013 return yy_current_state;
3017 /* yy_try_NUL_trans - try to make a transition on the NUL character
3020 * next_state = yy_try_NUL_trans( current_state );
3023 #ifdef YY_USE_PROTOS
3024 static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
3026 static yy_state_type yy_try_NUL_trans( yy_current_state )
3027 yy_state_type yy_current_state;
3030 register int yy_is_jam;
3031 register char *yy_cp = yy_c_buf_p;
3033 register YY_CHAR yy_c = 1;
3034 if ( yy_accept[yy_current_state] )
3036 yy_last_accepting_state = yy_current_state;
3037 yy_last_accepting_cpos = yy_cp;
3039 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3041 yy_current_state = (int) yy_def[yy_current_state];
3042 if ( yy_current_state >= 1301 )
3043 yy_c = yy_meta[(unsigned int) yy_c];
3045 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
3046 yy_is_jam = (yy_current_state == 1300);
3048 return yy_is_jam ? 0 : yy_current_state;
3053 #ifdef YY_USE_PROTOS
3054 static void yyunput( int c, register char *yy_bp )
3056 static void yyunput( c, yy_bp )
3058 register char *yy_bp;
3061 register char *yy_cp = yy_c_buf_p;
3063 /* undo effects of setting up yytext */
3064 *yy_cp = yy_hold_char;
3066 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
3067 { /* need to shift things up to make room */
3068 /* +2 for EOB chars. */
3069 register int number_to_move = yy_n_chars + 2;
3070 register char *dest = &yy_current_buffer->yy_ch_buf[
3071 yy_current_buffer->yy_buf_size + 2];
3072 register char *source =
3073 &yy_current_buffer->yy_ch_buf[number_to_move];
3075 while ( source > yy_current_buffer->yy_ch_buf )
3076 *--dest = *--source;
3078 yy_cp += (int) (dest - source);
3079 yy_bp += (int) (dest - source);
3080 yy_current_buffer->yy_n_chars =
3081 yy_n_chars = yy_current_buffer->yy_buf_size;
3083 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
3084 YY_FATAL_ERROR( "flex scanner push-back overflow" );
3087 *--yy_cp = (char) c;
3091 yy_hold_char = *yy_cp;
3094 #endif /* ifndef YY_NO_UNPUT */
3098 static int yyinput()
3105 *yy_c_buf_p = yy_hold_char;
3107 if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
3109 /* yy_c_buf_p now points to the character we want to return.
3110 * If this occurs *before* the EOB characters, then it's a
3111 * valid NUL; if not, then we've hit the end of the buffer.
3113 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
3114 /* This was really a NUL. */
3118 { /* need more input */
3119 int offset = yy_c_buf_p - yytext_ptr;
3122 switch ( yy_get_next_buffer() )
3124 case EOB_ACT_LAST_MATCH:
3125 /* This happens because yy_g_n_b()
3126 * sees that we've accumulated a
3127 * token and flags that we need to
3128 * try matching the token before
3129 * proceeding. But for input(),
3130 * there's no matching to consider.
3131 * So convert the EOB_ACT_LAST_MATCH
3132 * to EOB_ACT_END_OF_FILE.
3135 /* Reset buffer status. */
3140 case EOB_ACT_END_OF_FILE:
3145 if ( ! yy_did_buffer_switch_on_eof )
3154 case EOB_ACT_CONTINUE_SCAN:
3155 yy_c_buf_p = yytext_ptr + offset;
3161 c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */
3162 *yy_c_buf_p = '\0'; /* preserve yytext */
3163 yy_hold_char = *++yy_c_buf_p;
3170 #ifdef YY_USE_PROTOS
3171 void yyrestart( FILE *input_file )
3173 void yyrestart( input_file )
3177 if ( ! yy_current_buffer )
3178 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
3180 yy_init_buffer( yy_current_buffer, input_file );
3181 yy_load_buffer_state();
3185 #ifdef YY_USE_PROTOS
3186 void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
3188 void yy_switch_to_buffer( new_buffer )
3189 YY_BUFFER_STATE new_buffer;
3192 if ( yy_current_buffer == new_buffer )
3195 if ( yy_current_buffer )
3197 /* Flush out information for old buffer. */
3198 *yy_c_buf_p = yy_hold_char;
3199 yy_current_buffer->yy_buf_pos = yy_c_buf_p;
3200 yy_current_buffer->yy_n_chars = yy_n_chars;
3203 yy_current_buffer = new_buffer;
3204 yy_load_buffer_state();
3206 /* We don't actually know whether we did this switch during
3207 * EOF (yywrap()) processing, but the only time this flag
3208 * is looked at is after yywrap() is called, so it's safe
3209 * to go ahead and always set it.
3211 yy_did_buffer_switch_on_eof = 1;
3215 #ifdef YY_USE_PROTOS
3216 void yy_load_buffer_state( void )
3218 void yy_load_buffer_state()
3221 yy_n_chars = yy_current_buffer->yy_n_chars;
3222 yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
3223 yyin = yy_current_buffer->yy_input_file;
3224 yy_hold_char = *yy_c_buf_p;
3228 #ifdef YY_USE_PROTOS
3229 YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
3231 YY_BUFFER_STATE yy_create_buffer( file, size )
3238 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
3240 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
3242 b->yy_buf_size = size;
3244 /* yy_ch_buf has to be 2 characters longer than the size given because
3245 * we need to put in 2 end-of-buffer characters.
3247 b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
3248 if ( ! b->yy_ch_buf )
3249 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
3251 b->yy_is_our_buffer = 1;
3253 yy_init_buffer( b, file );
3259 #ifdef YY_USE_PROTOS
3260 void yy_delete_buffer( YY_BUFFER_STATE b )
3262 void yy_delete_buffer( b )
3269 if ( b == yy_current_buffer )
3270 yy_current_buffer = (YY_BUFFER_STATE) 0;
3272 if ( b->yy_is_our_buffer )
3273 yy_flex_free( (void *) b->yy_ch_buf );
3275 yy_flex_free( (void *) b );
3282 #ifndef YY_ALWAYS_INTERACTIVE
3283 #ifndef YY_NEVER_INTERACTIVE
3284 extern int isatty YY_PROTO(( int ));
3289 #ifdef YY_USE_PROTOS
3290 void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
3292 void yy_init_buffer( b, file )
3299 yy_flush_buffer( b );
3301 b->yy_input_file = file;
3302 b->yy_fill_buffer = 1;
3304 #if YY_ALWAYS_INTERACTIVE
3305 b->yy_is_interactive = 1;
3307 #if YY_NEVER_INTERACTIVE
3308 b->yy_is_interactive = 0;
3310 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
3316 #ifdef YY_USE_PROTOS
3317 void yy_flush_buffer( YY_BUFFER_STATE b )
3319 void yy_flush_buffer( b )
3329 /* We always need two end-of-buffer characters. The first causes
3330 * a transition to the end-of-buffer state. The second causes
3331 * a jam in that state.
3333 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
3334 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
3336 b->yy_buf_pos = &b->yy_ch_buf[0];
3339 b->yy_buffer_status = YY_BUFFER_NEW;
3341 if ( b == yy_current_buffer )
3342 yy_load_buffer_state();
3346 #ifndef YY_NO_SCAN_BUFFER
3347 #ifdef YY_USE_PROTOS
3348 YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
3350 YY_BUFFER_STATE yy_scan_buffer( base, size )
3358 base[size-2] != YY_END_OF_BUFFER_CHAR ||
3359 base[size-1] != YY_END_OF_BUFFER_CHAR )
3360 /* They forgot to leave room for the EOB's. */
3363 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
3365 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
3367 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
3368 b->yy_buf_pos = b->yy_ch_buf = base;
3369 b->yy_is_our_buffer = 0;
3370 b->yy_input_file = 0;
3371 b->yy_n_chars = b->yy_buf_size;
3372 b->yy_is_interactive = 0;
3374 b->yy_fill_buffer = 0;
3375 b->yy_buffer_status = YY_BUFFER_NEW;
3377 yy_switch_to_buffer( b );
3384 #ifndef YY_NO_SCAN_STRING
3385 #ifdef YY_USE_PROTOS
3386 YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
3388 YY_BUFFER_STATE yy_scan_string( yy_str )
3389 yyconst char *yy_str;
3393 for ( len = 0; yy_str[len]; ++len )
3396 return yy_scan_bytes( yy_str, len );
3401 #ifndef YY_NO_SCAN_BYTES
3402 #ifdef YY_USE_PROTOS
3403 YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
3405 YY_BUFFER_STATE yy_scan_bytes( bytes, len )
3406 yyconst char *bytes;
3415 /* Get memory for full buffer, including space for trailing EOB's. */
3417 buf = (char *) yy_flex_alloc( n );
3419 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
3421 for ( i = 0; i < len; ++i )
3424 buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
3426 b = yy_scan_buffer( buf, n );
3428 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
3430 /* It's okay to grow etc. this buffer, and we should throw it
3431 * away when we're done.
3433 b->yy_is_our_buffer = 1;
3440 #ifndef YY_NO_PUSH_STATE
3441 #ifdef YY_USE_PROTOS
3442 static void yy_push_state( int new_state )
3444 static void yy_push_state( new_state )
3448 if ( yy_start_stack_ptr >= yy_start_stack_depth )
3452 yy_start_stack_depth += YY_START_STACK_INCR;
3453 new_size = yy_start_stack_depth * sizeof( int );
3455 if ( ! yy_start_stack )
3456 yy_start_stack = (int *) yy_flex_alloc( new_size );
3459 yy_start_stack = (int *) yy_flex_realloc(
3460 (void *) yy_start_stack, new_size );
3462 if ( ! yy_start_stack )
3464 "out of memory expanding start-condition stack" );
3467 yy_start_stack[yy_start_stack_ptr++] = YY_START;
3474 #ifndef YY_NO_POP_STATE
3475 static void yy_pop_state()
3477 if ( --yy_start_stack_ptr < 0 )
3478 YY_FATAL_ERROR( "start-condition stack underflow" );
3480 BEGIN(yy_start_stack[yy_start_stack_ptr]);
3485 #ifndef YY_NO_TOP_STATE
3486 static int yy_top_state()
3488 return yy_start_stack[yy_start_stack_ptr - 1];
3492 #ifndef YY_EXIT_FAILURE
3493 #define YY_EXIT_FAILURE 2
3496 #ifdef YY_USE_PROTOS
3497 static void yy_fatal_error( yyconst char msg[] )
3499 static void yy_fatal_error( msg )
3503 (void) fprintf( stderr, "%s\n", msg );
3504 exit( YY_EXIT_FAILURE );
3509 /* Redefine yyless() so it works in section 3 code. */
3515 /* Undo effects of setting up yytext. */ \
3516 yytext[yyleng] = yy_hold_char; \
3517 yy_c_buf_p = yytext + n; \
3518 yy_hold_char = *yy_c_buf_p; \
3519 *yy_c_buf_p = '\0'; \
3525 /* Internal utility routines. */
3528 #ifdef YY_USE_PROTOS
3529 static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
3531 static void yy_flex_strncpy( s1, s2, n )
3538 for ( i = 0; i < n; ++i )
3543 #ifdef YY_NEED_STRLEN
3544 #ifdef YY_USE_PROTOS
3545 static int yy_flex_strlen( yyconst char *s )
3547 static int yy_flex_strlen( s )
3552 for ( n = 0; s[n]; ++n )
3560 #ifdef YY_USE_PROTOS
3561 static void *yy_flex_alloc( yy_size_t size )
3563 static void *yy_flex_alloc( size )
3567 return (void *) malloc( size );
3570 #ifdef YY_USE_PROTOS
3571 static void *yy_flex_realloc( void *ptr, yy_size_t size )
3573 static void *yy_flex_realloc( ptr, size )
3578 /* The cast to (char *) in the following accommodates both
3579 * implementations that use char* generic pointers, and those
3580 * that use void* generic pointers. It works with the latter
3581 * because both ANSI C and C++ allow castless assignment from
3582 * any pointer type to void*, and deal with argument conversions
3583 * as though doing an assignment.
3585 return (void *) realloc( (char *) ptr, size );
3588 #ifdef YY_USE_PROTOS
3589 static void yy_flex_free( void *ptr )
3591 static void yy_flex_free( ptr )
3609 /* Switch flex to reading script file NAME, open on FILE,
3610 saving the current input info on the include stack. */
3613 lex_push_file (FILE *file, const char *name)
3615 if (include_stack_ptr >= MAX_INCLUDE_DEPTH)
3617 einfo ("%F:includes nested too deeply\n");
3619 file_name_stack[include_stack_ptr] = name;
3620 lineno_stack[include_stack_ptr] = lineno;
3621 include_stack[include_stack_ptr] = YY_CURRENT_BUFFER;
3623 include_stack_ptr++;
3626 yy_switch_to_buffer (yy_create_buffer (yyin, YY_BUF_SIZE));
3629 /* Return a newly created flex input buffer containing STRING,
3630 which is SIZE bytes long. */
3632 static YY_BUFFER_STATE
3633 yy_create_string_buffer (const char *string, size_t size)
3637 /* Calls to m-alloc get turned by sed into xm-alloc. */
3638 b = malloc (sizeof (struct yy_buffer_state));
3639 b->yy_input_file = 0;
3640 b->yy_buf_size = size;
3642 /* yy_ch_buf has to be 2 characters longer than the size given because
3643 we need to put in 2 end-of-buffer characters. */
3644 b->yy_ch_buf = malloc ((unsigned) (b->yy_buf_size + 3));
3646 b->yy_ch_buf[0] = '\n';
3647 strcpy (b->yy_ch_buf+1, string);
3648 b->yy_ch_buf[size+1] = YY_END_OF_BUFFER_CHAR;
3649 b->yy_ch_buf[size+2] = YY_END_OF_BUFFER_CHAR;
3650 b->yy_n_chars = size+1;
3651 b->yy_buf_pos = &b->yy_ch_buf[1];
3653 b->yy_is_our_buffer = 1;
3654 b->yy_is_interactive = 0;
3656 b->yy_fill_buffer = 0;
3658 /* flex 2.4.7 changed the interface. FIXME: We should not be using
3659 a flex internal interface in the first place! */
3660 #ifdef YY_BUFFER_NEW
3661 b->yy_buffer_status = YY_BUFFER_NEW;
3663 b->yy_eof_status = EOF_NOT_SEEN;
3669 /* Switch flex to reading from STRING, saving the current input info
3670 on the include stack. */
3673 lex_redirect (const char *string)
3675 YY_BUFFER_STATE tmp;
3678 if (include_stack_ptr >= MAX_INCLUDE_DEPTH)
3680 einfo("%F: macros nested too deeply\n");
3682 file_name_stack[include_stack_ptr] = "redirect";
3683 lineno_stack[include_stack_ptr] = lineno;
3684 include_stack[include_stack_ptr] = YY_CURRENT_BUFFER;
3685 include_stack_ptr++;
3687 tmp = yy_create_string_buffer (string, strlen (string));
3688 yy_switch_to_buffer (tmp);
3691 /* Functions to switch to a different flex start condition,
3692 saving the current start condition on `state_stack'. */
3694 static int state_stack[MAX_INCLUDE_DEPTH * 2];
3695 static int *state_stack_p = state_stack;
3700 *(state_stack_p)++ = yy_start;
3705 ldlex_mri_script (void)
3707 *(state_stack_p)++ = yy_start;
3712 ldlex_version_script (void)
3714 *(state_stack_p)++ = yy_start;
3719 ldlex_version_file (void)
3721 *(state_stack_p)++ = yy_start;
3722 BEGIN (VERS_SCRIPT);
3728 *(state_stack_p)++ = yy_start;
3733 ldlex_expression (void)
3735 *(state_stack_p)++ = yy_start;
3742 *(state_stack_p)++ = yy_start;
3747 ldlex_popstate (void)
3749 yy_start = *(--state_stack_p);
3753 /* Place up to MAX_SIZE characters in BUF and return in *RESULT
3754 either the number of characters read, or 0 to indicate EOF. */
3757 yy_input (char *buf, int *result, int max_size)
3760 if (YY_CURRENT_BUFFER->yy_input_file)
3764 *result = fread (buf, 1, max_size, yyin);
3765 if (*result < max_size && ferror (yyin))
3766 einfo ("%F%P: read in flex scanner failed\n");
3771 /* Eat the rest of a C-style comment. */
3781 while (c != '*' && c != EOF)
3794 break; /* found the end */
3802 einfo( "%F%P: EOF in comment\n");
3808 /* Warn the user about a garbage character WHAT in the input
3809 in context WHERE. */
3812 lex_warn_invalid (char *where, char *what)
3816 /* If we have found an input file whose format we do not recognize,
3817 and we are therefore treating it as a linker script, and we find
3818 an invalid character, then most likely this is a real object file
3819 of some different format. Treat it as such. */
3820 if (ldfile_assumed_script)
3822 bfd_set_error (bfd_error_file_not_recognized);
3823 einfo ("%F%s: file not recognized: %E\n", ldfile_input_filename);
3826 if (! ISPRINT (*what))
3828 sprintf (buf, "\\%03o", (unsigned int) *what);
3832 einfo ("%P:%S: ignoring invalid character `%s'%s\n", what, where);