MFC r1.7 (HEAD):
[dragonfly.git] / contrib / binutils-2.17 / ld / ldlex.c
bloba18b3bd4c1157704142c1bbd816956e0191465fd
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 $
5 */
7 #define FLEX_SCANNER
8 #define YY_FLEX_MAJOR_VERSION 2
9 #define YY_FLEX_MINOR_VERSION 5
11 #include <stdio.h>
12 #include <errno.h>
14 /* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
15 #ifdef c_plusplus
16 #ifndef __cplusplus
17 #define __cplusplus
18 #endif
19 #endif
22 #ifdef __cplusplus
24 #include <stdlib.h>
25 #ifndef _WIN32
26 #include <unistd.h>
27 #endif
29 /* Use prototypes in function declarations. */
30 #define YY_USE_PROTOS
32 /* The "const" storage-class-modifier is valid. */
33 #define YY_USE_CONST
35 #else /* ! __cplusplus */
37 #if __STDC__
39 #define YY_USE_PROTOS
40 #define YY_USE_CONST
42 #endif /* __STDC__ */
43 #endif /* ! __cplusplus */
45 #ifdef __TURBOC__
46 #pragma warn -rch
47 #pragma warn -use
48 #include <io.h>
49 #include <stdlib.h>
50 #define YY_USE_CONST
51 #define YY_USE_PROTOS
52 #endif
54 #ifdef YY_USE_CONST
55 #define yyconst const
56 #else
57 #define yyconst
58 #endif
61 #ifdef YY_USE_PROTOS
62 #define YY_PROTO(proto) proto
63 #else
64 #define YY_PROTO(proto) ()
65 #endif
68 /* Returned upon end-of-file. */
69 #define YY_NULL 0
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
74 * double cast.
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
86 * compatibility.
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;
104 extern int yyleng;
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 )
116 * yyless( 5 );
117 * else
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. */
127 #define yyless(n) \
128 do \
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 */ \
136 while ( 0 )
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
149 FILE *yy_input_file;
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
155 * characters.
157 yy_size_t yy_buf_size;
159 /* Number of characters read into yy_ch_buf, not including EOB
160 * characters.
162 int yy_n_chars;
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
166 * delete it.
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
173 * each newline.
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
179 * not.
181 int yy_at_bol;
183 /* Whether to try to fill the input buffer when we reach the
184 * end of it.
186 int yy_fill_buffer;
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
208 * "scanner state".
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 */
219 int yyleng;
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;
270 extern char *yytext;
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; \
285 *yy_cp = '\0'; \
286 yy_c_buf_p = yy_cp;
288 #define YY_NUM_RULES 182
289 #define YY_END_OF_BUFFER 183
290 static yyconst short int yy_accept[1301] =
291 { 0,
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] =
438 { 0,
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,
466 1, 1, 1, 1, 1
469 static yyconst int yy_meta[82] =
470 { 0,
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] =
483 { 0,
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,
629 1901, 1912
632 static yyconst short int yy_def[1323] =
633 { 0,
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,
779 1300, 1300
782 static yyconst short int yy_nxt[2300] =
783 { 0,
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] =
1040 { 0,
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
1306 char *yytext;
1307 #line 1 "ldlex.l"
1308 #define INITIAL 0
1309 #line 2 "ldlex.l"
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)
1319 any later version.
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
1329 02110-1301, USA. */
1332 This was written by steve chamberlain
1333 sac@cygnus.com
1337 #include <stdio.h>
1339 #include "bfd.h"
1340 #include "sysdep.h"
1341 #include "safe-ctype.h"
1342 #include "bfdlink.h"
1343 #include "ld.h"
1344 #include "ldmisc.h"
1345 #include "ldexp.h"
1346 #include "ldlang.h"
1347 #include <ldgram.h>
1348 #include "ldfile.h"
1349 #include "ldlex.h"
1350 #include "ldmain.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
1362 file. */
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
1368 line numbers.
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. */
1373 #undef YY_INPUT
1374 #define YY_INPUT(buf,result,max_size) yy_input (buf, &result, max_size)
1376 #define YY_NO_UNPUT
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);
1389 /* STATES
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. */
1402 #ifndef yywrap
1403 int yywrap (void) { return 1; }
1404 #endif
1405 #define SCRIPT 1
1407 #define EXPRESSION 2
1409 #define BOTH 3
1411 #define DEFSYMEXP 4
1413 #define MRI 5
1415 #define VERS_START 6
1417 #define VERS_SCRIPT 7
1419 #define VERS_NODE 8
1421 #line 1422 "ldlex.c"
1423 /* Macros after this point can all be overridden by user definitions in
1424 * section 1.
1427 #ifndef YY_SKIP_YYWRAP
1428 #ifdef __cplusplus
1429 extern "C" int yywrap YY_PROTO(( void ));
1430 #else
1431 extern int yywrap YY_PROTO(( void ));
1432 #endif
1433 #endif
1435 #ifndef YY_NO_UNPUT
1436 static void yyunput YY_PROTO(( int c, char *buf_ptr ));
1437 #endif
1439 #ifndef yytext_ptr
1440 static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
1441 #endif
1443 #ifdef YY_NEED_STRLEN
1444 static int yy_flex_strlen YY_PROTO(( yyconst char * ));
1445 #endif
1447 #ifndef YY_NO_INPUT
1448 #ifdef __cplusplus
1449 static int yyinput YY_PROTO(( void ));
1450 #else
1451 static int input YY_PROTO(( void ));
1452 #endif
1453 #endif
1455 #if YY_STACK_USED
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 ));
1461 #endif
1462 #ifndef YY_NO_POP_STATE
1463 static void yy_pop_state YY_PROTO(( void ));
1464 #endif
1465 #ifndef YY_NO_TOP_STATE
1466 static int yy_top_state YY_PROTO(( void ));
1467 #endif
1469 #else
1470 #define YY_NO_PUSH_STATE 1
1471 #define YY_NO_POP_STATE 1
1472 #define YY_NO_TOP_STATE 1
1473 #endif
1475 #ifdef YY_MALLOC_DECL
1476 YY_MALLOC_DECL
1477 #else
1478 #if __STDC__
1479 #ifndef __cplusplus
1480 #include <stdlib.h>
1481 #endif
1482 #else
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).
1487 #endif
1488 #endif
1490 /* Amount of stuff to slurp up with each read. */
1491 #ifndef YY_READ_BUF_SIZE
1492 #define YY_READ_BUF_SIZE 8192
1493 #endif
1495 /* Copy whatever the last rule matched to the standard output. */
1497 #ifndef ECHO
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 )
1502 #endif
1504 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1505 * is returned in "result".
1507 #ifndef YY_INPUT
1508 #define YY_INPUT(buf,result,max_size) \
1509 if ( yy_current_buffer->yy_is_interactive ) \
1511 int c = '*', n; \
1512 for ( n = 0; n < max_size && \
1513 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1514 buf[n] = (char) c; \
1515 if ( c == '\n' ) \
1516 buf[n++] = (char) c; \
1517 if ( c == EOF && ferror( yyin ) ) \
1518 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1519 result = n; \
1521 else \
1523 errno=0; \
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" ); \
1529 break; \
1531 errno=0; \
1532 clearerr(yyin); \
1535 #endif
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.
1541 #ifndef yyterminate
1542 #define yyterminate() return YY_NULL
1543 #endif
1545 /* Number of entries by which start-condition stack grows. */
1546 #ifndef YY_START_STACK_INCR
1547 #define YY_START_STACK_INCR 25
1548 #endif
1550 /* Report a fatal error. */
1551 #ifndef YY_FATAL_ERROR
1552 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1553 #endif
1555 /* Default declaration of generated scanner - a define so the user can
1556 * easily add parameters.
1558 #ifndef YY_DECL
1559 #define YY_DECL int yylex YY_PROTO(( void ))
1560 #endif
1562 /* Code executed at the beginning of each rule, after yytext and yyleng
1563 * have been set up.
1565 #ifndef YY_USER_ACTION
1566 #define YY_USER_ACTION
1567 #endif
1569 /* Code executed at the end of each rule. */
1570 #ifndef YY_BREAK
1571 #define YY_BREAK break;
1572 #endif
1574 #define YY_RULE_SETUP \
1575 YY_USER_ACTION
1577 YY_DECL
1579 register yy_state_type yy_current_state;
1580 register char *yy_cp, *yy_bp;
1581 register int yy_act;
1583 #line 123 "ldlex.l"
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;
1591 switch (t)
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;
1597 default: abort ();
1601 #line 1602 "ldlex.c"
1603 if ( yy_init )
1605 yy_init = 0;
1607 #ifdef YY_USER_INIT
1608 YY_USER_INIT;
1609 #endif
1611 if ( ! yy_start )
1612 yy_start = 1; /* first start state */
1614 if ( ! yyin )
1615 yyin = stdin;
1617 if ( ! yyout )
1618 yyout = stdout;
1620 if ( ! yy_current_buffer )
1621 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 */
1629 yy_cp = yy_c_buf_p;
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
1635 * the current run.
1637 yy_bp = yy_cp;
1639 yy_current_state = yy_start;
1640 yy_match:
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];
1656 ++yy_cp;
1658 while ( yy_base[yy_current_state] != 2218 );
1660 yy_find_action:
1661 yy_act = yy_accept[yy_current_state];
1662 if ( yy_act == 0 )
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. */
1675 switch ( yy_act )
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;
1684 case 1:
1685 YY_RULE_SETUP
1686 #line 140 "ldlex.l"
1687 { comment (); }
1688 YY_BREAK
1689 case 2:
1690 YY_RULE_SETUP
1691 #line 143 "ldlex.l"
1692 { RTOKEN('-');}
1693 YY_BREAK
1694 case 3:
1695 YY_RULE_SETUP
1696 #line 144 "ldlex.l"
1697 { RTOKEN('+');}
1698 YY_BREAK
1699 case 4:
1700 YY_RULE_SETUP
1701 #line 145 "ldlex.l"
1702 { yylval.name = xstrdup (yytext); return NAME; }
1703 YY_BREAK
1704 case 5:
1705 YY_RULE_SETUP
1706 #line 146 "ldlex.l"
1707 { RTOKEN('='); }
1708 YY_BREAK
1709 case 6:
1710 YY_RULE_SETUP
1711 #line 148 "ldlex.l"
1713 yylval.integer = bfd_scan_vma (yytext + 1, 0, 16);
1714 yylval.bigint.str = NULL;
1715 return INT;
1717 YY_BREAK
1718 case 7:
1719 YY_RULE_SETUP
1720 #line 154 "ldlex.l"
1722 int ibase ;
1723 switch (yytext[yyleng - 1]) {
1724 case 'X':
1725 case 'x':
1726 case 'H':
1727 case 'h':
1728 ibase = 16;
1729 break;
1730 case 'O':
1731 case 'o':
1732 ibase = 8;
1733 break;
1734 case 'B':
1735 case 'b':
1736 ibase = 2;
1737 break;
1738 default:
1739 ibase = 10;
1741 yylval.integer = bfd_scan_vma (yytext, 0,
1742 ibase);
1743 yylval.bigint.str = NULL;
1744 return INT;
1746 YY_BREAK
1747 case 8:
1748 YY_RULE_SETUP
1749 #line 179 "ldlex.l"
1751 char *s = yytext;
1752 int ibase = 0;
1754 if (*s == '$')
1756 ++s;
1757 ibase = 16;
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);
1777 return INT;
1779 YY_BREAK
1780 case 9:
1781 YY_RULE_SETUP
1782 #line 208 "ldlex.l"
1783 { RTOKEN(']');}
1784 YY_BREAK
1785 case 10:
1786 YY_RULE_SETUP
1787 #line 209 "ldlex.l"
1788 { RTOKEN('[');}
1789 YY_BREAK
1790 case 11:
1791 YY_RULE_SETUP
1792 #line 210 "ldlex.l"
1793 { RTOKEN(LSHIFTEQ);}
1794 YY_BREAK
1795 case 12:
1796 YY_RULE_SETUP
1797 #line 211 "ldlex.l"
1798 { RTOKEN(RSHIFTEQ);}
1799 YY_BREAK
1800 case 13:
1801 YY_RULE_SETUP
1802 #line 212 "ldlex.l"
1803 { RTOKEN(OROR);}
1804 YY_BREAK
1805 case 14:
1806 YY_RULE_SETUP
1807 #line 213 "ldlex.l"
1808 { RTOKEN(EQ);}
1809 YY_BREAK
1810 case 15:
1811 YY_RULE_SETUP
1812 #line 214 "ldlex.l"
1813 { RTOKEN(NE);}
1814 YY_BREAK
1815 case 16:
1816 YY_RULE_SETUP
1817 #line 215 "ldlex.l"
1818 { RTOKEN(GE);}
1819 YY_BREAK
1820 case 17:
1821 YY_RULE_SETUP
1822 #line 216 "ldlex.l"
1823 { RTOKEN(LE);}
1824 YY_BREAK
1825 case 18:
1826 YY_RULE_SETUP
1827 #line 217 "ldlex.l"
1828 { RTOKEN(LSHIFT);}
1829 YY_BREAK
1830 case 19:
1831 YY_RULE_SETUP
1832 #line 218 "ldlex.l"
1833 { RTOKEN(RSHIFT);}
1834 YY_BREAK
1835 case 20:
1836 YY_RULE_SETUP
1837 #line 219 "ldlex.l"
1838 { RTOKEN(PLUSEQ);}
1839 YY_BREAK
1840 case 21:
1841 YY_RULE_SETUP
1842 #line 220 "ldlex.l"
1843 { RTOKEN(MINUSEQ);}
1844 YY_BREAK
1845 case 22:
1846 YY_RULE_SETUP
1847 #line 221 "ldlex.l"
1848 { RTOKEN(MULTEQ);}
1849 YY_BREAK
1850 case 23:
1851 YY_RULE_SETUP
1852 #line 222 "ldlex.l"
1853 { RTOKEN(DIVEQ);}
1854 YY_BREAK
1855 case 24:
1856 YY_RULE_SETUP
1857 #line 223 "ldlex.l"
1858 { RTOKEN(ANDEQ);}
1859 YY_BREAK
1860 case 25:
1861 YY_RULE_SETUP
1862 #line 224 "ldlex.l"
1863 { RTOKEN(OREQ);}
1864 YY_BREAK
1865 case 26:
1866 YY_RULE_SETUP
1867 #line 225 "ldlex.l"
1868 { RTOKEN(ANDAND);}
1869 YY_BREAK
1870 case 27:
1871 YY_RULE_SETUP
1872 #line 226 "ldlex.l"
1873 { RTOKEN('>');}
1874 YY_BREAK
1875 case 28:
1876 YY_RULE_SETUP
1877 #line 227 "ldlex.l"
1878 { RTOKEN(',');}
1879 YY_BREAK
1880 case 29:
1881 YY_RULE_SETUP
1882 #line 228 "ldlex.l"
1883 { RTOKEN('&');}
1884 YY_BREAK
1885 case 30:
1886 YY_RULE_SETUP
1887 #line 229 "ldlex.l"
1888 { RTOKEN('|');}
1889 YY_BREAK
1890 case 31:
1891 YY_RULE_SETUP
1892 #line 230 "ldlex.l"
1893 { RTOKEN('~');}
1894 YY_BREAK
1895 case 32:
1896 YY_RULE_SETUP
1897 #line 231 "ldlex.l"
1898 { RTOKEN('!');}
1899 YY_BREAK
1900 case 33:
1901 YY_RULE_SETUP
1902 #line 232 "ldlex.l"
1903 { RTOKEN('?');}
1904 YY_BREAK
1905 case 34:
1906 YY_RULE_SETUP
1907 #line 233 "ldlex.l"
1908 { RTOKEN('*');}
1909 YY_BREAK
1910 case 35:
1911 YY_RULE_SETUP
1912 #line 234 "ldlex.l"
1913 { RTOKEN('+');}
1914 YY_BREAK
1915 case 36:
1916 YY_RULE_SETUP
1917 #line 235 "ldlex.l"
1918 { RTOKEN('-');}
1919 YY_BREAK
1920 case 37:
1921 YY_RULE_SETUP
1922 #line 236 "ldlex.l"
1923 { RTOKEN('/');}
1924 YY_BREAK
1925 case 38:
1926 YY_RULE_SETUP
1927 #line 237 "ldlex.l"
1928 { RTOKEN('%');}
1929 YY_BREAK
1930 case 39:
1931 YY_RULE_SETUP
1932 #line 238 "ldlex.l"
1933 { RTOKEN('<');}
1934 YY_BREAK
1935 case 40:
1936 YY_RULE_SETUP
1937 #line 239 "ldlex.l"
1938 { RTOKEN('=');}
1939 YY_BREAK
1940 case 41:
1941 YY_RULE_SETUP
1942 #line 240 "ldlex.l"
1943 { RTOKEN('}') ; }
1944 YY_BREAK
1945 case 42:
1946 YY_RULE_SETUP
1947 #line 241 "ldlex.l"
1948 { RTOKEN('{'); }
1949 YY_BREAK
1950 case 43:
1951 YY_RULE_SETUP
1952 #line 242 "ldlex.l"
1953 { RTOKEN(')');}
1954 YY_BREAK
1955 case 44:
1956 YY_RULE_SETUP
1957 #line 243 "ldlex.l"
1958 { RTOKEN('(');}
1959 YY_BREAK
1960 case 45:
1961 YY_RULE_SETUP
1962 #line 244 "ldlex.l"
1963 { RTOKEN(':'); }
1964 YY_BREAK
1965 case 46:
1966 YY_RULE_SETUP
1967 #line 245 "ldlex.l"
1968 { RTOKEN(';');}
1969 YY_BREAK
1970 case 47:
1971 YY_RULE_SETUP
1972 #line 246 "ldlex.l"
1973 { RTOKEN(MEMORY);}
1974 YY_BREAK
1975 case 48:
1976 YY_RULE_SETUP
1977 #line 247 "ldlex.l"
1978 { RTOKEN(ORIGIN);}
1979 YY_BREAK
1980 case 49:
1981 YY_RULE_SETUP
1982 #line 248 "ldlex.l"
1983 { RTOKEN(VERSIONK);}
1984 YY_BREAK
1985 case 50:
1986 YY_RULE_SETUP
1987 #line 249 "ldlex.l"
1988 { RTOKEN(BLOCK);}
1989 YY_BREAK
1990 case 51:
1991 YY_RULE_SETUP
1992 #line 250 "ldlex.l"
1993 { RTOKEN(BIND);}
1994 YY_BREAK
1995 case 52:
1996 YY_RULE_SETUP
1997 #line 251 "ldlex.l"
1998 { RTOKEN(LENGTH);}
1999 YY_BREAK
2000 case 53:
2001 YY_RULE_SETUP
2002 #line 252 "ldlex.l"
2003 { RTOKEN(ALIGN_K);}
2004 YY_BREAK
2005 case 54:
2006 YY_RULE_SETUP
2007 #line 253 "ldlex.l"
2008 { RTOKEN(DATA_SEGMENT_ALIGN);}
2009 YY_BREAK
2010 case 55:
2011 YY_RULE_SETUP
2012 #line 254 "ldlex.l"
2013 { RTOKEN(DATA_SEGMENT_RELRO_END);}
2014 YY_BREAK
2015 case 56:
2016 YY_RULE_SETUP
2017 #line 255 "ldlex.l"
2018 { RTOKEN(DATA_SEGMENT_END);}
2019 YY_BREAK
2020 case 57:
2021 YY_RULE_SETUP
2022 #line 256 "ldlex.l"
2023 { RTOKEN(ADDR);}
2024 YY_BREAK
2025 case 58:
2026 YY_RULE_SETUP
2027 #line 257 "ldlex.l"
2028 { RTOKEN(LOADADDR);}
2029 YY_BREAK
2030 case 59:
2031 YY_RULE_SETUP
2032 #line 258 "ldlex.l"
2033 { RTOKEN(MAX_K); }
2034 YY_BREAK
2035 case 60:
2036 YY_RULE_SETUP
2037 #line 259 "ldlex.l"
2038 { RTOKEN(MIN_K); }
2039 YY_BREAK
2040 case 61:
2041 YY_RULE_SETUP
2042 #line 260 "ldlex.l"
2043 { RTOKEN(ASSERT_K); }
2044 YY_BREAK
2045 case 62:
2046 YY_RULE_SETUP
2047 #line 261 "ldlex.l"
2048 { RTOKEN(ENTRY);}
2049 YY_BREAK
2050 case 63:
2051 YY_RULE_SETUP
2052 #line 262 "ldlex.l"
2053 { RTOKEN(EXTERN);}
2054 YY_BREAK
2055 case 64:
2056 YY_RULE_SETUP
2057 #line 263 "ldlex.l"
2058 { RTOKEN(NEXT);}
2059 YY_BREAK
2060 case 65:
2061 YY_RULE_SETUP
2062 #line 264 "ldlex.l"
2063 { RTOKEN(SIZEOF_HEADERS);}
2064 YY_BREAK
2065 case 66:
2066 YY_RULE_SETUP
2067 #line 265 "ldlex.l"
2068 { RTOKEN(SIZEOF_HEADERS);}
2069 YY_BREAK
2070 case 67:
2071 YY_RULE_SETUP
2072 #line 266 "ldlex.l"
2073 { RTOKEN(SEGMENT_START);}
2074 YY_BREAK
2075 case 68:
2076 YY_RULE_SETUP
2077 #line 267 "ldlex.l"
2078 { RTOKEN(MAP);}
2079 YY_BREAK
2080 case 69:
2081 YY_RULE_SETUP
2082 #line 268 "ldlex.l"
2083 { RTOKEN(SIZEOF);}
2084 YY_BREAK
2085 case 70:
2086 YY_RULE_SETUP
2087 #line 269 "ldlex.l"
2088 { RTOKEN(TARGET_K);}
2089 YY_BREAK
2090 case 71:
2091 YY_RULE_SETUP
2092 #line 270 "ldlex.l"
2093 { RTOKEN(SEARCH_DIR);}
2094 YY_BREAK
2095 case 72:
2096 YY_RULE_SETUP
2097 #line 271 "ldlex.l"
2098 { RTOKEN(OUTPUT);}
2099 YY_BREAK
2100 case 73:
2101 YY_RULE_SETUP
2102 #line 272 "ldlex.l"
2103 { RTOKEN(INPUT);}
2104 YY_BREAK
2105 case 74:
2106 YY_RULE_SETUP
2107 #line 273 "ldlex.l"
2108 { RTOKEN(GROUP);}
2109 YY_BREAK
2110 case 75:
2111 YY_RULE_SETUP
2112 #line 274 "ldlex.l"
2113 { RTOKEN(AS_NEEDED);}
2114 YY_BREAK
2115 case 76:
2116 YY_RULE_SETUP
2117 #line 275 "ldlex.l"
2118 { RTOKEN(DEFINED);}
2119 YY_BREAK
2120 case 77:
2121 YY_RULE_SETUP
2122 #line 276 "ldlex.l"
2123 { RTOKEN(CREATE_OBJECT_SYMBOLS);}
2124 YY_BREAK
2125 case 78:
2126 YY_RULE_SETUP
2127 #line 277 "ldlex.l"
2128 { RTOKEN( CONSTRUCTORS);}
2129 YY_BREAK
2130 case 79:
2131 YY_RULE_SETUP
2132 #line 278 "ldlex.l"
2133 { RTOKEN(FORCE_COMMON_ALLOCATION);}
2134 YY_BREAK
2135 case 80:
2136 YY_RULE_SETUP
2137 #line 279 "ldlex.l"
2138 { RTOKEN(INHIBIT_COMMON_ALLOCATION);}
2139 YY_BREAK
2140 case 81:
2141 YY_RULE_SETUP
2142 #line 280 "ldlex.l"
2143 { RTOKEN(SECTIONS);}
2144 YY_BREAK
2145 case 82:
2146 YY_RULE_SETUP
2147 #line 281 "ldlex.l"
2148 { RTOKEN(FILL);}
2149 YY_BREAK
2150 case 83:
2151 YY_RULE_SETUP
2152 #line 282 "ldlex.l"
2153 { RTOKEN(STARTUP);}
2154 YY_BREAK
2155 case 84:
2156 YY_RULE_SETUP
2157 #line 283 "ldlex.l"
2158 { RTOKEN(OUTPUT_FORMAT);}
2159 YY_BREAK
2160 case 85:
2161 YY_RULE_SETUP
2162 #line 284 "ldlex.l"
2163 { RTOKEN( OUTPUT_ARCH);}
2164 YY_BREAK
2165 case 86:
2166 YY_RULE_SETUP
2167 #line 285 "ldlex.l"
2168 { RTOKEN(HLL);}
2169 YY_BREAK
2170 case 87:
2171 YY_RULE_SETUP
2172 #line 286 "ldlex.l"
2173 { RTOKEN(SYSLIB);}
2174 YY_BREAK
2175 case 88:
2176 YY_RULE_SETUP
2177 #line 287 "ldlex.l"
2178 { RTOKEN(FLOAT);}
2179 YY_BREAK
2180 case 89:
2181 YY_RULE_SETUP
2182 #line 288 "ldlex.l"
2183 { RTOKEN( QUAD);}
2184 YY_BREAK
2185 case 90:
2186 YY_RULE_SETUP
2187 #line 289 "ldlex.l"
2188 { RTOKEN( SQUAD);}
2189 YY_BREAK
2190 case 91:
2191 YY_RULE_SETUP
2192 #line 290 "ldlex.l"
2193 { RTOKEN( LONG);}
2194 YY_BREAK
2195 case 92:
2196 YY_RULE_SETUP
2197 #line 291 "ldlex.l"
2198 { RTOKEN( SHORT);}
2199 YY_BREAK
2200 case 93:
2201 YY_RULE_SETUP
2202 #line 292 "ldlex.l"
2203 { RTOKEN( BYTE);}
2204 YY_BREAK
2205 case 94:
2206 YY_RULE_SETUP
2207 #line 293 "ldlex.l"
2208 { RTOKEN(NOFLOAT);}
2209 YY_BREAK
2210 case 95:
2211 YY_RULE_SETUP
2212 #line 294 "ldlex.l"
2213 { RTOKEN(NOCROSSREFS);}
2214 YY_BREAK
2215 case 96:
2216 YY_RULE_SETUP
2217 #line 295 "ldlex.l"
2218 { RTOKEN(OVERLAY); }
2219 YY_BREAK
2220 case 97:
2221 YY_RULE_SETUP
2222 #line 296 "ldlex.l"
2223 { RTOKEN(SORT_BY_NAME); }
2224 YY_BREAK
2225 case 98:
2226 YY_RULE_SETUP
2227 #line 297 "ldlex.l"
2228 { RTOKEN(SORT_BY_ALIGNMENT); }
2229 YY_BREAK
2230 case 99:
2231 YY_RULE_SETUP
2232 #line 298 "ldlex.l"
2233 { RTOKEN(SORT_BY_NAME); }
2234 YY_BREAK
2235 case 100:
2236 YY_RULE_SETUP
2237 #line 299 "ldlex.l"
2238 { RTOKEN(NOLOAD);}
2239 YY_BREAK
2240 case 101:
2241 YY_RULE_SETUP
2242 #line 300 "ldlex.l"
2243 { RTOKEN(DSECT);}
2244 YY_BREAK
2245 case 102:
2246 YY_RULE_SETUP
2247 #line 301 "ldlex.l"
2248 { RTOKEN(COPY);}
2249 YY_BREAK
2250 case 103:
2251 YY_RULE_SETUP
2252 #line 302 "ldlex.l"
2253 { RTOKEN(INFO);}
2254 YY_BREAK
2255 case 104:
2256 YY_RULE_SETUP
2257 #line 303 "ldlex.l"
2258 { RTOKEN(OVERLAY);}
2259 YY_BREAK
2260 case 105:
2261 YY_RULE_SETUP
2262 #line 304 "ldlex.l"
2263 { RTOKEN(ONLY_IF_RO); }
2264 YY_BREAK
2265 case 106:
2266 YY_RULE_SETUP
2267 #line 305 "ldlex.l"
2268 { RTOKEN(ONLY_IF_RW); }
2269 YY_BREAK
2270 case 107:
2271 YY_RULE_SETUP
2272 #line 306 "ldlex.l"
2273 { RTOKEN(SPECIAL); }
2274 YY_BREAK
2275 case 108:
2276 YY_RULE_SETUP
2277 #line 307 "ldlex.l"
2278 { RTOKEN(ORIGIN);}
2279 YY_BREAK
2280 case 109:
2281 YY_RULE_SETUP
2282 #line 308 "ldlex.l"
2283 { RTOKEN(ORIGIN);}
2284 YY_BREAK
2285 case 110:
2286 YY_RULE_SETUP
2287 #line 309 "ldlex.l"
2288 { RTOKEN( LENGTH);}
2289 YY_BREAK
2290 case 111:
2291 YY_RULE_SETUP
2292 #line 310 "ldlex.l"
2293 { RTOKEN( LENGTH);}
2294 YY_BREAK
2295 case 112:
2296 YY_RULE_SETUP
2297 #line 311 "ldlex.l"
2298 { RTOKEN(INCLUDE);}
2299 YY_BREAK
2300 case 113:
2301 YY_RULE_SETUP
2302 #line 312 "ldlex.l"
2303 { RTOKEN (PHDRS); }
2304 YY_BREAK
2305 case 114:
2306 YY_RULE_SETUP
2307 #line 313 "ldlex.l"
2308 { RTOKEN(AT);}
2309 YY_BREAK
2310 case 115:
2311 YY_RULE_SETUP
2312 #line 314 "ldlex.l"
2313 { RTOKEN(SUBALIGN);}
2314 YY_BREAK
2315 case 116:
2316 YY_RULE_SETUP
2317 #line 315 "ldlex.l"
2318 { RTOKEN(PROVIDE); }
2319 YY_BREAK
2320 case 117:
2321 YY_RULE_SETUP
2322 #line 316 "ldlex.l"
2323 { RTOKEN(PROVIDE_HIDDEN); }
2324 YY_BREAK
2325 case 118:
2326 YY_RULE_SETUP
2327 #line 317 "ldlex.l"
2328 { RTOKEN(KEEP); }
2329 YY_BREAK
2330 case 119:
2331 YY_RULE_SETUP
2332 #line 318 "ldlex.l"
2333 { RTOKEN(EXCLUDE_FILE); }
2334 YY_BREAK
2335 case 120:
2336 YY_RULE_SETUP
2337 #line 319 "ldlex.l"
2338 { ++ lineno; }
2339 YY_BREAK
2340 case 121:
2341 YY_RULE_SETUP
2342 #line 320 "ldlex.l"
2343 { ++ lineno; RTOKEN(NEWLINE); }
2344 YY_BREAK
2345 case 122:
2346 YY_RULE_SETUP
2347 #line 321 "ldlex.l"
2348 { /* Mri comment line */ }
2349 YY_BREAK
2350 case 123:
2351 YY_RULE_SETUP
2352 #line 322 "ldlex.l"
2353 { /* Mri comment line */ }
2354 YY_BREAK
2355 case 124:
2356 YY_RULE_SETUP
2357 #line 323 "ldlex.l"
2358 { RTOKEN(ENDWORD); }
2359 YY_BREAK
2360 case 125:
2361 YY_RULE_SETUP
2362 #line 324 "ldlex.l"
2363 { RTOKEN(ALIGNMOD);}
2364 YY_BREAK
2365 case 126:
2366 YY_RULE_SETUP
2367 #line 325 "ldlex.l"
2368 { RTOKEN(ALIGN_K);}
2369 YY_BREAK
2370 case 127:
2371 YY_RULE_SETUP
2372 #line 326 "ldlex.l"
2373 { RTOKEN(CHIP); }
2374 YY_BREAK
2375 case 128:
2376 YY_RULE_SETUP
2377 #line 327 "ldlex.l"
2378 { RTOKEN(BASE); }
2379 YY_BREAK
2380 case 129:
2381 YY_RULE_SETUP
2382 #line 328 "ldlex.l"
2383 { RTOKEN(ALIAS); }
2384 YY_BREAK
2385 case 130:
2386 YY_RULE_SETUP
2387 #line 329 "ldlex.l"
2388 { RTOKEN(TRUNCATE); }
2389 YY_BREAK
2390 case 131:
2391 YY_RULE_SETUP
2392 #line 330 "ldlex.l"
2393 { RTOKEN(LOAD); }
2394 YY_BREAK
2395 case 132:
2396 YY_RULE_SETUP
2397 #line 331 "ldlex.l"
2398 { RTOKEN(PUBLIC); }
2399 YY_BREAK
2400 case 133:
2401 YY_RULE_SETUP
2402 #line 332 "ldlex.l"
2403 { RTOKEN(ORDER); }
2404 YY_BREAK
2405 case 134:
2406 YY_RULE_SETUP
2407 #line 333 "ldlex.l"
2408 { RTOKEN(NAMEWORD); }
2409 YY_BREAK
2410 case 135:
2411 YY_RULE_SETUP
2412 #line 334 "ldlex.l"
2413 { RTOKEN(FORMAT); }
2414 YY_BREAK
2415 case 136:
2416 YY_RULE_SETUP
2417 #line 335 "ldlex.l"
2418 { RTOKEN(CASE); }
2419 YY_BREAK
2420 case 137:
2421 YY_RULE_SETUP
2422 #line 336 "ldlex.l"
2423 { RTOKEN(START); }
2424 YY_BREAK
2425 case 138:
2426 YY_RULE_SETUP
2427 #line 337 "ldlex.l"
2428 { RTOKEN(LIST); /* LIST and ignore to end of line */ }
2429 YY_BREAK
2430 case 139:
2431 YY_RULE_SETUP
2432 #line 338 "ldlex.l"
2433 { RTOKEN(SECT); }
2434 YY_BREAK
2435 case 140:
2436 YY_RULE_SETUP
2437 #line 339 "ldlex.l"
2438 { RTOKEN(ABSOLUTE); }
2439 YY_BREAK
2440 case 141:
2441 YY_RULE_SETUP
2442 #line 340 "ldlex.l"
2443 { RTOKEN(ENDWORD); }
2444 YY_BREAK
2445 case 142:
2446 YY_RULE_SETUP
2447 #line 341 "ldlex.l"
2448 { RTOKEN(ALIGNMOD);}
2449 YY_BREAK
2450 case 143:
2451 YY_RULE_SETUP
2452 #line 342 "ldlex.l"
2453 { RTOKEN(ALIGN_K);}
2454 YY_BREAK
2455 case 144:
2456 YY_RULE_SETUP
2457 #line 343 "ldlex.l"
2458 { RTOKEN(CHIP); }
2459 YY_BREAK
2460 case 145:
2461 YY_RULE_SETUP
2462 #line 344 "ldlex.l"
2463 { RTOKEN(BASE); }
2464 YY_BREAK
2465 case 146:
2466 YY_RULE_SETUP
2467 #line 345 "ldlex.l"
2468 { RTOKEN(ALIAS); }
2469 YY_BREAK
2470 case 147:
2471 YY_RULE_SETUP
2472 #line 346 "ldlex.l"
2473 { RTOKEN(TRUNCATE); }
2474 YY_BREAK
2475 case 148:
2476 YY_RULE_SETUP
2477 #line 347 "ldlex.l"
2478 { RTOKEN(LOAD); }
2479 YY_BREAK
2480 case 149:
2481 YY_RULE_SETUP
2482 #line 348 "ldlex.l"
2483 { RTOKEN(PUBLIC); }
2484 YY_BREAK
2485 case 150:
2486 YY_RULE_SETUP
2487 #line 349 "ldlex.l"
2488 { RTOKEN(ORDER); }
2489 YY_BREAK
2490 case 151:
2491 YY_RULE_SETUP
2492 #line 350 "ldlex.l"
2493 { RTOKEN(NAMEWORD); }
2494 YY_BREAK
2495 case 152:
2496 YY_RULE_SETUP
2497 #line 351 "ldlex.l"
2498 { RTOKEN(FORMAT); }
2499 YY_BREAK
2500 case 153:
2501 YY_RULE_SETUP
2502 #line 352 "ldlex.l"
2503 { RTOKEN(CASE); }
2504 YY_BREAK
2505 case 154:
2506 YY_RULE_SETUP
2507 #line 353 "ldlex.l"
2508 { RTOKEN(EXTERN); }
2509 YY_BREAK
2510 case 155:
2511 YY_RULE_SETUP
2512 #line 354 "ldlex.l"
2513 { RTOKEN(START); }
2514 YY_BREAK
2515 case 156:
2516 YY_RULE_SETUP
2517 #line 355 "ldlex.l"
2518 { RTOKEN(LIST); /* LIST and ignore to end of line */ }
2519 YY_BREAK
2520 case 157:
2521 YY_RULE_SETUP
2522 #line 356 "ldlex.l"
2523 { RTOKEN(SECT); }
2524 YY_BREAK
2525 case 158:
2526 YY_RULE_SETUP
2527 #line 357 "ldlex.l"
2528 { RTOKEN(ABSOLUTE); }
2529 YY_BREAK
2530 case 159:
2531 YY_RULE_SETUP
2532 #line 359 "ldlex.l"
2534 /* Filename without commas, needed to parse mri stuff */
2535 yylval.name = xstrdup (yytext);
2536 return NAME;
2538 YY_BREAK
2539 case 160:
2540 YY_RULE_SETUP
2541 #line 366 "ldlex.l"
2543 yylval.name = xstrdup (yytext);
2544 return NAME;
2546 YY_BREAK
2547 case 161:
2548 YY_RULE_SETUP
2549 #line 370 "ldlex.l"
2551 yylval.name = xstrdup (yytext + 2);
2552 return LNAME;
2554 YY_BREAK
2555 case 162:
2556 YY_RULE_SETUP
2557 #line 374 "ldlex.l"
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
2562 try again. */
2563 if (yytext[0] == '/' && yytext[1] == '*')
2565 yyless (2);
2566 comment ();
2568 else
2570 yylval.name = xstrdup (yytext);
2571 return NAME;
2574 YY_BREAK
2575 case 163:
2576 YY_RULE_SETUP
2577 #line 391 "ldlex.l"
2579 /* No matter the state, quotes
2580 give what's inside */
2581 yylval.name = xstrdup (yytext + 1);
2582 yylval.name[yyleng - 2] = 0;
2583 return NAME;
2585 YY_BREAK
2586 case 164:
2587 YY_RULE_SETUP
2588 #line 398 "ldlex.l"
2589 { lineno++;}
2590 YY_BREAK
2591 case 165:
2592 YY_RULE_SETUP
2593 #line 399 "ldlex.l"
2595 YY_BREAK
2596 case 166:
2597 YY_RULE_SETUP
2598 #line 401 "ldlex.l"
2599 { return *yytext; }
2600 YY_BREAK
2601 case 167:
2602 YY_RULE_SETUP
2603 #line 403 "ldlex.l"
2604 { RTOKEN(GLOBAL); }
2605 YY_BREAK
2606 case 168:
2607 YY_RULE_SETUP
2608 #line 405 "ldlex.l"
2609 { RTOKEN(LOCAL); }
2610 YY_BREAK
2611 case 169:
2612 YY_RULE_SETUP
2613 #line 407 "ldlex.l"
2614 { RTOKEN(EXTERN); }
2615 YY_BREAK
2616 case 170:
2617 YY_RULE_SETUP
2618 #line 409 "ldlex.l"
2619 { yylval.name = xstrdup (yytext);
2620 return VERS_IDENTIFIER; }
2621 YY_BREAK
2622 case 171:
2623 YY_RULE_SETUP
2624 #line 412 "ldlex.l"
2625 { yylval.name = xstrdup (yytext);
2626 return VERS_TAG; }
2627 YY_BREAK
2628 case 172:
2629 YY_RULE_SETUP
2630 #line 415 "ldlex.l"
2631 { BEGIN(VERS_SCRIPT); return *yytext; }
2632 YY_BREAK
2633 case 173:
2634 YY_RULE_SETUP
2635 #line 417 "ldlex.l"
2636 { BEGIN(VERS_NODE);
2637 vers_node_nesting = 0;
2638 return *yytext;
2640 YY_BREAK
2641 case 174:
2642 YY_RULE_SETUP
2643 #line 421 "ldlex.l"
2644 { return *yytext; }
2645 YY_BREAK
2646 case 175:
2647 YY_RULE_SETUP
2648 #line 422 "ldlex.l"
2649 { vers_node_nesting++; return *yytext; }
2650 YY_BREAK
2651 case 176:
2652 YY_RULE_SETUP
2653 #line 423 "ldlex.l"
2654 { if (--vers_node_nesting < 0)
2655 BEGIN(VERS_SCRIPT);
2656 return *yytext;
2658 YY_BREAK
2659 case 177:
2660 YY_RULE_SETUP
2661 #line 428 "ldlex.l"
2662 { lineno++; }
2663 YY_BREAK
2664 case 178:
2665 YY_RULE_SETUP
2666 #line 430 "ldlex.l"
2667 { /* Eat up comments */ }
2668 YY_BREAK
2669 case 179:
2670 YY_RULE_SETUP
2671 #line 432 "ldlex.l"
2672 { /* Eat up whitespace */ }
2673 YY_BREAK
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):
2683 #line 434 "ldlex.l"
2685 include_stack_ptr--;
2687 if (include_stack_ptr == 0)
2689 yyterminate ();
2691 else
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];
2699 return END;
2701 YY_BREAK
2702 case 180:
2703 YY_RULE_SETUP
2704 #line 452 "ldlex.l"
2705 lex_warn_invalid (" in script", yytext);
2706 YY_BREAK
2707 case 181:
2708 YY_RULE_SETUP
2709 #line 453 "ldlex.l"
2710 lex_warn_invalid (" in expression", yytext);
2711 YY_BREAK
2712 case 182:
2713 YY_RULE_SETUP
2714 #line 455 "ldlex.l"
2715 ECHO;
2716 YY_BREAK
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
2749 * in input().
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;
2777 goto yy_match;
2780 else
2782 yy_cp = yy_c_buf_p;
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;
2793 if ( yywrap() )
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);
2807 goto do_action;
2810 else
2812 if ( ! yy_did_buffer_switch_on_eof )
2813 YY_NEW_FILE;
2815 break;
2818 case EOB_ACT_CONTINUE_SCAN:
2819 yy_c_buf_p =
2820 yytext_ptr + yy_amount_of_matched_text;
2822 yy_current_state = yy_get_previous_state();
2824 yy_cp = yy_c_buf_p;
2825 yy_bp = yytext_ptr + YY_MORE_ADJ;
2826 goto yy_match;
2828 case EOB_ACT_LAST_MATCH:
2829 yy_c_buf_p =
2830 &yy_current_buffer->yy_ch_buf[yy_n_chars];
2832 yy_current_state = yy_get_previous_state();
2834 yy_cp = yy_c_buf_p;
2835 yy_bp = yytext_ptr + YY_MORE_ADJ;
2836 goto yy_find_action;
2838 break;
2841 default:
2842 YY_FATAL_ERROR(
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;
2862 int ret_val;
2864 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
2865 YY_FATAL_ERROR(
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;
2878 else
2880 /* We matched some text prior to the EOB, first
2881 * process it.
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,
2897 * just force an EOF
2899 yy_current_buffer->yy_n_chars = yy_n_chars = 0;
2901 else
2903 int num_to_read =
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
2909 YY_FATAL_ERROR(
2910 "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
2911 #else
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;
2925 else
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 );
2933 else
2934 /* Can't grow it, we don't own it. */
2935 b->yy_ch_buf = 0;
2937 if ( ! b->yy_ch_buf )
2938 YY_FATAL_ERROR(
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 -
2944 number_to_move - 1;
2945 #endif
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;
2963 yyrestart( yyin );
2966 else
2968 ret_val = EOB_ACT_LAST_MATCH;
2969 yy_current_buffer->yy_buffer_status =
2970 YY_BUFFER_EOF_PENDING;
2974 else
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];
2983 return ret_val;
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
3019 * synopsis
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 )
3025 #else
3026 static yy_state_type yy_try_NUL_trans( yy_current_state )
3027 yy_state_type yy_current_state;
3028 #endif
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;
3052 #ifndef YY_NO_UNPUT
3053 #ifdef YY_USE_PROTOS
3054 static void yyunput( int c, register char *yy_bp )
3055 #else
3056 static void yyunput( c, yy_bp )
3057 int c;
3058 register char *yy_bp;
3059 #endif
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;
3090 yytext_ptr = yy_bp;
3091 yy_hold_char = *yy_cp;
3092 yy_c_buf_p = yy_cp;
3094 #endif /* ifndef YY_NO_UNPUT */
3097 #ifdef __cplusplus
3098 static int yyinput()
3099 #else
3100 static int input()
3101 #endif
3103 int c;
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. */
3115 *yy_c_buf_p = '\0';
3117 else
3118 { /* need more input */
3119 int offset = yy_c_buf_p - yytext_ptr;
3120 ++yy_c_buf_p;
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. */
3136 yyrestart( yyin );
3138 /* fall through */
3140 case EOB_ACT_END_OF_FILE:
3142 if ( yywrap() )
3143 return EOF;
3145 if ( ! yy_did_buffer_switch_on_eof )
3146 YY_NEW_FILE;
3147 #ifdef __cplusplus
3148 return yyinput();
3149 #else
3150 return input();
3151 #endif
3154 case EOB_ACT_CONTINUE_SCAN:
3155 yy_c_buf_p = yytext_ptr + offset;
3156 break;
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;
3166 return c;
3170 #ifdef YY_USE_PROTOS
3171 void yyrestart( FILE *input_file )
3172 #else
3173 void yyrestart( input_file )
3174 FILE *input_file;
3175 #endif
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 )
3187 #else
3188 void yy_switch_to_buffer( new_buffer )
3189 YY_BUFFER_STATE new_buffer;
3190 #endif
3192 if ( yy_current_buffer == new_buffer )
3193 return;
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 )
3217 #else
3218 void yy_load_buffer_state()
3219 #endif
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 )
3230 #else
3231 YY_BUFFER_STATE yy_create_buffer( file, size )
3232 FILE *file;
3233 int size;
3234 #endif
3236 YY_BUFFER_STATE b;
3238 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
3239 if ( ! b )
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 );
3255 return b;
3259 #ifdef YY_USE_PROTOS
3260 void yy_delete_buffer( YY_BUFFER_STATE b )
3261 #else
3262 void yy_delete_buffer( b )
3263 YY_BUFFER_STATE b;
3264 #endif
3266 if ( ! b )
3267 return;
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 );
3279 #ifndef _WIN32
3280 #include <unistd.h>
3281 #else
3282 #ifndef YY_ALWAYS_INTERACTIVE
3283 #ifndef YY_NEVER_INTERACTIVE
3284 extern int isatty YY_PROTO(( int ));
3285 #endif
3286 #endif
3287 #endif
3289 #ifdef YY_USE_PROTOS
3290 void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
3291 #else
3292 void yy_init_buffer( b, file )
3293 YY_BUFFER_STATE b;
3294 FILE *file;
3295 #endif
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;
3306 #else
3307 #if YY_NEVER_INTERACTIVE
3308 b->yy_is_interactive = 0;
3309 #else
3310 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
3311 #endif
3312 #endif
3316 #ifdef YY_USE_PROTOS
3317 void yy_flush_buffer( YY_BUFFER_STATE b )
3318 #else
3319 void yy_flush_buffer( b )
3320 YY_BUFFER_STATE b;
3321 #endif
3324 if ( ! b )
3325 return;
3327 b->yy_n_chars = 0;
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];
3338 b->yy_at_bol = 1;
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 )
3349 #else
3350 YY_BUFFER_STATE yy_scan_buffer( base, size )
3351 char *base;
3352 yy_size_t size;
3353 #endif
3355 YY_BUFFER_STATE b;
3357 if ( size < 2 ||
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. */
3361 return 0;
3363 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
3364 if ( ! b )
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;
3373 b->yy_at_bol = 1;
3374 b->yy_fill_buffer = 0;
3375 b->yy_buffer_status = YY_BUFFER_NEW;
3377 yy_switch_to_buffer( b );
3379 return b;
3381 #endif
3384 #ifndef YY_NO_SCAN_STRING
3385 #ifdef YY_USE_PROTOS
3386 YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
3387 #else
3388 YY_BUFFER_STATE yy_scan_string( yy_str )
3389 yyconst char *yy_str;
3390 #endif
3392 int len;
3393 for ( len = 0; yy_str[len]; ++len )
3396 return yy_scan_bytes( yy_str, len );
3398 #endif
3401 #ifndef YY_NO_SCAN_BYTES
3402 #ifdef YY_USE_PROTOS
3403 YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
3404 #else
3405 YY_BUFFER_STATE yy_scan_bytes( bytes, len )
3406 yyconst char *bytes;
3407 int len;
3408 #endif
3410 YY_BUFFER_STATE b;
3411 char *buf;
3412 yy_size_t n;
3413 int i;
3415 /* Get memory for full buffer, including space for trailing EOB's. */
3416 n = len + 2;
3417 buf = (char *) yy_flex_alloc( n );
3418 if ( ! buf )
3419 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
3421 for ( i = 0; i < len; ++i )
3422 buf[i] = bytes[i];
3424 buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
3426 b = yy_scan_buffer( buf, n );
3427 if ( ! b )
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;
3435 return b;
3437 #endif
3440 #ifndef YY_NO_PUSH_STATE
3441 #ifdef YY_USE_PROTOS
3442 static void yy_push_state( int new_state )
3443 #else
3444 static void yy_push_state( new_state )
3445 int new_state;
3446 #endif
3448 if ( yy_start_stack_ptr >= yy_start_stack_depth )
3450 yy_size_t new_size;
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 );
3458 else
3459 yy_start_stack = (int *) yy_flex_realloc(
3460 (void *) yy_start_stack, new_size );
3462 if ( ! yy_start_stack )
3463 YY_FATAL_ERROR(
3464 "out of memory expanding start-condition stack" );
3467 yy_start_stack[yy_start_stack_ptr++] = YY_START;
3469 BEGIN(new_state);
3471 #endif
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]);
3482 #endif
3485 #ifndef YY_NO_TOP_STATE
3486 static int yy_top_state()
3488 return yy_start_stack[yy_start_stack_ptr - 1];
3490 #endif
3492 #ifndef YY_EXIT_FAILURE
3493 #define YY_EXIT_FAILURE 2
3494 #endif
3496 #ifdef YY_USE_PROTOS
3497 static void yy_fatal_error( yyconst char msg[] )
3498 #else
3499 static void yy_fatal_error( msg )
3500 char msg[];
3501 #endif
3503 (void) fprintf( stderr, "%s\n", msg );
3504 exit( YY_EXIT_FAILURE );
3509 /* Redefine yyless() so it works in section 3 code. */
3511 #undef yyless
3512 #define yyless(n) \
3513 do \
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'; \
3520 yyleng = n; \
3522 while ( 0 )
3525 /* Internal utility routines. */
3527 #ifndef yytext_ptr
3528 #ifdef YY_USE_PROTOS
3529 static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
3530 #else
3531 static void yy_flex_strncpy( s1, s2, n )
3532 char *s1;
3533 yyconst char *s2;
3534 int n;
3535 #endif
3537 register int i;
3538 for ( i = 0; i < n; ++i )
3539 s1[i] = s2[i];
3541 #endif
3543 #ifdef YY_NEED_STRLEN
3544 #ifdef YY_USE_PROTOS
3545 static int yy_flex_strlen( yyconst char *s )
3546 #else
3547 static int yy_flex_strlen( s )
3548 yyconst char *s;
3549 #endif
3551 register int n;
3552 for ( n = 0; s[n]; ++n )
3555 return n;
3557 #endif
3560 #ifdef YY_USE_PROTOS
3561 static void *yy_flex_alloc( yy_size_t size )
3562 #else
3563 static void *yy_flex_alloc( size )
3564 yy_size_t size;
3565 #endif
3567 return (void *) malloc( size );
3570 #ifdef YY_USE_PROTOS
3571 static void *yy_flex_realloc( void *ptr, yy_size_t size )
3572 #else
3573 static void *yy_flex_realloc( ptr, size )
3574 void *ptr;
3575 yy_size_t size;
3576 #endif
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 )
3590 #else
3591 static void yy_flex_free( ptr )
3592 void *ptr;
3593 #endif
3595 free( ptr );
3598 #if YY_MAIN
3599 int main()
3601 yylex();
3602 return 0;
3604 #endif
3605 #line 455 "ldlex.l"
3609 /* Switch flex to reading script file NAME, open on FILE,
3610 saving the current input info on the include stack. */
3612 void
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++;
3624 lineno = 1;
3625 yyin = file;
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)
3635 YY_BUFFER_STATE b;
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;
3655 b->yy_at_bol = 1;
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;
3662 #else
3663 b->yy_eof_status = EOF_NOT_SEEN;
3664 #endif
3666 return b;
3669 /* Switch flex to reading from STRING, saving the current input info
3670 on the include stack. */
3672 void
3673 lex_redirect (const char *string)
3675 YY_BUFFER_STATE tmp;
3677 yy_init = 0;
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++;
3686 lineno = 1;
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;
3697 void
3698 ldlex_script (void)
3700 *(state_stack_p)++ = yy_start;
3701 BEGIN (SCRIPT);
3704 void
3705 ldlex_mri_script (void)
3707 *(state_stack_p)++ = yy_start;
3708 BEGIN (MRI);
3711 void
3712 ldlex_version_script (void)
3714 *(state_stack_p)++ = yy_start;
3715 BEGIN (VERS_START);
3718 void
3719 ldlex_version_file (void)
3721 *(state_stack_p)++ = yy_start;
3722 BEGIN (VERS_SCRIPT);
3725 void
3726 ldlex_defsym (void)
3728 *(state_stack_p)++ = yy_start;
3729 BEGIN (DEFSYMEXP);
3732 void
3733 ldlex_expression (void)
3735 *(state_stack_p)++ = yy_start;
3736 BEGIN (EXPRESSION);
3739 void
3740 ldlex_both (void)
3742 *(state_stack_p)++ = yy_start;
3743 BEGIN (BOTH);
3746 void
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. */
3756 static void
3757 yy_input (char *buf, int *result, int max_size)
3759 *result = 0;
3760 if (YY_CURRENT_BUFFER->yy_input_file)
3762 if (yyin)
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. */
3773 static void
3774 comment (void)
3776 int c;
3778 while (1)
3780 c = input();
3781 while (c != '*' && c != EOF)
3783 if (c == '\n')
3784 lineno++;
3785 c = input();
3788 if (c == '*')
3790 c = input();
3791 while (c == '*')
3792 c = input();
3793 if (c == '/')
3794 break; /* found the end */
3797 if (c == '\n')
3798 lineno++;
3800 if (c == EOF)
3802 einfo( "%F%P: EOF in comment\n");
3803 break;
3808 /* Warn the user about a garbage character WHAT in the input
3809 in context WHERE. */
3811 static void
3812 lex_warn_invalid (char *where, char *what)
3814 char buf[5];
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);
3829 what = buf;
3832 einfo ("%P:%S: ignoring invalid character `%s'%s\n", what, where);