blob: 9abddbf0198e8b0126aa69f2875f54a16396f2a2 [file] [log] [blame]
Chris Lattnera62e8e42007-12-29 20:47:37 +00001#line 2 "ConfigLexer.cpp"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002
Chris Lattnera62e8e42007-12-29 20:47:37 +00003#line 4 "ConfigLexer.cpp"
4
5#define YY_INT_ALIGNED short int
6
Dan Gohmanf17a25c2007-07-18 16:29:46 +00007/* A lexical scanner generated by flex */
8
Dan Gohmanf17a25c2007-07-18 16:29:46 +00009#define FLEX_SCANNER
10#define YY_FLEX_MAJOR_VERSION 2
11#define YY_FLEX_MINOR_VERSION 5
Chris Lattnera62e8e42007-12-29 20:47:37 +000012#define YY_FLEX_SUBMINOR_VERSION 33
13#if YY_FLEX_SUBMINOR_VERSION > 0
14#define FLEX_BETA
15#endif
Dan Gohmanf17a25c2007-07-18 16:29:46 +000016
Chris Lattnera62e8e42007-12-29 20:47:37 +000017/* First, we deal with platform-specific or compiler-specific issues. */
18
19/* begin standard C headers. */
Dan Gohmanf17a25c2007-07-18 16:29:46 +000020#include <stdio.h>
Chris Lattnera62e8e42007-12-29 20:47:37 +000021#include <string.h>
22#include <errno.h>
23#include <stdlib.h>
Dan Gohmanf17a25c2007-07-18 16:29:46 +000024
Chris Lattnera62e8e42007-12-29 20:47:37 +000025/* end standard C headers. */
Dan Gohmanf17a25c2007-07-18 16:29:46 +000026
Chris Lattnera62e8e42007-12-29 20:47:37 +000027/* flex integer type definitions */
28
29#ifndef FLEXINT_H
30#define FLEXINT_H
31
32/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
33
34#if __STDC_VERSION__ >= 199901L
35
36/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
37 * if you want the limit (max/min) macros for int types.
38 */
39#ifndef __STDC_LIMIT_MACROS
40#define __STDC_LIMIT_MACROS 1
Dan Gohmanf17a25c2007-07-18 16:29:46 +000041#endif
42
Chris Lattnera62e8e42007-12-29 20:47:37 +000043#include <inttypes.h>
44typedef int8_t flex_int8_t;
45typedef uint8_t flex_uint8_t;
46typedef int16_t flex_int16_t;
47typedef uint16_t flex_uint16_t;
48typedef int32_t flex_int32_t;
49typedef uint32_t flex_uint32_t;
50#else
51typedef signed char flex_int8_t;
52typedef short int flex_int16_t;
53typedef int flex_int32_t;
54typedef unsigned char flex_uint8_t;
55typedef unsigned short int flex_uint16_t;
56typedef unsigned int flex_uint32_t;
57#endif /* ! C99 */
58
59/* Limits of integral types. */
60#ifndef INT8_MIN
61#define INT8_MIN (-128)
62#endif
63#ifndef INT16_MIN
64#define INT16_MIN (-32767-1)
65#endif
66#ifndef INT32_MIN
67#define INT32_MIN (-2147483647-1)
68#endif
69#ifndef INT8_MAX
70#define INT8_MAX (127)
71#endif
72#ifndef INT16_MAX
73#define INT16_MAX (32767)
74#endif
75#ifndef INT32_MAX
76#define INT32_MAX (2147483647)
77#endif
78#ifndef UINT8_MAX
79#define UINT8_MAX (255U)
80#endif
81#ifndef UINT16_MAX
82#define UINT16_MAX (65535U)
83#endif
84#ifndef UINT32_MAX
85#define UINT32_MAX (4294967295U)
86#endif
87
88#endif /* ! FLEXINT_H */
Dan Gohmanf17a25c2007-07-18 16:29:46 +000089
90#ifdef __cplusplus
91
Dan Gohmanf17a25c2007-07-18 16:29:46 +000092/* The "const" storage-class-modifier is valid. */
93#define YY_USE_CONST
94
95#else /* ! __cplusplus */
96
97#if __STDC__
98
Dan Gohmanf17a25c2007-07-18 16:29:46 +000099#define YY_USE_CONST
100
101#endif /* __STDC__ */
102#endif /* ! __cplusplus */
103
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000104#ifdef YY_USE_CONST
105#define yyconst const
106#else
107#define yyconst
108#endif
109
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000110/* Returned upon end-of-file. */
111#define YY_NULL 0
112
113/* Promotes a possibly negative, possibly signed char to an unsigned
114 * integer for use as an array index. If the signed char is negative,
115 * we want to instead treat it as an 8-bit unsigned char, hence the
116 * double cast.
117 */
118#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
119
120/* Enter a start condition. This macro really ought to take a parameter,
121 * but we do it the disgusting crufty way forced on us by the ()-less
122 * definition of BEGIN.
123 */
Chris Lattnera62e8e42007-12-29 20:47:37 +0000124#define BEGIN (yy_start) = 1 + 2 *
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000125
126/* Translate the current start state into a value that can be later handed
127 * to BEGIN to return to the state. The YYSTATE alias is for lex
128 * compatibility.
129 */
Chris Lattnera62e8e42007-12-29 20:47:37 +0000130#define YY_START (((yy_start) - 1) / 2)
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000131#define YYSTATE YY_START
132
133/* Action number for EOF rule of a given start state. */
134#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
135
136/* Special action meaning "start processing a new file". */
Chris Lattnera62e8e42007-12-29 20:47:37 +0000137#define YY_NEW_FILE Configrestart(Configin )
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000138
139#define YY_END_OF_BUFFER_CHAR 0
140
141/* Size of default input buffer. */
Chris Lattnera62e8e42007-12-29 20:47:37 +0000142#ifndef YY_BUF_SIZE
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000143#define YY_BUF_SIZE (16384*64)
Chris Lattnera62e8e42007-12-29 20:47:37 +0000144#endif
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000145
Chris Lattnera62e8e42007-12-29 20:47:37 +0000146/* The state buf must be large enough to hold one state per character in the main buffer.
147 */
148#define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
149
150#ifndef YY_TYPEDEF_YY_BUFFER_STATE
151#define YY_TYPEDEF_YY_BUFFER_STATE
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000152typedef struct yy_buffer_state *YY_BUFFER_STATE;
Chris Lattnera62e8e42007-12-29 20:47:37 +0000153#endif
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000154
Chris Lattnera62e8e42007-12-29 20:47:37 +0000155extern int Configleng;
156
157extern FILE *Configin, *Configout;
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000158
159#define EOB_ACT_CONTINUE_SCAN 0
160#define EOB_ACT_END_OF_FILE 1
161#define EOB_ACT_LAST_MATCH 2
162
Chris Lattnera62e8e42007-12-29 20:47:37 +0000163 #define YY_LESS_LINENO(n)
164
165/* Return all but the first "n" matched characters back to the input stream. */
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000166#define yyless(n) \
167 do \
168 { \
Chris Lattnera62e8e42007-12-29 20:47:37 +0000169 /* Undo effects of setting up Configtext. */ \
170 int yyless_macro_arg = (n); \
171 YY_LESS_LINENO(yyless_macro_arg);\
172 *yy_cp = (yy_hold_char); \
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000173 YY_RESTORE_YY_MORE_OFFSET \
Chris Lattnera62e8e42007-12-29 20:47:37 +0000174 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
175 YY_DO_BEFORE_ACTION; /* set up Configtext again */ \
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000176 } \
177 while ( 0 )
178
Chris Lattnera62e8e42007-12-29 20:47:37 +0000179#define unput(c) yyunput( c, (yytext_ptr) )
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000180
181/* The following is because we cannot portably get our hands on size_t
182 * (without autoconf's help, which isn't available because we want
183 * flex-generated scanners to compile on their own).
184 */
Chris Lattnera62e8e42007-12-29 20:47:37 +0000185
186#ifndef YY_TYPEDEF_YY_SIZE_T
187#define YY_TYPEDEF_YY_SIZE_T
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000188typedef unsigned int yy_size_t;
Chris Lattnera62e8e42007-12-29 20:47:37 +0000189#endif
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000190
Chris Lattnera62e8e42007-12-29 20:47:37 +0000191#ifndef YY_STRUCT_YY_BUFFER_STATE
192#define YY_STRUCT_YY_BUFFER_STATE
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000193struct yy_buffer_state
194 {
195 FILE *yy_input_file;
196
197 char *yy_ch_buf; /* input buffer */
198 char *yy_buf_pos; /* current position in input buffer */
199
200 /* Size of input buffer in bytes, not including room for EOB
201 * characters.
202 */
203 yy_size_t yy_buf_size;
204
205 /* Number of characters read into yy_ch_buf, not including EOB
206 * characters.
207 */
208 int yy_n_chars;
209
210 /* Whether we "own" the buffer - i.e., we know we created it,
211 * and can realloc() it to grow it, and should free() it to
212 * delete it.
213 */
214 int yy_is_our_buffer;
215
216 /* Whether this is an "interactive" input source; if so, and
217 * if we're using stdio for input, then we want to use getc()
218 * instead of fread(), to make sure we stop fetching input after
219 * each newline.
220 */
221 int yy_is_interactive;
222
223 /* Whether we're considered to be at the beginning of a line.
224 * If so, '^' rules will be active on the next match, otherwise
225 * not.
226 */
227 int yy_at_bol;
228
Chris Lattnera62e8e42007-12-29 20:47:37 +0000229 int yy_bs_lineno; /**< The line count. */
230 int yy_bs_column; /**< The column count. */
231
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000232 /* Whether to try to fill the input buffer when we reach the
233 * end of it.
234 */
235 int yy_fill_buffer;
236
237 int yy_buffer_status;
Chris Lattnera62e8e42007-12-29 20:47:37 +0000238
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000239#define YY_BUFFER_NEW 0
240#define YY_BUFFER_NORMAL 1
241 /* When an EOF's been seen but there's still some text to process
242 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
243 * shouldn't try reading from the input source any more. We might
244 * still have a bunch of tokens to match, though, because of
245 * possible backing-up.
246 *
247 * When we actually see the EOF, we change the status to "new"
Chris Lattnera62e8e42007-12-29 20:47:37 +0000248 * (via Configrestart()), so that the user can continue scanning by
249 * just pointing Configin at a new input file.
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000250 */
251#define YY_BUFFER_EOF_PENDING 2
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000252
Chris Lattnera62e8e42007-12-29 20:47:37 +0000253 };
254#endif /* !YY_STRUCT_YY_BUFFER_STATE */
255
256/* Stack of input buffers. */
257static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
258static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
259static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000260
261/* We provide macros for accessing buffer states in case in the
262 * future we want to put the buffer states in a more general
263 * "scanner state".
Chris Lattnera62e8e42007-12-29 20:47:37 +0000264 *
265 * Returns the top of the stack, or NULL.
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000266 */
Chris Lattnera62e8e42007-12-29 20:47:37 +0000267#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
268 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
269 : NULL)
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000270
Chris Lattnera62e8e42007-12-29 20:47:37 +0000271/* Same as previous macro, but useful when we know that the buffer stack is not
272 * NULL or when we need an lvalue. For internal use only.
273 */
274#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000275
Chris Lattnera62e8e42007-12-29 20:47:37 +0000276/* yy_hold_char holds the character lost when Configtext is formed. */
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000277static char yy_hold_char;
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000278static int yy_n_chars; /* number of characters read into yy_ch_buf */
Chris Lattnera62e8e42007-12-29 20:47:37 +0000279int Configleng;
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000280
281/* Points to current character in buffer. */
282static char *yy_c_buf_p = (char *) 0;
Chris Lattnera62e8e42007-12-29 20:47:37 +0000283static int yy_init = 0; /* whether we need to initialize */
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000284static int yy_start = 0; /* start state number */
285
Chris Lattnera62e8e42007-12-29 20:47:37 +0000286/* Flag which is used to allow Configwrap()'s to do buffer switches
287 * instead of setting up a fresh Configin. A bit of a hack ...
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000288 */
289static int yy_did_buffer_switch_on_eof;
290
Chris Lattnera62e8e42007-12-29 20:47:37 +0000291void Configrestart (FILE *input_file );
292void Config_switch_to_buffer (YY_BUFFER_STATE new_buffer );
293YY_BUFFER_STATE Config_create_buffer (FILE *file,int size );
294void Config_delete_buffer (YY_BUFFER_STATE b );
295void Config_flush_buffer (YY_BUFFER_STATE b );
296void Configpush_buffer_state (YY_BUFFER_STATE new_buffer );
297void Configpop_buffer_state (void );
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000298
Chris Lattnera62e8e42007-12-29 20:47:37 +0000299static void Configensure_buffer_stack (void );
300static void Config_load_buffer_state (void );
301static void Config_init_buffer (YY_BUFFER_STATE b,FILE *file );
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000302
Chris Lattnera62e8e42007-12-29 20:47:37 +0000303#define YY_FLUSH_BUFFER Config_flush_buffer(YY_CURRENT_BUFFER )
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000304
Chris Lattnera62e8e42007-12-29 20:47:37 +0000305YY_BUFFER_STATE Config_scan_buffer (char *base,yy_size_t size );
306YY_BUFFER_STATE Config_scan_string (yyconst char *yy_str );
307YY_BUFFER_STATE Config_scan_bytes (yyconst char *bytes,int len );
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000308
Chris Lattnera62e8e42007-12-29 20:47:37 +0000309void *Configalloc (yy_size_t );
310void *Configrealloc (void *,yy_size_t );
311void Configfree (void * );
312
313#define yy_new_buffer Config_create_buffer
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000314
315#define yy_set_interactive(is_interactive) \
316 { \
Chris Lattnera62e8e42007-12-29 20:47:37 +0000317 if ( ! YY_CURRENT_BUFFER ){ \
318 Configensure_buffer_stack (); \
319 YY_CURRENT_BUFFER_LVALUE = \
320 Config_create_buffer(Configin,YY_BUF_SIZE ); \
321 } \
322 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000323 }
324
325#define yy_set_bol(at_bol) \
326 { \
Chris Lattnera62e8e42007-12-29 20:47:37 +0000327 if ( ! YY_CURRENT_BUFFER ){\
328 Configensure_buffer_stack (); \
329 YY_CURRENT_BUFFER_LVALUE = \
330 Config_create_buffer(Configin,YY_BUF_SIZE ); \
331 } \
332 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000333 }
334
Chris Lattnera62e8e42007-12-29 20:47:37 +0000335#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000336
Chris Lattnera62e8e42007-12-29 20:47:37 +0000337/* Begin user sect3 */
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000338
Chris Lattnera62e8e42007-12-29 20:47:37 +0000339#define Configwrap(n) 1
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000340#define YY_SKIP_YYWRAP
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000341
Chris Lattnera62e8e42007-12-29 20:47:37 +0000342typedef unsigned char YY_CHAR;
343
344FILE *Configin = (FILE *) 0, *Configout = (FILE *) 0;
345
346typedef int yy_state_type;
347
348extern int Configlineno;
349
350int Configlineno = 1;
351
352extern char *Configtext;
353#define yytext_ptr Configtext
354
355static yy_state_type yy_get_previous_state (void );
356static yy_state_type yy_try_NUL_trans (yy_state_type current_state );
357static int yy_get_next_buffer (void );
358static void yy_fatal_error (yyconst char msg[] );
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000359
360/* Done after the current pattern has been matched and before the
Chris Lattnera62e8e42007-12-29 20:47:37 +0000361 * corresponding action - sets up Configtext.
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000362 */
363#define YY_DO_BEFORE_ACTION \
Chris Lattnera62e8e42007-12-29 20:47:37 +0000364 (yytext_ptr) = yy_bp; \
365 Configleng = (size_t) (yy_cp - yy_bp); \
366 (yy_hold_char) = *yy_cp; \
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000367 *yy_cp = '\0'; \
Chris Lattnera62e8e42007-12-29 20:47:37 +0000368 (yy_c_buf_p) = yy_cp;
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000369
370#define YY_NUM_RULES 55
371#define YY_END_OF_BUFFER 56
Chris Lattnera62e8e42007-12-29 20:47:37 +0000372/* This struct is not used in this scanner,
373 but its presence is necessary. */
374struct yy_trans_info
375 {
376 flex_int32_t yy_verify;
377 flex_int32_t yy_nxt;
378 };
379static yyconst flex_int16_t yy_accept[408] =
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000380 { 0,
381 1, 1, 56, 55, 1, 4, 55, 55, 55, 52,
382 52, 6, 5, 52, 52, 52, 52, 52, 52, 52,
383 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
384 52, 52, 52, 52, 52, 52, 52, 52, 1, 4,
385 0, 53, 0, 2, 0, 54, 52, 52, 52, 52,
386 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
387 52, 52, 49, 52, 52, 52, 52, 52, 52, 52,
388 52, 52, 52, 52, 51, 52, 52, 50, 52, 52,
389 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
390 52, 52, 52, 3, 0, 52, 52, 52, 52, 52,
391
392 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
393 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
394 52, 52, 52, 52, 52, 48, 52, 52, 52, 52,
395 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
396 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
397 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
398 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
399 52, 52, 52, 52, 52, 52, 52, 29, 52, 52,
400 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
401 52, 52, 52, 52, 52, 8, 9, 52, 52, 10,
402
403 11, 12, 13, 14, 15, 52, 52, 52, 52, 52,
404 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
405 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
406 52, 52, 52, 52, 52, 52, 52, 52, 39, 40,
407 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
408 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
409 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
410 52, 52, 52, 52, 52, 52, 26, 52, 28, 52,
411 52, 52, 32, 52, 52, 52, 52, 43, 52, 52,
412 52, 52, 52, 52, 52, 25, 52, 21, 52, 52,
413
414 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
415 52, 52, 52, 52, 52, 46, 47, 52, 45, 30,
416 52, 52, 52, 52, 41, 52, 52, 52, 52, 17,
417 52, 52, 52, 52, 52, 52, 52, 52, 7, 52,
418 52, 52, 52, 52, 27, 31, 52, 52, 52, 42,
419 52, 52, 52, 52, 52, 52, 52, 18, 52, 52,
420 52, 52, 52, 52, 37, 52, 35, 52, 52, 36,
421 44, 24, 22, 52, 52, 52, 52, 52, 52, 52,
422 52, 52, 52, 52, 52, 52, 52, 23, 19, 52,
423 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
424
425 52, 33, 20, 16, 38, 34, 0
426 } ;
427
Chris Lattnera62e8e42007-12-29 20:47:37 +0000428static yyconst flex_int32_t yy_ec[256] =
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000429 { 0,
430 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
431 1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
432 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
433 1, 2, 1, 5, 6, 1, 7, 1, 1, 1,
434 1, 1, 8, 8, 8, 9, 8, 8, 10, 11,
435 12, 13, 14, 8, 8, 8, 8, 8, 1, 1,
436 15, 1, 1, 16, 17, 18, 19, 20, 21, 22,
437 23, 24, 25, 24, 26, 27, 28, 29, 30, 31,
438 32, 33, 34, 35, 36, 37, 38, 24, 39, 40,
439 1, 41, 1, 1, 8, 1, 42, 43, 44, 45,
440
441 46, 47, 48, 49, 50, 24, 51, 52, 53, 54,
442 55, 56, 57, 58, 59, 60, 61, 62, 24, 63,
443 64, 65, 1, 8, 1, 1, 1, 1, 1, 1,
444 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
445 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
446 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
447 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
448 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
449 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
450 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
451
452 1, 1, 1, 1, 1, 1, 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
458 } ;
459
Chris Lattnera62e8e42007-12-29 20:47:37 +0000460static yyconst flex_int32_t yy_meta[66] =
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000461 { 0,
462 1, 1, 1, 1, 1, 1, 2, 3, 1, 3,
463 3, 3, 3, 3, 1, 3, 3, 3, 3, 3,
464 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
465 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
466 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
467 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
468 3, 3, 3, 3, 3
469 } ;
470
Chris Lattnera62e8e42007-12-29 20:47:37 +0000471static yyconst flex_int16_t yy_base[412] =
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000472 { 0,
473 0, 0, 716, 3252, 713, 3252, 711, 708, 63, 61,
474 0, 3252, 3252, 36, 57, 50, 67, 68, 70, 93,
475 59, 73, 68, 93, 106, 75, 652, 46, 655, 667,
476 41, 86, 89, 650, 661, 648, 659, 658, 701, 3252,
477 697, 3252, 94, 3252, 698, 3252, 0, 148, 183, 218,
478 253, 305, 349, 389, 424, 472, 518, 573, 627, 671,
479 103, 641, 0, 664, 638, 669, 643, 668, 642, 664,
480 115, 638, 92, 663, 0, 637, 667, 0, 653, 651,
481 633, 616, 615, 653, 627, 640, 614, 115, 92, 637,
482 609, 632, 606, 3252, 661, 89, 603, 609, 609, 606,
483
484 114, 606, 611, 597, 596, 609, 597, 121, 595, 593,
485 711, 761, 811, 853, 901, 942, 992, 1030, 1067, 1123,
486 1177, 1231, 1267, 1319, 1366, 0, 630, 604, 630, 604,
487 619, 593, 611, 585, 619, 602, 606, 583, 571, 578,
488 607, 581, 159, 595, 164, 569, 593, 592, 586, 560,
489 591, 598, 564, 571, 582, 556, 567, 568, 558, 551,
490 561, 549, 556, 560, 190, 549, 548, 542, 548, 555,
491 541, 1418, 1472, 1526, 1579, 1618, 1671, 3252, 1725, 1771,
492 1824, 231, 242, 1871, 1925, 1967, 2007, 571, 545, 567,
493 541, 577, 551, 571, 545, 0, 0, 569, 542, 0,
494
495 0, 0, 0, 0, 0, 550, 541, 523, 514, 540,
496 514, 546, 513, 526, 499, 531, 500, 494, 491, 501,
497 491, 481, 468, 458, 452, 459, 448, 451, 2044, 2097,
498 263, 2150, 279, 2194, 2247, 2300, 289, 2344, 3252, 3252,
499 2386, 2439, 325, 2479, 473, 438, 457, 431, 445, 419,
500 438, 403, 430, 417, 399, 383, 409, 378, 396, 370,
501 400, 373, 386, 360, 370, 367, 357, 352, 359, 348,
502 352, 348, 346, 339, 337, 363, 3252, 2528, 3252, 373,
503 410, 2580, 3252, 2632, 2670, 434, 2727, 3252, 2781, 366,
504 340, 370, 342, 362, 327, 0, 329, 0, 303, 348,
505
506 320, 337, 308, 335, 301, 313, 286, 282, 285, 284,
507 263, 283, 280, 283, 270, 3252, 3252, 446, 3252, 3252,
508 456, 482, 2834, 2872, 3252, 492, 2929, 144, 121, 0,
509 302, 276, 293, 264, 289, 263, 272, 246, 0, 134,
510 252, 242, 240, 224, 3252, 3252, 74, 2969, 504, 3252,
511 528, 249, 223, 247, 220, 234, 203, 0, 158, 160,
512 199, 193, 187, 161, 3252, 185, 3252, 3008, 3060, 3252,
513 3252, 0, 0, 202, 176, 199, 194, 164, 164, 162,
514 161, 154, 150, 3104, 3142, 187, 163, 0, 0, 164,
515 146, 3194, 541, 158, 154, 127, 123, 107, 80, 81,
516
517 554, 3252, 0, 0, 3252, 3252, 3252, 3243, 3246, 3248,
518 83
519 } ;
520
Chris Lattnera62e8e42007-12-29 20:47:37 +0000521static yyconst flex_int16_t yy_def[412] =
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000522 { 0,
523 407, 1, 407, 407, 407, 407, 407, 408, 409, 410,
524 411, 407, 407, 411, 411, 411, 411, 411, 411, 411,
525 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
526 411, 411, 411, 411, 411, 411, 411, 411, 407, 407,
527 408, 407, 409, 407, 407, 407, 411, 410, 410, 410,
528 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
529 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
530 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
531 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
532 411, 411, 411, 407, 407, 411, 411, 411, 411, 411,
533
534 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
535 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
536 410, 410, 410, 410, 410, 411, 411, 411, 411, 411,
537 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
538 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
539 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
540 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
541 411, 410, 410, 410, 410, 410, 410, 407, 410, 410,
542 410, 410, 410, 410, 410, 410, 410, 411, 411, 411,
543 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
544
545 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
546 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
547 411, 411, 411, 411, 411, 411, 411, 411, 410, 410,
548 410, 410, 410, 410, 410, 410, 410, 410, 407, 407,
549 410, 410, 410, 410, 411, 411, 411, 411, 411, 411,
550 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
551 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
552 411, 411, 411, 411, 410, 410, 407, 410, 407, 410,
553 410, 410, 407, 410, 410, 410, 410, 407, 410, 411,
554 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
555
556 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
557 411, 411, 411, 411, 411, 407, 407, 410, 407, 407,
558 410, 410, 410, 410, 407, 410, 410, 411, 411, 411,
559 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
560 411, 411, 411, 411, 407, 407, 411, 410, 410, 407,
561 410, 411, 411, 411, 411, 411, 411, 411, 411, 411,
562 411, 411, 411, 411, 407, 411, 407, 410, 410, 407,
563 407, 411, 411, 411, 411, 411, 411, 411, 411, 411,
564 411, 411, 411, 410, 410, 411, 411, 411, 411, 411,
565 411, 410, 410, 411, 411, 411, 411, 411, 411, 411,
566
567 410, 407, 411, 411, 407, 407, 0, 407, 407, 407,
568 407
569 } ;
570
Chris Lattnera62e8e42007-12-29 20:47:37 +0000571static yyconst flex_int16_t yy_nxt[3318] =
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000572 { 0,
573 4, 5, 6, 7, 8, 9, 10, 11, 12, 11,
574 11, 11, 11, 11, 13, 4, 14, 15, 16, 11,
575 11, 17, 11, 11, 11, 11, 18, 11, 19, 20,
576 21, 11, 22, 11, 23, 11, 24, 11, 25, 11,
577 26, 27, 28, 29, 11, 11, 30, 11, 11, 11,
578 11, 31, 11, 32, 33, 34, 11, 35, 11, 36,
579 11, 37, 11, 38, 11, 44, 45, 46, 47, 61,
580 47, 47, 47, 47, 47, 63, 47, 94, 95, 66,
581 365, 64, 100, 68, 70, 47, 74, 405, 49, 63,
582 101, 84, 71, 86, 62, 97, 44, 45, 50, 75,
583
584 88, 47, 51, 52, 67, 53, 65, 54, 69, 72,
585 55, 76, 56, 90, 77, 57, 85, 73, 87, 58,
586 59, 78, 60, 79, 75, 89, 92, 102, 80, 366,
587 126, 151, 136, 153, 139, 103, 127, 404, 91, 81,
588 75, 126, 78, 137, 104, 140, 78, 157, 82, 105,
589 152, 93, 154, 83, 46, 47, 162, 47, 47, 47,
590 47, 47, 169, 47, 352, 403, 353, 163, 201, 202,
591 203, 204, 205, 201, 202, 203, 204, 205, 376, 361,
592 404, 170, 126, 206, 126, 403, 404, 377, 47, 46,
593 47, 403, 47, 47, 47, 47, 47, 126, 47, 201,
594
595 202, 203, 204, 205, 400, 378, 381, 394, 396, 398,
596 391, 389, 111, 208, 379, 382, 395, 397, 399, 388,
597 390, 389, 388, 47, 46, 47, 389, 47, 47, 47,
598 47, 47, 388, 47, 387, 386, 383, 239, 47, 223,
599 47, 47, 47, 47, 47, 380, 47, 112, 240, 47,
600 373, 47, 47, 47, 47, 47, 372, 47, 47, 46,
601 47, 375, 47, 47, 47, 47, 47, 374, 47, 277,
602 47, 47, 47, 47, 47, 47, 47, 373, 47, 373,
603 372, 372, 47, 364, 358, 279, 47, 363, 47, 47,
604 47, 47, 47, 47, 47, 283, 47, 362, 47, 47,
605
606 47, 47, 47, 47, 47, 360, 359, 358, 358, 357,
607 113, 46, 47, 356, 47, 47, 47, 47, 47, 47,
608 47, 355, 354, 339, 344, 343, 342, 341, 330, 47,
609 63, 288, 47, 340, 47, 47, 47, 47, 47, 339,
610 47, 339, 338, 316, 47, 47, 47, 47, 47, 47,
611 47, 337, 47, 336, 114, 46, 47, 335, 47, 47,
612 47, 47, 47, 334, 47, 47, 333, 332, 331, 317,
613 47, 330, 47, 47, 47, 47, 47, 47, 47, 319,
614 47, 330, 47, 47, 47, 47, 47, 63, 47, 47,
615 63, 329, 328, 315, 115, 46, 47, 314, 47, 47,
616
617 47, 47, 47, 47, 47, 313, 312, 298, 311, 296,
618 310, 309, 308, 47, 307, 306, 320, 47, 116, 47,
619 47, 47, 47, 47, 305, 47, 304, 303, 302, 47,
620 46, 47, 301, 47, 47, 47, 47, 47, 300, 47,
621 325, 47, 298, 47, 47, 47, 47, 47, 299, 47,
622 47, 298, 345, 47, 297, 47, 47, 47, 47, 47,
623 296, 47, 346, 47, 47, 47, 47, 47, 47, 47,
624 296, 47, 295, 294, 47, 293, 292, 117, 46, 47,
625 291, 47, 47, 47, 47, 47, 47, 47, 46, 47,
626 290, 347, 47, 47, 47, 47, 47, 47, 350, 47,
627
628 274, 47, 47, 47, 47, 47, 273, 47, 272, 271,
629 370, 47, 47, 47, 47, 47, 47, 47, 270, 47,
630 269, 118, 47, 119, 46, 47, 268, 47, 47, 47,
631 47, 47, 47, 47, 371, 47, 75, 47, 47, 47,
632 47, 47, 267, 47, 47, 266, 265, 402, 47, 264,
633 47, 47, 47, 47, 47, 263, 47, 262, 47, 261,
634 406, 47, 260, 47, 47, 47, 47, 47, 47, 47,
635 259, 258, 257, 120, 256, 255, 254, 253, 121, 46,
636 47, 47, 47, 47, 47, 47, 47, 252, 47, 251,
637 75, 75, 250, 249, 47, 248, 247, 246, 245, 228,
638
639 78, 227, 226, 225, 224, 200, 222, 197, 196, 221,
640 220, 219, 218, 47, 217, 216, 78, 215, 78, 214,
641 213, 212, 211, 210, 209, 207, 200, 200, 199, 197,
642 196, 198, 122, 46, 47, 197, 47, 47, 47, 47,
643 47, 196, 47, 195, 194, 193, 192, 191, 190, 189,
644 188, 78, 171, 168, 167, 166, 165, 75, 164, 161,
645 160, 159, 158, 94, 78, 78, 156, 47, 123, 155,
646 150, 149, 148, 147, 146, 145, 124, 46, 47, 75,
647 47, 47, 47, 47, 47, 144, 47, 143, 75, 142,
648 141, 138, 135, 134, 133, 132, 131, 130, 129, 128,
649
650 44, 42, 39, 110, 109, 108, 107, 106, 99, 98,
651 96, 47, 42, 40, 39, 407, 125, 46, 47, 407,
652 47, 47, 47, 47, 47, 407, 47, 407, 407, 407,
653 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
654 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
655 407, 47, 407, 407, 407, 407, 407, 407, 407, 407,
656 407, 407, 407, 407, 407, 407, 172, 46, 47, 407,
657 47, 47, 47, 47, 47, 407, 47, 407, 407, 407,
658 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
659 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
660
661 407, 47, 407, 407, 407, 407, 407, 407, 407, 407,
662 407, 407, 407, 407, 407, 407, 173, 46, 47, 407,
663 47, 47, 47, 47, 47, 407, 47, 407, 407, 407,
664 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
665 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
666 407, 47, 407, 407, 407, 407, 407, 407, 174, 46,
667 47, 407, 47, 47, 47, 47, 47, 407, 47, 407,
668 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
669 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
670 407, 407, 407, 47, 407, 407, 407, 407, 407, 407,
671
672 407, 407, 407, 407, 407, 407, 175, 46, 47, 407,
673 47, 47, 47, 47, 47, 407, 47, 407, 407, 407,
674 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
675 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
676 407, 47, 407, 407, 407, 407, 407, 176, 46, 47,
677 407, 47, 47, 47, 47, 47, 407, 47, 407, 407,
678 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
679 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
680 407, 407, 47, 407, 407, 407, 407, 407, 407, 407,
681 407, 407, 407, 407, 407, 407, 407, 177, 178, 47,
682
683 407, 47, 47, 47, 47, 47, 407, 47, 407, 407,
684 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
685 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
686 407, 407, 47, 407, 407, 179, 46, 47, 407, 47,
687 47, 47, 47, 47, 407, 47, 407, 407, 407, 407,
688 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
689 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
690 47, 407, 180, 46, 47, 407, 47, 47, 47, 47,
691 47, 407, 47, 407, 407, 407, 407, 407, 407, 407,
692 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
693
694 407, 407, 407, 407, 407, 407, 407, 47, 407, 407,
695 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
696 407, 407, 407, 407, 407, 407, 407, 407, 181, 46,
697 47, 407, 47, 47, 47, 47, 47, 407, 47, 407,
698 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
699 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
700 407, 407, 407, 47, 407, 407, 407, 407, 407, 407,
701 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
702 407, 407, 182, 46, 47, 407, 47, 47, 47, 47,
703 47, 407, 47, 407, 407, 407, 407, 407, 407, 407,
704
705 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
706 407, 407, 407, 407, 407, 407, 407, 47, 407, 407,
707 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
708 407, 407, 407, 407, 407, 407, 183, 46, 47, 407,
709 47, 47, 47, 47, 47, 407, 47, 407, 407, 407,
710 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
711 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
712 407, 47, 184, 46, 47, 407, 47, 47, 47, 47,
713 47, 407, 47, 407, 407, 407, 407, 407, 407, 407,
714 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
715
716 407, 407, 407, 407, 407, 407, 407, 47, 407, 407,
717 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
718 407, 407, 407, 407, 185, 46, 47, 407, 47, 47,
719 47, 47, 47, 407, 47, 407, 407, 407, 407, 407,
720 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
721 407, 407, 407, 407, 407, 407, 407, 407, 407, 47,
722 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
723 407, 186, 46, 47, 407, 47, 47, 47, 47, 47,
724 407, 47, 407, 407, 407, 407, 407, 407, 407, 407,
725 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
726
727 407, 407, 407, 407, 407, 407, 47, 407, 407, 407,
728 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
729 407, 407, 407, 187, 46, 47, 407, 47, 47, 47,
730 47, 47, 407, 47, 407, 407, 407, 407, 407, 407,
731 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
732 407, 407, 407, 407, 407, 407, 407, 407, 47, 407,
733 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
734 407, 407, 407, 407, 407, 407, 407, 229, 46, 47,
735 407, 47, 47, 47, 47, 47, 407, 47, 407, 407,
736 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
737
738 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
739 407, 407, 47, 407, 407, 407, 407, 407, 407, 407,
740 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
741 407, 230, 46, 47, 407, 47, 47, 47, 47, 47,
742 407, 47, 407, 407, 407, 407, 407, 407, 407, 407,
743 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
744 407, 407, 407, 407, 407, 407, 47, 407, 407, 407,
745 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
746 407, 407, 407, 407, 231, 46, 47, 407, 47, 47,
747 47, 47, 47, 407, 47, 407, 407, 407, 407, 407,
748
749 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
750 407, 407, 407, 407, 407, 407, 407, 407, 407, 47,
751 407, 407, 407, 232, 46, 47, 407, 47, 47, 47,
752 47, 47, 407, 47, 407, 407, 407, 407, 407, 407,
753 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
754 407, 407, 407, 407, 407, 407, 407, 407, 47, 407,
755 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
756 407, 407, 407, 407, 407, 407, 233, 46, 47, 407,
757 47, 47, 47, 47, 47, 407, 47, 407, 407, 407,
758 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
759
760 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
761 407, 47, 407, 407, 407, 407, 407, 407, 407, 407,
762 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
763 234, 46, 47, 407, 47, 47, 47, 47, 47, 407,
764 47, 407, 407, 407, 407, 407, 407, 407, 407, 407,
765 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
766 407, 407, 407, 407, 407, 47, 407, 407, 407, 407,
767 407, 407, 407, 407, 407, 407, 235, 46, 47, 407,
768 47, 47, 47, 47, 47, 407, 47, 407, 407, 407,
769 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
770
771 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
772 407, 47, 407, 407, 407, 236, 407, 407, 407, 407,
773 407, 407, 407, 407, 407, 407, 407, 407, 407, 237,
774 46, 47, 407, 47, 47, 47, 47, 47, 407, 47,
775 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
776 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
777 407, 407, 407, 407, 47, 407, 407, 407, 407, 407,
778 407, 407, 407, 407, 407, 407, 238, 46, 47, 407,
779 47, 47, 47, 47, 47, 407, 47, 407, 407, 407,
780 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
781
782 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
783 407, 47, 407, 407, 407, 407, 407, 407, 407, 407,
784 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
785 241, 46, 47, 407, 47, 47, 47, 47, 47, 407,
786 47, 407, 407, 407, 407, 407, 407, 407, 407, 407,
787 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
788 407, 407, 407, 407, 407, 47, 407, 407, 407, 407,
789 407, 407, 242, 46, 47, 407, 47, 47, 47, 47,
790 47, 407, 47, 407, 407, 407, 407, 407, 407, 407,
791 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
792
793 407, 407, 407, 407, 407, 407, 407, 47, 407, 407,
794 407, 407, 243, 46, 47, 407, 47, 47, 47, 47,
795 47, 407, 47, 407, 407, 407, 407, 407, 407, 407,
796 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
797 407, 407, 407, 407, 407, 407, 407, 47, 407, 244,
798 46, 47, 407, 47, 47, 47, 47, 47, 407, 47,
799 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
800 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
801 407, 407, 407, 407, 47, 407, 407, 407, 407, 407,
802 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
803
804 407, 407, 275, 46, 47, 407, 47, 47, 47, 47,
805 47, 407, 47, 407, 407, 407, 407, 407, 407, 407,
806 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
807 407, 407, 407, 407, 407, 407, 407, 47, 407, 407,
808 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
809 407, 407, 407, 407, 407, 276, 46, 47, 407, 47,
810 47, 47, 47, 47, 407, 47, 407, 407, 407, 407,
811 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
812 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
813 47, 407, 407, 407, 407, 407, 407, 407, 407, 278,
814
815 46, 47, 407, 47, 47, 47, 47, 47, 407, 47,
816 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
817 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
818 407, 407, 407, 407, 47, 407, 407, 407, 407, 407,
819 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
820 407, 407, 280, 46, 47, 407, 47, 47, 47, 47,
821 47, 407, 47, 407, 407, 407, 407, 407, 407, 407,
822 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
823 407, 407, 407, 407, 407, 407, 407, 47, 407, 407,
824 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
825
826 407, 407, 407, 407, 407, 281, 46, 47, 407, 47,
827 47, 47, 47, 47, 407, 47, 407, 407, 407, 407,
828 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
829 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
830 47, 407, 407, 407, 407, 407, 407, 407, 407, 282,
831 46, 47, 407, 47, 47, 47, 47, 47, 407, 47,
832 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
833 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
834 407, 407, 407, 407, 47, 407, 407, 284, 407, 407,
835 407, 285, 46, 47, 407, 47, 47, 47, 47, 47,
836
837 407, 47, 407, 407, 407, 407, 407, 407, 407, 407,
838 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
839 407, 407, 407, 407, 407, 407, 47, 407, 407, 407,
840 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
841 407, 407, 407, 407, 286, 46, 47, 407, 47, 47,
842 47, 47, 47, 407, 47, 407, 407, 407, 407, 407,
843 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
844 407, 407, 407, 407, 407, 407, 407, 407, 407, 47,
845 407, 407, 407, 407, 287, 46, 47, 407, 47, 47,
846 47, 47, 47, 407, 47, 407, 407, 407, 407, 407,
847
848 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
849 407, 407, 407, 407, 407, 407, 407, 407, 407, 47,
850 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
851 407, 407, 407, 289, 46, 47, 407, 47, 47, 47,
852 47, 47, 407, 47, 407, 407, 407, 407, 407, 407,
853 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
854 407, 407, 407, 407, 407, 407, 407, 407, 47, 407,
855 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
856 407, 407, 407, 407, 407, 318, 46, 47, 407, 47,
857 47, 47, 47, 47, 407, 47, 407, 407, 407, 407,
858
859 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
860 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
861 47, 407, 407, 407, 407, 407, 407, 407, 407, 407,
862 407, 407, 407, 407, 407, 407, 407, 321, 46, 47,
863 407, 47, 47, 47, 47, 47, 407, 47, 407, 407,
864 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
865 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
866 407, 407, 47, 407, 407, 322, 46, 47, 407, 47,
867 47, 47, 47, 47, 407, 47, 407, 407, 407, 407,
868 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
869
870 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
871 47, 407, 407, 323, 407, 407, 407, 407, 407, 407,
872 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
873 407, 407, 324, 46, 47, 407, 47, 47, 47, 47,
874 47, 407, 47, 407, 407, 407, 407, 407, 407, 407,
875 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
876 407, 407, 407, 407, 407, 407, 407, 47, 407, 407,
877 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
878 407, 407, 407, 407, 407, 407, 326, 46, 47, 407,
879 47, 47, 47, 47, 47, 407, 47, 407, 407, 407,
880
881 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
882 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
883 407, 47, 407, 407, 407, 407, 407, 407, 407, 407,
884 407, 407, 407, 407, 407, 407, 407, 407, 407, 327,
885 46, 47, 407, 47, 47, 47, 47, 47, 407, 47,
886 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
887 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
888 407, 407, 407, 407, 47, 407, 407, 348, 46, 47,
889 407, 47, 47, 47, 47, 47, 407, 47, 407, 407,
890 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
891
892 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
893 407, 407, 47, 407, 407, 407, 407, 407, 407, 407,
894 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
895 407, 407, 407, 407, 349, 46, 47, 407, 47, 47,
896 47, 47, 47, 407, 47, 407, 407, 407, 407, 407,
897 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
898 407, 407, 407, 407, 407, 407, 407, 407, 407, 47,
899 407, 407, 407, 407, 351, 367, 47, 407, 47, 47,
900 47, 47, 47, 407, 47, 407, 407, 407, 407, 407,
901 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
902
903 407, 407, 407, 407, 407, 407, 407, 407, 407, 47,
904 368, 407, 407, 369, 46, 47, 407, 47, 47, 47,
905 47, 47, 407, 47, 407, 407, 407, 407, 407, 407,
906 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
907 407, 407, 407, 407, 407, 407, 407, 407, 47, 407,
908 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
909 407, 407, 407, 407, 407, 384, 46, 47, 407, 47,
910 47, 47, 47, 47, 407, 47, 407, 407, 407, 407,
911 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
912 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
913
914 47, 407, 407, 407, 407, 407, 407, 407, 407, 385,
915 46, 47, 407, 47, 47, 47, 47, 47, 407, 47,
916 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
917 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
918 407, 407, 407, 407, 47, 407, 407, 392, 46, 47,
919 407, 47, 47, 47, 47, 47, 407, 47, 407, 407,
920 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
921 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
922 407, 407, 47, 407, 407, 407, 407, 407, 407, 407,
923 407, 407, 407, 407, 407, 407, 407, 407, 407, 393,
924
925 46, 47, 407, 47, 47, 47, 47, 47, 407, 47,
926 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
927 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
928 407, 407, 407, 407, 47, 407, 407, 407, 407, 407,
929 407, 407, 401, 41, 41, 41, 43, 43, 43, 48,
930 48, 3, 407, 407, 407, 407, 407, 407, 407, 407,
931 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
932 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
933 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
934 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
935
936 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
937 407, 407, 407, 407, 407, 407, 407
938 } ;
939
Chris Lattnera62e8e42007-12-29 20:47:37 +0000940static yyconst flex_int16_t yy_chk[3318] =
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000941 { 0,
942 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
943 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
944 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
945 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
946 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
947 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
948 1, 1, 1, 1, 1, 9, 9, 10, 10, 14,
949 10, 10, 10, 10, 10, 15, 10, 26, 26, 16,
950 347, 15, 31, 17, 18, 411, 19, 400, 10, 28,
951 31, 21, 18, 22, 14, 28, 43, 43, 10, 19,
952
953 23, 10, 10, 10, 16, 10, 15, 10, 17, 18,
954 10, 19, 10, 24, 20, 10, 21, 18, 22, 10,
955 10, 20, 10, 20, 19, 23, 25, 32, 20, 347,
956 61, 88, 71, 89, 73, 33, 61, 399, 24, 20,
957 32, 96, 33, 71, 33, 73, 20, 96, 20, 33,
958 88, 25, 89, 20, 48, 48, 101, 48, 48, 48,
959 48, 48, 108, 48, 328, 398, 329, 101, 143, 143,
960 143, 143, 143, 145, 145, 145, 145, 145, 359, 340,
961 397, 108, 328, 143, 329, 396, 395, 359, 48, 49,
962 49, 394, 49, 49, 49, 49, 49, 340, 49, 165,
963
964 165, 165, 165, 165, 391, 360, 364, 386, 387, 390,
965 383, 382, 49, 145, 360, 364, 386, 387, 390, 381,
966 380, 379, 378, 49, 50, 50, 377, 50, 50, 50,
967 50, 50, 376, 50, 375, 374, 366, 182, 182, 165,
968 182, 182, 182, 182, 182, 363, 182, 50, 183, 183,
969 362, 183, 183, 183, 183, 183, 361, 183, 50, 51,
970 51, 357, 51, 51, 51, 51, 51, 356, 51, 231,
971 231, 182, 231, 231, 231, 231, 231, 355, 231, 354,
972 353, 352, 183, 344, 343, 233, 233, 342, 233, 233,
973 233, 233, 233, 51, 233, 237, 237, 341, 237, 237,
974
975 237, 237, 237, 231, 237, 338, 337, 336, 335, 334,
976 51, 52, 52, 333, 52, 52, 52, 52, 52, 233,
977 52, 332, 331, 315, 314, 313, 312, 311, 310, 237,
978 309, 243, 243, 308, 243, 243, 243, 243, 243, 307,
979 243, 306, 305, 275, 275, 52, 275, 275, 275, 275,
980 275, 304, 275, 303, 52, 53, 53, 302, 53, 53,
981 53, 53, 53, 301, 53, 243, 300, 299, 297, 276,
982 276, 295, 276, 276, 276, 276, 276, 275, 276, 280,
983 280, 294, 280, 280, 280, 280, 280, 293, 280, 53,
984 292, 291, 290, 274, 53, 54, 54, 273, 54, 54,
985
986 54, 54, 54, 276, 54, 272, 271, 270, 269, 268,
987 267, 266, 265, 280, 264, 263, 281, 281, 54, 281,
988 281, 281, 281, 281, 262, 281, 261, 260, 259, 54,
989 55, 55, 258, 55, 55, 55, 55, 55, 257, 55,
990 286, 286, 256, 286, 286, 286, 286, 286, 255, 286,
991 281, 254, 318, 318, 253, 318, 318, 318, 318, 318,
992 252, 318, 321, 321, 55, 321, 321, 321, 321, 321,
993 251, 321, 250, 249, 286, 248, 247, 55, 56, 56,
994 246, 56, 56, 56, 56, 56, 318, 56, 322, 322,
995 245, 322, 322, 322, 322, 322, 321, 322, 326, 326,
996
997 228, 326, 326, 326, 326, 326, 227, 326, 226, 225,
998 349, 349, 56, 349, 349, 349, 349, 349, 224, 349,
999 223, 56, 322, 56, 57, 57, 222, 57, 57, 57,
1000 57, 57, 326, 57, 351, 351, 221, 351, 351, 351,
1001 351, 351, 220, 351, 349, 219, 218, 393, 393, 217,
1002 393, 393, 393, 393, 393, 216, 393, 215, 57, 214,
1003 401, 401, 213, 401, 401, 401, 401, 401, 351, 401,
1004 212, 211, 210, 57, 209, 208, 207, 206, 57, 58,
1005 58, 393, 58, 58, 58, 58, 58, 199, 58, 198,
1006 195, 194, 193, 192, 401, 191, 190, 189, 188, 171,
1007
1008 170, 169, 168, 167, 166, 164, 163, 162, 161, 160,
1009 159, 158, 157, 58, 156, 155, 154, 153, 152, 151,
1010 150, 149, 148, 147, 146, 144, 142, 141, 140, 139,
1011 138, 137, 58, 59, 59, 136, 59, 59, 59, 59,
1012 59, 135, 59, 134, 133, 132, 131, 130, 129, 128,
1013 127, 110, 109, 107, 106, 105, 104, 103, 102, 100,
1014 99, 98, 97, 95, 93, 92, 91, 59, 59, 90,
1015 87, 86, 85, 84, 83, 82, 59, 60, 60, 81,
1016 60, 60, 60, 60, 60, 80, 60, 79, 77, 76,
1017 74, 72, 70, 69, 68, 67, 66, 65, 64, 62,
1018
1019 45, 41, 39, 38, 37, 36, 35, 34, 30, 29,
1020 27, 60, 8, 7, 5, 3, 60, 111, 111, 0,
1021 111, 111, 111, 111, 111, 0, 111, 0, 0, 0,
1022 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1023 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1024 0, 111, 0, 0, 0, 0, 0, 0, 0, 0,
1025 0, 0, 0, 0, 0, 0, 111, 112, 112, 0,
1026 112, 112, 112, 112, 112, 0, 112, 0, 0, 0,
1027 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1028 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1029
1030 0, 112, 0, 0, 0, 0, 0, 0, 0, 0,
1031 0, 0, 0, 0, 0, 0, 112, 113, 113, 0,
1032 113, 113, 113, 113, 113, 0, 113, 0, 0, 0,
1033 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1034 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1035 0, 113, 0, 0, 0, 0, 0, 0, 113, 114,
1036 114, 0, 114, 114, 114, 114, 114, 0, 114, 0,
1037 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1038 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1039 0, 0, 0, 114, 0, 0, 0, 0, 0, 0,
1040
1041 0, 0, 0, 0, 0, 0, 114, 115, 115, 0,
1042 115, 115, 115, 115, 115, 0, 115, 0, 0, 0,
1043 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1044 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1045 0, 115, 0, 0, 0, 0, 0, 115, 116, 116,
1046 0, 116, 116, 116, 116, 116, 0, 116, 0, 0,
1047 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1048 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1049 0, 0, 116, 0, 0, 0, 0, 0, 0, 0,
1050 0, 0, 0, 0, 0, 0, 0, 116, 117, 117,
1051
1052 0, 117, 117, 117, 117, 117, 0, 117, 0, 0,
1053 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1054 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1055 0, 0, 117, 0, 0, 117, 118, 118, 0, 118,
1056 118, 118, 118, 118, 0, 118, 0, 0, 0, 0,
1057 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1058 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1059 118, 0, 118, 119, 119, 0, 119, 119, 119, 119,
1060 119, 0, 119, 0, 0, 0, 0, 0, 0, 0,
1061 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1062
1063 0, 0, 0, 0, 0, 0, 0, 119, 0, 0,
1064 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1065 0, 0, 0, 0, 0, 0, 0, 0, 119, 120,
1066 120, 0, 120, 120, 120, 120, 120, 0, 120, 0,
1067 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1068 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1069 0, 0, 0, 120, 0, 0, 0, 0, 0, 0,
1070 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1071 0, 0, 120, 121, 121, 0, 121, 121, 121, 121,
1072 121, 0, 121, 0, 0, 0, 0, 0, 0, 0,
1073
1074 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1075 0, 0, 0, 0, 0, 0, 0, 121, 0, 0,
1076 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1077 0, 0, 0, 0, 0, 0, 121, 122, 122, 0,
1078 122, 122, 122, 122, 122, 0, 122, 0, 0, 0,
1079 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1080 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1081 0, 122, 122, 123, 123, 0, 123, 123, 123, 123,
1082 123, 0, 123, 0, 0, 0, 0, 0, 0, 0,
1083 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1084
1085 0, 0, 0, 0, 0, 0, 0, 123, 0, 0,
1086 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1087 0, 0, 0, 0, 123, 124, 124, 0, 124, 124,
1088 124, 124, 124, 0, 124, 0, 0, 0, 0, 0,
1089 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1090 0, 0, 0, 0, 0, 0, 0, 0, 0, 124,
1091 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1092 0, 124, 125, 125, 0, 125, 125, 125, 125, 125,
1093 0, 125, 0, 0, 0, 0, 0, 0, 0, 0,
1094 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1095
1096 0, 0, 0, 0, 0, 0, 125, 0, 0, 0,
1097 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1098 0, 0, 0, 125, 172, 172, 0, 172, 172, 172,
1099 172, 172, 0, 172, 0, 0, 0, 0, 0, 0,
1100 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1101 0, 0, 0, 0, 0, 0, 0, 0, 172, 0,
1102 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1103 0, 0, 0, 0, 0, 0, 0, 172, 173, 173,
1104 0, 173, 173, 173, 173, 173, 0, 173, 0, 0,
1105 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1106
1107 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1108 0, 0, 173, 0, 0, 0, 0, 0, 0, 0,
1109 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1110 0, 173, 174, 174, 0, 174, 174, 174, 174, 174,
1111 0, 174, 0, 0, 0, 0, 0, 0, 0, 0,
1112 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1113 0, 0, 0, 0, 0, 0, 174, 0, 0, 0,
1114 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1115 0, 0, 0, 0, 174, 175, 175, 0, 175, 175,
1116 175, 175, 175, 0, 175, 0, 0, 0, 0, 0,
1117
1118 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1119 0, 0, 0, 0, 0, 0, 0, 0, 0, 175,
1120 0, 0, 0, 175, 176, 176, 0, 176, 176, 176,
1121 176, 176, 0, 176, 0, 0, 0, 0, 0, 0,
1122 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1123 0, 0, 0, 0, 0, 0, 0, 0, 176, 0,
1124 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1125 0, 0, 0, 0, 0, 0, 176, 177, 177, 0,
1126 177, 177, 177, 177, 177, 0, 177, 0, 0, 0,
1127 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1128
1129 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1130 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
1131 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1132 177, 179, 179, 0, 179, 179, 179, 179, 179, 0,
1133 179, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1134 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1135 0, 0, 0, 0, 0, 179, 0, 0, 0, 0,
1136 0, 0, 0, 0, 0, 0, 179, 180, 180, 0,
1137 180, 180, 180, 180, 180, 0, 180, 0, 0, 0,
1138 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1139
1140 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1141 0, 180, 0, 0, 0, 180, 0, 0, 0, 0,
1142 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
1143 181, 181, 0, 181, 181, 181, 181, 181, 0, 181,
1144 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1145 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1146 0, 0, 0, 0, 181, 0, 0, 0, 0, 0,
1147 0, 0, 0, 0, 0, 0, 181, 184, 184, 0,
1148 184, 184, 184, 184, 184, 0, 184, 0, 0, 0,
1149 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1150
1151 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1152 0, 184, 0, 0, 0, 0, 0, 0, 0, 0,
1153 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1154 184, 185, 185, 0, 185, 185, 185, 185, 185, 0,
1155 185, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1156 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1157 0, 0, 0, 0, 0, 185, 0, 0, 0, 0,
1158 0, 0, 185, 186, 186, 0, 186, 186, 186, 186,
1159 186, 0, 186, 0, 0, 0, 0, 0, 0, 0,
1160 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1161
1162 0, 0, 0, 0, 0, 0, 0, 186, 0, 0,
1163 0, 0, 186, 187, 187, 0, 187, 187, 187, 187,
1164 187, 0, 187, 0, 0, 0, 0, 0, 0, 0,
1165 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1166 0, 0, 0, 0, 0, 0, 0, 187, 0, 187,
1167 229, 229, 0, 229, 229, 229, 229, 229, 0, 229,
1168 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1169 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1170 0, 0, 0, 0, 229, 0, 0, 0, 0, 0,
1171 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1172
1173 0, 0, 229, 230, 230, 0, 230, 230, 230, 230,
1174 230, 0, 230, 0, 0, 0, 0, 0, 0, 0,
1175 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1176 0, 0, 0, 0, 0, 0, 0, 230, 0, 0,
1177 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1178 0, 0, 0, 0, 0, 230, 232, 232, 0, 232,
1179 232, 232, 232, 232, 0, 232, 0, 0, 0, 0,
1180 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1181 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1182 232, 0, 0, 0, 0, 0, 0, 0, 0, 232,
1183
1184 234, 234, 0, 234, 234, 234, 234, 234, 0, 234,
1185 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1186 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1187 0, 0, 0, 0, 234, 0, 0, 0, 0, 0,
1188 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1189 0, 0, 234, 235, 235, 0, 235, 235, 235, 235,
1190 235, 0, 235, 0, 0, 0, 0, 0, 0, 0,
1191 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1192 0, 0, 0, 0, 0, 0, 0, 235, 0, 0,
1193 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1194
1195 0, 0, 0, 0, 0, 235, 236, 236, 0, 236,
1196 236, 236, 236, 236, 0, 236, 0, 0, 0, 0,
1197 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1198 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1199 236, 0, 0, 0, 0, 0, 0, 0, 0, 236,
1200 238, 238, 0, 238, 238, 238, 238, 238, 0, 238,
1201 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1202 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1203 0, 0, 0, 0, 238, 0, 0, 238, 0, 0,
1204 0, 238, 241, 241, 0, 241, 241, 241, 241, 241,
1205
1206 0, 241, 0, 0, 0, 0, 0, 0, 0, 0,
1207 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1208 0, 0, 0, 0, 0, 0, 241, 0, 0, 0,
1209 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1210 0, 0, 0, 0, 241, 242, 242, 0, 242, 242,
1211 242, 242, 242, 0, 242, 0, 0, 0, 0, 0,
1212 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1213 0, 0, 0, 0, 0, 0, 0, 0, 0, 242,
1214 0, 0, 0, 0, 242, 244, 244, 0, 244, 244,
1215 244, 244, 244, 0, 244, 0, 0, 0, 0, 0,
1216
1217 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1218 0, 0, 0, 0, 0, 0, 0, 0, 0, 244,
1219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1220 0, 0, 0, 244, 278, 278, 0, 278, 278, 278,
1221 278, 278, 0, 278, 0, 0, 0, 0, 0, 0,
1222 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1223 0, 0, 0, 0, 0, 0, 0, 0, 278, 0,
1224 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1225 0, 0, 0, 0, 0, 278, 282, 282, 0, 282,
1226 282, 282, 282, 282, 0, 282, 0, 0, 0, 0,
1227
1228 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1229 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1230 282, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1231 0, 0, 0, 0, 0, 0, 0, 282, 284, 284,
1232 0, 284, 284, 284, 284, 284, 0, 284, 0, 0,
1233 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1234 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1235 0, 0, 284, 0, 0, 284, 285, 285, 0, 285,
1236 285, 285, 285, 285, 0, 285, 0, 0, 0, 0,
1237 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1238
1239 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1240 285, 0, 0, 285, 0, 0, 0, 0, 0, 0,
1241 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1242 0, 0, 285, 287, 287, 0, 287, 287, 287, 287,
1243 287, 0, 287, 0, 0, 0, 0, 0, 0, 0,
1244 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1245 0, 0, 0, 0, 0, 0, 0, 287, 0, 0,
1246 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1247 0, 0, 0, 0, 0, 0, 287, 289, 289, 0,
1248 289, 289, 289, 289, 289, 0, 289, 0, 0, 0,
1249
1250 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1251 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1252 0, 289, 0, 0, 0, 0, 0, 0, 0, 0,
1253 0, 0, 0, 0, 0, 0, 0, 0, 0, 289,
1254 323, 323, 0, 323, 323, 323, 323, 323, 0, 323,
1255 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1256 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1257 0, 0, 0, 0, 323, 0, 0, 323, 324, 324,
1258 0, 324, 324, 324, 324, 324, 0, 324, 0, 0,
1259 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1260
1261 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1262 0, 0, 324, 0, 0, 0, 0, 0, 0, 0,
1263 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1264 0, 0, 0, 0, 324, 327, 327, 0, 327, 327,
1265 327, 327, 327, 0, 327, 0, 0, 0, 0, 0,
1266 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1267 0, 0, 0, 0, 0, 0, 0, 0, 0, 327,
1268 0, 0, 0, 0, 327, 348, 348, 0, 348, 348,
1269 348, 348, 348, 0, 348, 0, 0, 0, 0, 0,
1270 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1271
1272 0, 0, 0, 0, 0, 0, 0, 0, 0, 348,
1273 348, 0, 0, 348, 368, 368, 0, 368, 368, 368,
1274 368, 368, 0, 368, 0, 0, 0, 0, 0, 0,
1275 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1276 0, 0, 0, 0, 0, 0, 0, 0, 368, 0,
1277 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1278 0, 0, 0, 0, 0, 368, 369, 369, 0, 369,
1279 369, 369, 369, 369, 0, 369, 0, 0, 0, 0,
1280 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1281 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1282
1283 369, 0, 0, 0, 0, 0, 0, 0, 0, 369,
1284 384, 384, 0, 384, 384, 384, 384, 384, 0, 384,
1285 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1286 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1287 0, 0, 0, 0, 384, 0, 0, 384, 385, 385,
1288 0, 385, 385, 385, 385, 385, 0, 385, 0, 0,
1289 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1290 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1291 0, 0, 385, 0, 0, 0, 0, 0, 0, 0,
1292 0, 0, 0, 0, 0, 0, 0, 0, 0, 385,
1293
1294 392, 392, 0, 392, 392, 392, 392, 392, 0, 392,
1295 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1296 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1297 0, 0, 0, 0, 392, 0, 0, 0, 0, 0,
1298 0, 0, 392, 408, 408, 408, 409, 409, 409, 410,
1299 410, 407, 407, 407, 407, 407, 407, 407, 407, 407,
1300 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
1301 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
1302 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
1303 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
1304
1305 407, 407, 407, 407, 407, 407, 407, 407, 407, 407,
1306 407, 407, 407, 407, 407, 407, 407
1307 } ;
1308
1309static yy_state_type yy_last_accepting_state;
1310static char *yy_last_accepting_cpos;
1311
Chris Lattnera62e8e42007-12-29 20:47:37 +00001312extern int Config_flex_debug;
1313int Config_flex_debug = 0;
1314
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001315/* The intent behind this definition is that it'll catch
1316 * any uses of REJECT which flex missed.
1317 */
1318#define REJECT reject_used_but_not_detected
1319#define yymore() yymore_used_but_not_detected
1320#define YY_MORE_ADJ 0
1321#define YY_RESTORE_YY_MORE_OFFSET
Chris Lattnera62e8e42007-12-29 20:47:37 +00001322char *Configtext;
1323#line 1 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001324/*===- ConfigLexer.l - Scanner for CompilerDriver Config Files -*- C++ -*--===//
1325//
1326// The LLVM Compiler Infrastructure
1327//
Chris Lattnera62e8e42007-12-29 20:47:37 +00001328// This file is distributed under the University of Illinois Open Source
1329// License. See LICENSE.TXT for details.
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001330//
1331//===----------------------------------------------------------------------===//
1332//
1333// This file implements the flex scanner for configuration files for the
1334// llvmc CompilerDriver.
1335//
1336//===----------------------------------------------------------------------===*/
Chris Lattnera62e8e42007-12-29 20:47:37 +00001337#line 29 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001338
1339#include "ConfigLexer.h"
1340
1341#define YY_INPUT(buf,result,max_size) \
1342 { \
1343 assert(ConfigLexerInput != 0 && "Oops"); \
1344 result = ConfigLexerInput->read(buf,max_size); \
1345 if (result == 0 ) result = YY_NULL; \
1346 }
1347
1348#define YY_FATAL_ERROR(msg) \
1349 { \
1350 assert(ConfigLexerInput != 0 && "Oops"); \
1351 ConfigLexerInput->error(msg); \
1352 }
1353
1354#define YY_DECL ConfigLexerTokens llvm::Configlex()
1355
1356#define yyterminate() { return EOFTOK; }
1357
1358using namespace llvm;
1359
1360inline llvm::ConfigLexerTokens
1361handleNameContext(llvm::ConfigLexerTokens token) {
Chris Lattnera62e8e42007-12-29 20:47:37 +00001362 ConfigLexerState.StringVal = Configtext;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001363 if (ConfigLexerState.in_value)
1364 return OPTION;
1365 return token;
1366}
1367
1368inline llvm::ConfigLexerTokens
1369handleSubstitution(llvm::ConfigLexerTokens token) {
1370 if (ConfigLexerState.in_value) {
Chris Lattnera62e8e42007-12-29 20:47:37 +00001371 ConfigLexerState.StringVal = Configtext;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001372 return token;
1373 }
1374 YY_FATAL_ERROR("Substitition tokens not allowed in names" );
1375 return ERRORTOK;
1376}
1377
1378inline llvm::ConfigLexerTokens handleValueContext(llvm::ConfigLexerTokens token) {
Chris Lattnera62e8e42007-12-29 20:47:37 +00001379 ConfigLexerState.StringVal = Configtext;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001380 if (ConfigLexerState.in_value)
1381 return token;
1382 return OPTION;
1383}
1384
Chris Lattnera62e8e42007-12-29 20:47:37 +00001385#line 1386 "ConfigLexer.cpp"
1386
1387#define INITIAL 0
1388
1389#ifndef YY_NO_UNISTD_H
1390/* Special case for "unistd.h", since it is non-ANSI. We include it way
1391 * down here because we want the user's section 1 to have been scanned first.
1392 * The user has a chance to override it with an option.
1393 */
1394#include <unistd.h>
1395#endif
1396
1397#ifndef YY_EXTRA_TYPE
1398#define YY_EXTRA_TYPE void *
1399#endif
1400
1401static int yy_init_globals (void );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001402
1403/* Macros after this point can all be overridden by user definitions in
1404 * section 1.
1405 */
1406
1407#ifndef YY_SKIP_YYWRAP
1408#ifdef __cplusplus
Chris Lattnera62e8e42007-12-29 20:47:37 +00001409extern "C" int Configwrap (void );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001410#else
Chris Lattnera62e8e42007-12-29 20:47:37 +00001411extern int Configwrap (void );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001412#endif
1413#endif
1414
Chris Lattnera62e8e42007-12-29 20:47:37 +00001415 static inline void yyunput (int c,char *buf_ptr );
1416
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001417#ifndef yytext_ptr
Chris Lattnera62e8e42007-12-29 20:47:37 +00001418static void yy_flex_strncpy (char *,yyconst char *,int );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001419#endif
1420
1421#ifdef YY_NEED_STRLEN
Chris Lattnera62e8e42007-12-29 20:47:37 +00001422static int yy_flex_strlen (yyconst char * );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001423#endif
1424
1425#ifndef YY_NO_INPUT
Chris Lattnera62e8e42007-12-29 20:47:37 +00001426
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001427#ifdef __cplusplus
Chris Lattnera62e8e42007-12-29 20:47:37 +00001428static int yyinput (void );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001429#else
Chris Lattnera62e8e42007-12-29 20:47:37 +00001430static int input (void );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001431#endif
1432
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001433#endif
1434
1435/* Amount of stuff to slurp up with each read. */
1436#ifndef YY_READ_BUF_SIZE
1437#define YY_READ_BUF_SIZE 8192
1438#endif
1439
1440/* Copy whatever the last rule matched to the standard output. */
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001441#ifndef ECHO
1442/* This used to be an fputs(), but since the string might contain NUL's,
1443 * we now use fwrite().
1444 */
Chris Lattnera62e8e42007-12-29 20:47:37 +00001445#define ECHO (void) fwrite( Configtext, Configleng, 1, Configout )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001446#endif
1447
1448/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1449 * is returned in "result".
1450 */
1451#ifndef YY_INPUT
1452#define YY_INPUT(buf,result,max_size) \
Chris Lattnera62e8e42007-12-29 20:47:37 +00001453 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001454 { \
Chris Lattnera62e8e42007-12-29 20:47:37 +00001455 int c = '*'; \
1456 size_t n; \
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001457 for ( n = 0; n < max_size && \
Chris Lattnera62e8e42007-12-29 20:47:37 +00001458 (c = getc( Configin )) != EOF && c != '\n'; ++n ) \
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001459 buf[n] = (char) c; \
1460 if ( c == '\n' ) \
1461 buf[n++] = (char) c; \
Chris Lattnera62e8e42007-12-29 20:47:37 +00001462 if ( c == EOF && ferror( Configin ) ) \
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001463 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1464 result = n; \
1465 } \
Chris Lattnera62e8e42007-12-29 20:47:37 +00001466 else \
1467 { \
1468 errno=0; \
1469 while ( (result = fread(buf, 1, max_size, Configin))==0 && ferror(Configin)) \
1470 { \
1471 if( errno != EINTR) \
1472 { \
1473 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1474 break; \
1475 } \
1476 errno=0; \
1477 clearerr(Configin); \
1478 } \
1479 }\
1480\
1481
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001482#endif
1483
1484/* No semi-colon after return; correct usage is to write "yyterminate();" -
1485 * we don't want an extra ';' after the "return" because that will cause
1486 * some compilers to complain about unreachable statements.
1487 */
1488#ifndef yyterminate
1489#define yyterminate() return YY_NULL
1490#endif
1491
1492/* Number of entries by which start-condition stack grows. */
1493#ifndef YY_START_STACK_INCR
1494#define YY_START_STACK_INCR 25
1495#endif
1496
1497/* Report a fatal error. */
1498#ifndef YY_FATAL_ERROR
1499#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1500#endif
1501
Chris Lattnera62e8e42007-12-29 20:47:37 +00001502/* end tables serialization structures and prototypes */
1503
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001504/* Default declaration of generated scanner - a define so the user can
1505 * easily add parameters.
1506 */
1507#ifndef YY_DECL
Chris Lattnera62e8e42007-12-29 20:47:37 +00001508#define YY_DECL_IS_OURS 1
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001509
Chris Lattnera62e8e42007-12-29 20:47:37 +00001510extern int Configlex (void);
1511
1512#define YY_DECL int Configlex (void)
1513#endif /* !YY_DECL */
1514
1515/* Code executed at the beginning of each rule, after Configtext and Configleng
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001516 * have been set up.
1517 */
1518#ifndef YY_USER_ACTION
1519#define YY_USER_ACTION
1520#endif
1521
1522/* Code executed at the end of each rule. */
1523#ifndef YY_BREAK
1524#define YY_BREAK break;
1525#endif
1526
1527#define YY_RULE_SETUP \
1528 YY_USER_ACTION
1529
Chris Lattnera62e8e42007-12-29 20:47:37 +00001530/** The main scanner function which does all the work.
1531 */
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001532YY_DECL
Chris Lattnera62e8e42007-12-29 20:47:37 +00001533{
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001534 register yy_state_type yy_current_state;
1535 register char *yy_cp, *yy_bp;
1536 register int yy_act;
Chris Lattnera62e8e42007-12-29 20:47:37 +00001537
1538#line 114 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001539
1540
Chris Lattnera62e8e42007-12-29 20:47:37 +00001541#line 1542 "ConfigLexer.cpp"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001542
Chris Lattnera62e8e42007-12-29 20:47:37 +00001543 if ( !(yy_init) )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001544 {
Chris Lattnera62e8e42007-12-29 20:47:37 +00001545 (yy_init) = 1;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001546
1547#ifdef YY_USER_INIT
1548 YY_USER_INIT;
1549#endif
1550
Chris Lattnera62e8e42007-12-29 20:47:37 +00001551 if ( ! (yy_start) )
1552 (yy_start) = 1; /* first start state */
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001553
Chris Lattnera62e8e42007-12-29 20:47:37 +00001554 if ( ! Configin )
1555 Configin = stdin;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001556
Chris Lattnera62e8e42007-12-29 20:47:37 +00001557 if ( ! Configout )
1558 Configout = stdout;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001559
Chris Lattnera62e8e42007-12-29 20:47:37 +00001560 if ( ! YY_CURRENT_BUFFER ) {
1561 Configensure_buffer_stack ();
1562 YY_CURRENT_BUFFER_LVALUE =
1563 Config_create_buffer(Configin,YY_BUF_SIZE );
1564 }
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001565
Chris Lattnera62e8e42007-12-29 20:47:37 +00001566 Config_load_buffer_state( );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001567 }
1568
1569 while ( 1 ) /* loops until end-of-file is reached */
1570 {
Chris Lattnera62e8e42007-12-29 20:47:37 +00001571 yy_cp = (yy_c_buf_p);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001572
Chris Lattnera62e8e42007-12-29 20:47:37 +00001573 /* Support of Configtext. */
1574 *yy_cp = (yy_hold_char);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001575
1576 /* yy_bp points to the position in yy_ch_buf of the start of
1577 * the current run.
1578 */
1579 yy_bp = yy_cp;
1580
Chris Lattnera62e8e42007-12-29 20:47:37 +00001581 yy_current_state = (yy_start);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001582yy_match:
1583 do
1584 {
1585 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
1586 if ( yy_accept[yy_current_state] )
1587 {
Chris Lattnera62e8e42007-12-29 20:47:37 +00001588 (yy_last_accepting_state) = yy_current_state;
1589 (yy_last_accepting_cpos) = yy_cp;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001590 }
1591 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1592 {
1593 yy_current_state = (int) yy_def[yy_current_state];
1594 if ( yy_current_state >= 408 )
1595 yy_c = yy_meta[(unsigned int) yy_c];
1596 }
1597 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1598 ++yy_cp;
1599 }
1600 while ( yy_current_state != 407 );
Chris Lattnera62e8e42007-12-29 20:47:37 +00001601 yy_cp = (yy_last_accepting_cpos);
1602 yy_current_state = (yy_last_accepting_state);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001603
1604yy_find_action:
1605 yy_act = yy_accept[yy_current_state];
1606
1607 YY_DO_BEFORE_ACTION;
1608
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001609do_action: /* This label is used only to access EOF actions. */
1610
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001611 switch ( yy_act )
1612 { /* beginning of action switch */
1613 case 0: /* must back up */
1614 /* undo the effects of YY_DO_BEFORE_ACTION */
Chris Lattnera62e8e42007-12-29 20:47:37 +00001615 *yy_cp = (yy_hold_char);
1616 yy_cp = (yy_last_accepting_cpos);
1617 yy_current_state = (yy_last_accepting_state);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001618 goto yy_find_action;
1619
1620case 1:
1621YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001622#line 116 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001623{ if (ConfigLexerState.in_value) return SPACE; }
1624 YY_BREAK
1625case 2:
Chris Lattnera62e8e42007-12-29 20:47:37 +00001626/* rule 2 can match eol */
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001627YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001628#line 118 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001629{ /* Ignore comments */
1630 ConfigLexerState.in_value = false;
1631 ConfigLexerState.lineNum++;
1632 return EOLTOK;
1633 }
1634 YY_BREAK
1635case 3:
Chris Lattnera62e8e42007-12-29 20:47:37 +00001636/* rule 3 can match eol */
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001637YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001638#line 124 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001639{ ConfigLexerState.lineNum++;
1640 /* Don't return EOLTOK! */
1641 }
1642 YY_BREAK
1643case 4:
Chris Lattnera62e8e42007-12-29 20:47:37 +00001644/* rule 4 can match eol */
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001645YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001646#line 128 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001647{ ConfigLexerState.in_value = false;
1648 ConfigLexerState.lineNum++;
1649 return EOLTOK;
1650 }
1651 YY_BREAK
1652case 5:
1653YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001654#line 133 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001655{ ConfigLexerState.in_value = true;
1656 return EQUALS;
1657 }
1658 YY_BREAK
1659case 6:
1660YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001661#line 137 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001662{ return SEPARATOR; }
1663 YY_BREAK
1664case 7:
1665YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001666#line 139 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001667{ return handleNameContext(VERSION_TOK); }
1668 YY_BREAK
1669case 8:
1670YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001671#line 141 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001672{ return handleNameContext(LANG); }
1673 YY_BREAK
1674case 9:
1675YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001676#line 142 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001677{ return handleNameContext(LIBS); }
1678 YY_BREAK
1679case 10:
1680YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001681#line 143 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001682{ return handleNameContext(NAME); }
1683 YY_BREAK
1684case 11:
1685YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001686#line 144 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001687{ return handleNameContext(OPT1); }
1688 YY_BREAK
1689case 12:
1690YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001691#line 145 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001692{ return handleNameContext(OPT2); }
1693 YY_BREAK
1694case 13:
1695YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001696#line 146 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001697{ return handleNameContext(OPT3); }
1698 YY_BREAK
1699case 14:
1700YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001701#line 147 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001702{ return handleNameContext(OPT4); }
1703 YY_BREAK
1704case 15:
1705YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001706#line 148 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001707{ return handleNameContext(OPT5); }
1708 YY_BREAK
1709case 16:
1710YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001711#line 150 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001712{ return handleNameContext(PREPROCESSOR); }
1713 YY_BREAK
1714case 17:
1715YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001716#line 151 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001717{ return handleNameContext(COMMAND); }
1718 YY_BREAK
1719case 18:
1720YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001721#line 152 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001722{ return handleNameContext(REQUIRED); }
1723 YY_BREAK
1724case 19:
1725YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001726#line 154 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001727{ return handleNameContext(TRANSLATOR); }
1728 YY_BREAK
1729case 20:
1730YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001731#line 155 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001732{ return handleNameContext(PREPROCESSES); }
1733 YY_BREAK
1734case 21:
1735YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001736#line 156 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001737{ return handleNameContext(OUTPUT); }
1738 YY_BREAK
1739case 22:
1740YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001741#line 158 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001742{ return handleNameContext(OPTIMIZER); }
1743 YY_BREAK
1744case 23:
1745YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001746#line 159 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001747{ return handleNameContext(TRANSLATES); }
1748 YY_BREAK
1749case 24:
1750YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001751#line 161 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001752{ return handleNameContext(ASSEMBLER); }
1753 YY_BREAK
1754case 25:
1755YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001756#line 163 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001757{ return handleNameContext(LINKER); }
1758 YY_BREAK
1759case 26:
1760YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001761#line 165 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001762{ return handleSubstitution(ARGS_SUBST); }
1763 YY_BREAK
1764case 27:
1765YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001766#line 166 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001767{ return handleSubstitution(BINDIR_SUBST); }
1768 YY_BREAK
1769case 28:
1770YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001771#line 167 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001772{ return handleSubstitution(DEFS_SUBST); }
1773 YY_BREAK
1774case 29:
1775YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001776#line 168 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001777{ return handleSubstitution(IN_SUBST); }
1778 YY_BREAK
1779case 30:
1780YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001781#line 169 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001782{ return handleSubstitution(INCLS_SUBST); }
1783 YY_BREAK
1784case 31:
1785YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001786#line 170 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001787{ return handleSubstitution(LIBDIR_SUBST); }
1788 YY_BREAK
1789case 32:
1790YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001791#line 171 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001792{ return handleSubstitution(LIBS_SUBST); }
1793 YY_BREAK
1794case 33:
1795YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001796#line 172 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001797{ return handleSubstitution(LLVMGCCDIR_SUBST); }
1798 YY_BREAK
1799case 34:
1800YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001801#line 173 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001802{ return handleSubstitution(LLVMGCCARCH_SUBST); }
1803 YY_BREAK
1804case 35:
1805YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001806#line 174 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001807{ return handleSubstitution(LLVMGCC_SUBST); }
1808 YY_BREAK
1809case 36:
1810YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001811#line 175 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001812{ return handleSubstitution(LLVMGXX_SUBST); }
1813 YY_BREAK
1814case 37:
1815YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001816#line 176 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001817{ return handleSubstitution(LLVMCC1_SUBST); }
1818 YY_BREAK
1819case 38:
1820YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001821#line 177 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001822{ return handleSubstitution(LLVMCC1PLUS_SUBST); }
1823 YY_BREAK
1824case 39:
1825YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001826#line 178 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001827{ return handleSubstitution(OPT_SUBST); }
1828 YY_BREAK
1829case 40:
1830YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001831#line 179 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001832{ return handleSubstitution(OUT_SUBST); }
1833 YY_BREAK
1834case 41:
1835YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001836#line 180 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001837{ return handleSubstitution(STATS_SUBST); }
1838 YY_BREAK
1839case 42:
1840YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001841#line 181 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001842{ return handleSubstitution(TARGET_SUBST); }
1843 YY_BREAK
1844case 43:
1845YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001846#line 182 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001847{ return handleSubstitution(TIME_SUBST); }
1848 YY_BREAK
1849case 44:
1850YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001851#line 183 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001852{ return handleSubstitution(VERBOSE_SUBST); }
1853 YY_BREAK
1854case 45:
1855YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001856#line 184 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001857{ return handleSubstitution(FOPTS_SUBST); }
1858 YY_BREAK
1859case 46:
1860YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001861#line 185 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001862{ return handleSubstitution(MOPTS_SUBST); }
1863 YY_BREAK
1864case 47:
1865YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001866#line 186 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001867{ return handleSubstitution(WOPTS_SUBST); }
1868 YY_BREAK
1869case 48:
1870YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001871#line 188 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001872{ return handleValueContext(ASSEMBLY); }
1873 YY_BREAK
1874case 49:
1875YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001876#line 189 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001877{ return handleValueContext(BITCODE); }
1878 YY_BREAK
1879case 50:
1880YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001881#line 190 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001882{ return handleValueContext(TRUETOK); }
1883 YY_BREAK
1884case 51:
1885YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001886#line 191 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001887{ return handleValueContext(FALSETOK); }
1888 YY_BREAK
1889case 52:
1890YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001891#line 193 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
1892{ ConfigLexerState.StringVal = Configtext; return OPTION; }
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001893 YY_BREAK
1894case 53:
Chris Lattnera62e8e42007-12-29 20:47:37 +00001895/* rule 53 can match eol */
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001896YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001897#line 194 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
1898{ ConfigLexerState.StringVal = Configtext+1; // Nuke start quote
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001899 ConfigLexerState.StringVal.erase(
1900 --ConfigLexerState.StringVal.end());
1901 return STRING;
1902 }
1903 YY_BREAK
1904case 54:
1905YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001906#line 199 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001907{ YY_FATAL_ERROR("Invalid substitution token"); }
1908 YY_BREAK
1909case 55:
1910YY_RULE_SETUP
Chris Lattnera62e8e42007-12-29 20:47:37 +00001911#line 201 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001912ECHO;
1913 YY_BREAK
Chris Lattnera62e8e42007-12-29 20:47:37 +00001914#line 1915 "ConfigLexer.cpp"
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001915case YY_STATE_EOF(INITIAL):
1916 yyterminate();
1917
1918 case YY_END_OF_BUFFER:
1919 {
1920 /* Amount of text matched not including the EOB char. */
Chris Lattnera62e8e42007-12-29 20:47:37 +00001921 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001922
1923 /* Undo the effects of YY_DO_BEFORE_ACTION. */
Chris Lattnera62e8e42007-12-29 20:47:37 +00001924 *yy_cp = (yy_hold_char);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001925 YY_RESTORE_YY_MORE_OFFSET
1926
Chris Lattnera62e8e42007-12-29 20:47:37 +00001927 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001928 {
1929 /* We're scanning a new file or input source. It's
1930 * possible that this happened because the user
Chris Lattnera62e8e42007-12-29 20:47:37 +00001931 * just pointed Configin at a new source and called
1932 * Configlex(). If so, then we have to assure
1933 * consistency between YY_CURRENT_BUFFER and our
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001934 * globals. Here is the right place to do so, because
1935 * this is the first action (other than possibly a
1936 * back-up) that will match for the new input source.
1937 */
Chris Lattnera62e8e42007-12-29 20:47:37 +00001938 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
1939 YY_CURRENT_BUFFER_LVALUE->yy_input_file = Configin;
1940 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001941 }
1942
1943 /* Note that here we test for yy_c_buf_p "<=" to the position
1944 * of the first EOB in the buffer, since yy_c_buf_p will
1945 * already have been incremented past the NUL character
1946 * (since all states make transitions on EOB to the
1947 * end-of-buffer state). Contrast this with the test
1948 * in input().
1949 */
Chris Lattnera62e8e42007-12-29 20:47:37 +00001950 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001951 { /* This was really a NUL. */
1952 yy_state_type yy_next_state;
1953
Chris Lattnera62e8e42007-12-29 20:47:37 +00001954 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001955
Chris Lattnera62e8e42007-12-29 20:47:37 +00001956 yy_current_state = yy_get_previous_state( );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001957
1958 /* Okay, we're now positioned to make the NUL
1959 * transition. We couldn't have
1960 * yy_get_previous_state() go ahead and do it
1961 * for us because it doesn't know how to deal
1962 * with the possibility of jamming (and we don't
1963 * want to build jamming into it because then it
1964 * will run more slowly).
1965 */
1966
1967 yy_next_state = yy_try_NUL_trans( yy_current_state );
1968
Chris Lattnera62e8e42007-12-29 20:47:37 +00001969 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001970
1971 if ( yy_next_state )
1972 {
1973 /* Consume the NUL. */
Chris Lattnera62e8e42007-12-29 20:47:37 +00001974 yy_cp = ++(yy_c_buf_p);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001975 yy_current_state = yy_next_state;
1976 goto yy_match;
1977 }
1978
1979 else
1980 {
Chris Lattnera62e8e42007-12-29 20:47:37 +00001981 yy_cp = (yy_last_accepting_cpos);
1982 yy_current_state = (yy_last_accepting_state);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001983 goto yy_find_action;
1984 }
1985 }
1986
Chris Lattnera62e8e42007-12-29 20:47:37 +00001987 else switch ( yy_get_next_buffer( ) )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001988 {
1989 case EOB_ACT_END_OF_FILE:
1990 {
Chris Lattnera62e8e42007-12-29 20:47:37 +00001991 (yy_did_buffer_switch_on_eof) = 0;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001992
Chris Lattnera62e8e42007-12-29 20:47:37 +00001993 if ( Configwrap( ) )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001994 {
1995 /* Note: because we've taken care in
1996 * yy_get_next_buffer() to have set up
Chris Lattnera62e8e42007-12-29 20:47:37 +00001997 * Configtext, we can now set up
Dan Gohmanf17a25c2007-07-18 16:29:46 +00001998 * yy_c_buf_p so that if some total
1999 * hoser (like flex itself) wants to
2000 * call the scanner after we return the
2001 * YY_NULL, it'll still work - another
2002 * YY_NULL will get returned.
2003 */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002004 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002005
2006 yy_act = YY_STATE_EOF(YY_START);
2007 goto do_action;
2008 }
2009
2010 else
2011 {
Chris Lattnera62e8e42007-12-29 20:47:37 +00002012 if ( ! (yy_did_buffer_switch_on_eof) )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002013 YY_NEW_FILE;
2014 }
2015 break;
2016 }
2017
2018 case EOB_ACT_CONTINUE_SCAN:
Chris Lattnera62e8e42007-12-29 20:47:37 +00002019 (yy_c_buf_p) =
2020 (yytext_ptr) + yy_amount_of_matched_text;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002021
Chris Lattnera62e8e42007-12-29 20:47:37 +00002022 yy_current_state = yy_get_previous_state( );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002023
Chris Lattnera62e8e42007-12-29 20:47:37 +00002024 yy_cp = (yy_c_buf_p);
2025 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002026 goto yy_match;
2027
2028 case EOB_ACT_LAST_MATCH:
Chris Lattnera62e8e42007-12-29 20:47:37 +00002029 (yy_c_buf_p) =
2030 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002031
Chris Lattnera62e8e42007-12-29 20:47:37 +00002032 yy_current_state = yy_get_previous_state( );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002033
Chris Lattnera62e8e42007-12-29 20:47:37 +00002034 yy_cp = (yy_c_buf_p);
2035 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002036 goto yy_find_action;
2037 }
2038 break;
2039 }
2040
2041 default:
2042 YY_FATAL_ERROR(
2043 "fatal flex scanner internal error--no action found" );
2044 } /* end of action switch */
2045 } /* end of scanning one token */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002046} /* end of Configlex */
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002047
2048/* yy_get_next_buffer - try to read in a new buffer
2049 *
2050 * Returns a code representing an action:
2051 * EOB_ACT_LAST_MATCH -
2052 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2053 * EOB_ACT_END_OF_FILE - end of file
2054 */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002055static int yy_get_next_buffer (void)
2056{
2057 register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
2058 register char *source = (yytext_ptr);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002059 register int number_to_move, i;
2060 int ret_val;
2061
Chris Lattnera62e8e42007-12-29 20:47:37 +00002062 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002063 YY_FATAL_ERROR(
2064 "fatal flex scanner internal error--end of buffer missed" );
2065
Chris Lattnera62e8e42007-12-29 20:47:37 +00002066 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002067 { /* Don't try to fill the buffer, so this is an EOF. */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002068 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002069 {
2070 /* We matched a single character, the EOB, so
2071 * treat this as a final EOF.
2072 */
2073 return EOB_ACT_END_OF_FILE;
2074 }
2075
2076 else
2077 {
2078 /* We matched some text prior to the EOB, first
2079 * process it.
2080 */
2081 return EOB_ACT_LAST_MATCH;
2082 }
2083 }
2084
2085 /* Try to read more data. */
2086
2087 /* First move last chars to start of buffer. */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002088 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002089
2090 for ( i = 0; i < number_to_move; ++i )
2091 *(dest++) = *(source++);
2092
Chris Lattnera62e8e42007-12-29 20:47:37 +00002093 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002094 /* don't do the read, it's not guaranteed to return an EOF,
2095 * just force an EOF
2096 */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002097 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002098
2099 else
2100 {
Chris Lattnera62e8e42007-12-29 20:47:37 +00002101 int num_to_read =
2102 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002103
2104 while ( num_to_read <= 0 )
2105 { /* Not enough room in the buffer - grow it. */
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002106
2107 /* just a shorter name for the current buffer */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002108 YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002109
2110 int yy_c_buf_p_offset =
Chris Lattnera62e8e42007-12-29 20:47:37 +00002111 (int) ((yy_c_buf_p) - b->yy_ch_buf);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002112
2113 if ( b->yy_is_our_buffer )
2114 {
2115 int new_size = b->yy_buf_size * 2;
2116
2117 if ( new_size <= 0 )
2118 b->yy_buf_size += b->yy_buf_size / 8;
2119 else
2120 b->yy_buf_size *= 2;
2121
2122 b->yy_ch_buf = (char *)
2123 /* Include room in for 2 EOB chars. */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002124 Configrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002125 }
2126 else
2127 /* Can't grow it, we don't own it. */
2128 b->yy_ch_buf = 0;
2129
2130 if ( ! b->yy_ch_buf )
2131 YY_FATAL_ERROR(
2132 "fatal error - scanner input buffer overflow" );
2133
Chris Lattnera62e8e42007-12-29 20:47:37 +00002134 (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002135
Chris Lattnera62e8e42007-12-29 20:47:37 +00002136 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002137 number_to_move - 1;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002138
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002139 }
2140
2141 if ( num_to_read > YY_READ_BUF_SIZE )
2142 num_to_read = YY_READ_BUF_SIZE;
2143
2144 /* Read in more data. */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002145 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
2146 (yy_n_chars), num_to_read );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002147
Chris Lattnera62e8e42007-12-29 20:47:37 +00002148 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002149 }
2150
Chris Lattnera62e8e42007-12-29 20:47:37 +00002151 if ( (yy_n_chars) == 0 )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002152 {
2153 if ( number_to_move == YY_MORE_ADJ )
2154 {
2155 ret_val = EOB_ACT_END_OF_FILE;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002156 Configrestart(Configin );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002157 }
2158
2159 else
2160 {
2161 ret_val = EOB_ACT_LAST_MATCH;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002162 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002163 YY_BUFFER_EOF_PENDING;
2164 }
2165 }
2166
2167 else
2168 ret_val = EOB_ACT_CONTINUE_SCAN;
2169
Chris Lattnera62e8e42007-12-29 20:47:37 +00002170 (yy_n_chars) += number_to_move;
2171 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
2172 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002173
Chris Lattnera62e8e42007-12-29 20:47:37 +00002174 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002175
2176 return ret_val;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002177}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002178
2179/* yy_get_previous_state - get the state just before the EOB char was reached */
2180
Chris Lattnera62e8e42007-12-29 20:47:37 +00002181 static yy_state_type yy_get_previous_state (void)
2182{
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002183 register yy_state_type yy_current_state;
2184 register char *yy_cp;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002185
2186 yy_current_state = (yy_start);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002187
Chris Lattnera62e8e42007-12-29 20:47:37 +00002188 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002189 {
2190 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
2191 if ( yy_accept[yy_current_state] )
2192 {
Chris Lattnera62e8e42007-12-29 20:47:37 +00002193 (yy_last_accepting_state) = yy_current_state;
2194 (yy_last_accepting_cpos) = yy_cp;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002195 }
2196 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2197 {
2198 yy_current_state = (int) yy_def[yy_current_state];
2199 if ( yy_current_state >= 408 )
2200 yy_c = yy_meta[(unsigned int) yy_c];
2201 }
2202 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2203 }
2204
2205 return yy_current_state;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002206}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002207
2208/* yy_try_NUL_trans - try to make a transition on the NUL character
2209 *
2210 * synopsis
2211 * next_state = yy_try_NUL_trans( current_state );
2212 */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002213 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
2214{
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002215 register int yy_is_jam;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002216 register char *yy_cp = (yy_c_buf_p);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002217
2218 register YY_CHAR yy_c = 1;
2219 if ( yy_accept[yy_current_state] )
2220 {
Chris Lattnera62e8e42007-12-29 20:47:37 +00002221 (yy_last_accepting_state) = yy_current_state;
2222 (yy_last_accepting_cpos) = yy_cp;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002223 }
2224 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2225 {
2226 yy_current_state = (int) yy_def[yy_current_state];
2227 if ( yy_current_state >= 408 )
2228 yy_c = yy_meta[(unsigned int) yy_c];
2229 }
2230 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2231 yy_is_jam = (yy_current_state == 407);
2232
2233 return yy_is_jam ? 0 : yy_current_state;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002234}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002235
Chris Lattnera62e8e42007-12-29 20:47:37 +00002236 static inline void yyunput (int c, register char * yy_bp )
2237{
2238 register char *yy_cp;
2239
2240 yy_cp = (yy_c_buf_p);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002241
Chris Lattnera62e8e42007-12-29 20:47:37 +00002242 /* undo effects of setting up Configtext */
2243 *yy_cp = (yy_hold_char);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002244
Chris Lattnera62e8e42007-12-29 20:47:37 +00002245 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002246 { /* need to shift things up to make room */
2247 /* +2 for EOB chars. */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002248 register int number_to_move = (yy_n_chars) + 2;
2249 register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
2250 YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002251 register char *source =
Chris Lattnera62e8e42007-12-29 20:47:37 +00002252 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002253
Chris Lattnera62e8e42007-12-29 20:47:37 +00002254 while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002255 *--dest = *--source;
2256
2257 yy_cp += (int) (dest - source);
2258 yy_bp += (int) (dest - source);
Chris Lattnera62e8e42007-12-29 20:47:37 +00002259 YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
2260 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002261
Chris Lattnera62e8e42007-12-29 20:47:37 +00002262 if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002263 YY_FATAL_ERROR( "flex scanner push-back overflow" );
2264 }
2265
2266 *--yy_cp = (char) c;
2267
Chris Lattnera62e8e42007-12-29 20:47:37 +00002268 (yytext_ptr) = yy_bp;
2269 (yy_hold_char) = *yy_cp;
2270 (yy_c_buf_p) = yy_cp;
2271}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002272
Chris Lattnera62e8e42007-12-29 20:47:37 +00002273#ifndef YY_NO_INPUT
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002274#ifdef __cplusplus
Chris Lattnera62e8e42007-12-29 20:47:37 +00002275 static int yyinput (void)
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002276#else
Chris Lattnera62e8e42007-12-29 20:47:37 +00002277 static int input (void)
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002278#endif
Chris Lattnera62e8e42007-12-29 20:47:37 +00002279
2280{
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002281 int c;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002282
2283 *(yy_c_buf_p) = (yy_hold_char);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002284
Chris Lattnera62e8e42007-12-29 20:47:37 +00002285 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002286 {
2287 /* yy_c_buf_p now points to the character we want to return.
2288 * If this occurs *before* the EOB characters, then it's a
2289 * valid NUL; if not, then we've hit the end of the buffer.
2290 */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002291 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002292 /* This was really a NUL. */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002293 *(yy_c_buf_p) = '\0';
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002294
2295 else
2296 { /* need more input */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002297 int offset = (yy_c_buf_p) - (yytext_ptr);
2298 ++(yy_c_buf_p);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002299
Chris Lattnera62e8e42007-12-29 20:47:37 +00002300 switch ( yy_get_next_buffer( ) )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002301 {
2302 case EOB_ACT_LAST_MATCH:
2303 /* This happens because yy_g_n_b()
2304 * sees that we've accumulated a
2305 * token and flags that we need to
2306 * try matching the token before
2307 * proceeding. But for input(),
2308 * there's no matching to consider.
2309 * So convert the EOB_ACT_LAST_MATCH
2310 * to EOB_ACT_END_OF_FILE.
2311 */
2312
2313 /* Reset buffer status. */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002314 Configrestart(Configin );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002315
Chris Lattnera62e8e42007-12-29 20:47:37 +00002316 /*FALLTHROUGH*/
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002317
2318 case EOB_ACT_END_OF_FILE:
2319 {
Chris Lattnera62e8e42007-12-29 20:47:37 +00002320 if ( Configwrap( ) )
2321 return 0;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002322
Chris Lattnera62e8e42007-12-29 20:47:37 +00002323 if ( ! (yy_did_buffer_switch_on_eof) )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002324 YY_NEW_FILE;
2325#ifdef __cplusplus
2326 return yyinput();
2327#else
2328 return input();
2329#endif
2330 }
2331
2332 case EOB_ACT_CONTINUE_SCAN:
Chris Lattnera62e8e42007-12-29 20:47:37 +00002333 (yy_c_buf_p) = (yytext_ptr) + offset;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002334 break;
2335 }
2336 }
2337 }
2338
Chris Lattnera62e8e42007-12-29 20:47:37 +00002339 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */
2340 *(yy_c_buf_p) = '\0'; /* preserve Configtext */
2341 (yy_hold_char) = *++(yy_c_buf_p);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002342
2343 return c;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002344}
2345#endif /* ifndef YY_NO_INPUT */
2346
2347/** Immediately switch to a different input stream.
2348 * @param input_file A readable stream.
2349 *
2350 * @note This function does not reset the start condition to @c INITIAL .
2351 */
2352 void Configrestart (FILE * input_file )
2353{
2354
2355 if ( ! YY_CURRENT_BUFFER ){
2356 Configensure_buffer_stack ();
2357 YY_CURRENT_BUFFER_LVALUE =
2358 Config_create_buffer(Configin,YY_BUF_SIZE );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002359 }
2360
Chris Lattnera62e8e42007-12-29 20:47:37 +00002361 Config_init_buffer(YY_CURRENT_BUFFER,input_file );
2362 Config_load_buffer_state( );
2363}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002364
Chris Lattnera62e8e42007-12-29 20:47:37 +00002365/** Switch to a different input buffer.
2366 * @param new_buffer The new input buffer.
2367 *
2368 */
2369 void Config_switch_to_buffer (YY_BUFFER_STATE new_buffer )
2370{
2371
2372 /* TODO. We should be able to replace this entire function body
2373 * with
2374 * Configpop_buffer_state();
2375 * Configpush_buffer_state(new_buffer);
2376 */
2377 Configensure_buffer_stack ();
2378 if ( YY_CURRENT_BUFFER == new_buffer )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002379 return;
2380
Chris Lattnera62e8e42007-12-29 20:47:37 +00002381 if ( YY_CURRENT_BUFFER )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002382 {
2383 /* Flush out information for old buffer. */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002384 *(yy_c_buf_p) = (yy_hold_char);
2385 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
2386 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002387 }
2388
Chris Lattnera62e8e42007-12-29 20:47:37 +00002389 YY_CURRENT_BUFFER_LVALUE = new_buffer;
2390 Config_load_buffer_state( );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002391
2392 /* We don't actually know whether we did this switch during
Chris Lattnera62e8e42007-12-29 20:47:37 +00002393 * EOF (Configwrap()) processing, but the only time this flag
2394 * is looked at is after Configwrap() is called, so it's safe
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002395 * to go ahead and always set it.
2396 */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002397 (yy_did_buffer_switch_on_eof) = 1;
2398}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002399
Chris Lattnera62e8e42007-12-29 20:47:37 +00002400static void Config_load_buffer_state (void)
2401{
2402 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
2403 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
2404 Configin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
2405 (yy_hold_char) = *(yy_c_buf_p);
2406}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002407
Chris Lattnera62e8e42007-12-29 20:47:37 +00002408/** Allocate and initialize an input buffer state.
2409 * @param file A readable stream.
2410 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
2411 *
2412 * @return the allocated buffer state.
2413 */
2414 YY_BUFFER_STATE Config_create_buffer (FILE * file, int size )
2415{
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002416 YY_BUFFER_STATE b;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002417
2418 b = (YY_BUFFER_STATE) Configalloc(sizeof( struct yy_buffer_state ) );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002419 if ( ! b )
Chris Lattnera62e8e42007-12-29 20:47:37 +00002420 YY_FATAL_ERROR( "out of dynamic memory in Config_create_buffer()" );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002421
2422 b->yy_buf_size = size;
2423
2424 /* yy_ch_buf has to be 2 characters longer than the size given because
2425 * we need to put in 2 end-of-buffer characters.
2426 */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002427 b->yy_ch_buf = (char *) Configalloc(b->yy_buf_size + 2 );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002428 if ( ! b->yy_ch_buf )
Chris Lattnera62e8e42007-12-29 20:47:37 +00002429 YY_FATAL_ERROR( "out of dynamic memory in Config_create_buffer()" );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002430
2431 b->yy_is_our_buffer = 1;
2432
Chris Lattnera62e8e42007-12-29 20:47:37 +00002433 Config_init_buffer(b,file );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002434
2435 return b;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002436}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002437
Chris Lattnera62e8e42007-12-29 20:47:37 +00002438/** Destroy the buffer.
2439 * @param b a buffer created with Config_create_buffer()
2440 *
2441 */
2442 void Config_delete_buffer (YY_BUFFER_STATE b )
2443{
2444
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002445 if ( ! b )
2446 return;
2447
Chris Lattnera62e8e42007-12-29 20:47:37 +00002448 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
2449 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002450
2451 if ( b->yy_is_our_buffer )
Chris Lattnera62e8e42007-12-29 20:47:37 +00002452 Configfree((void *) b->yy_ch_buf );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002453
Chris Lattnera62e8e42007-12-29 20:47:37 +00002454 Configfree((void *) b );
2455}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002456
Chris Lattnera62e8e42007-12-29 20:47:37 +00002457/* Initializes or reinitializes a buffer.
2458 * This function is sometimes called more than once on the same buffer,
2459 * such as during a Configrestart() or at EOF.
2460 */
2461 static void Config_init_buffer (YY_BUFFER_STATE b, FILE * file )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002462
Chris Lattnera62e8e42007-12-29 20:47:37 +00002463{
2464 int oerrno = errno;
2465
2466 Config_flush_buffer(b );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002467
2468 b->yy_input_file = file;
2469 b->yy_fill_buffer = 1;
2470
Chris Lattnera62e8e42007-12-29 20:47:37 +00002471 /* If b is the current buffer, then Config_init_buffer was _probably_
2472 * called from Configrestart() or through yy_get_next_buffer.
2473 * In that case, we don't want to reset the lineno or column.
2474 */
2475 if (b != YY_CURRENT_BUFFER){
2476 b->yy_bs_lineno = 1;
2477 b->yy_bs_column = 0;
2478 }
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002479
Chris Lattnera62e8e42007-12-29 20:47:37 +00002480 b->yy_is_interactive = 0;
2481
2482 errno = oerrno;
2483}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002484
Chris Lattnera62e8e42007-12-29 20:47:37 +00002485/** Discard all buffered characters. On the next scan, YY_INPUT will be called.
2486 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
2487 *
2488 */
2489 void Config_flush_buffer (YY_BUFFER_STATE b )
2490{
2491 if ( ! b )
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002492 return;
2493
2494 b->yy_n_chars = 0;
2495
2496 /* We always need two end-of-buffer characters. The first causes
2497 * a transition to the end-of-buffer state. The second causes
2498 * a jam in that state.
2499 */
2500 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
2501 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
2502
2503 b->yy_buf_pos = &b->yy_ch_buf[0];
2504
2505 b->yy_at_bol = 1;
2506 b->yy_buffer_status = YY_BUFFER_NEW;
2507
Chris Lattnera62e8e42007-12-29 20:47:37 +00002508 if ( b == YY_CURRENT_BUFFER )
2509 Config_load_buffer_state( );
2510}
2511
2512/** Pushes the new state onto the stack. The new state becomes
2513 * the current state. This function will allocate the stack
2514 * if necessary.
2515 * @param new_buffer The new state.
2516 *
2517 */
2518void Configpush_buffer_state (YY_BUFFER_STATE new_buffer )
2519{
2520 if (new_buffer == NULL)
2521 return;
2522
2523 Configensure_buffer_stack();
2524
2525 /* This block is copied from Config_switch_to_buffer. */
2526 if ( YY_CURRENT_BUFFER )
2527 {
2528 /* Flush out information for old buffer. */
2529 *(yy_c_buf_p) = (yy_hold_char);
2530 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
2531 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
2532 }
2533
2534 /* Only push if top exists. Otherwise, replace top. */
2535 if (YY_CURRENT_BUFFER)
2536 (yy_buffer_stack_top)++;
2537 YY_CURRENT_BUFFER_LVALUE = new_buffer;
2538
2539 /* copied from Config_switch_to_buffer. */
2540 Config_load_buffer_state( );
2541 (yy_did_buffer_switch_on_eof) = 1;
2542}
2543
2544/** Removes and deletes the top of the stack, if present.
2545 * The next element becomes the new top.
2546 *
2547 */
2548void Configpop_buffer_state (void)
2549{
2550 if (!YY_CURRENT_BUFFER)
2551 return;
2552
2553 Config_delete_buffer(YY_CURRENT_BUFFER );
2554 YY_CURRENT_BUFFER_LVALUE = NULL;
2555 if ((yy_buffer_stack_top) > 0)
2556 --(yy_buffer_stack_top);
2557
2558 if (YY_CURRENT_BUFFER) {
2559 Config_load_buffer_state( );
2560 (yy_did_buffer_switch_on_eof) = 1;
2561 }
2562}
2563
2564/* Allocates the stack if it does not exist.
2565 * Guarantees space for at least one push.
2566 */
2567static void Configensure_buffer_stack (void)
2568{
2569 int num_to_alloc;
2570
2571 if (!(yy_buffer_stack)) {
2572
2573 /* First allocation is just for 2 elements, since we don't know if this
2574 * scanner will even need a stack. We use 2 instead of 1 to avoid an
2575 * immediate realloc on the next call.
2576 */
2577 num_to_alloc = 1;
2578 (yy_buffer_stack) = (struct yy_buffer_state**)Configalloc
2579 (num_to_alloc * sizeof(struct yy_buffer_state*)
2580 );
2581
2582 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
2583
2584 (yy_buffer_stack_max) = num_to_alloc;
2585 (yy_buffer_stack_top) = 0;
2586 return;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002587 }
2588
Chris Lattnera62e8e42007-12-29 20:47:37 +00002589 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002590
Chris Lattnera62e8e42007-12-29 20:47:37 +00002591 /* Increase the buffer to prepare for a possible push. */
2592 int grow_size = 8 /* arbitrary grow size */;
2593
2594 num_to_alloc = (yy_buffer_stack_max) + grow_size;
2595 (yy_buffer_stack) = (struct yy_buffer_state**)Configrealloc
2596 ((yy_buffer_stack),
2597 num_to_alloc * sizeof(struct yy_buffer_state*)
2598 );
2599
2600 /* zero only the new slots.*/
2601 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
2602 (yy_buffer_stack_max) = num_to_alloc;
2603 }
2604}
2605
2606/** Setup the input buffer state to scan directly from a user-specified character buffer.
2607 * @param base the character buffer
2608 * @param size the size in bytes of the character buffer
2609 *
2610 * @return the newly allocated buffer state object.
2611 */
2612YY_BUFFER_STATE Config_scan_buffer (char * base, yy_size_t size )
2613{
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002614 YY_BUFFER_STATE b;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002615
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002616 if ( size < 2 ||
2617 base[size-2] != YY_END_OF_BUFFER_CHAR ||
2618 base[size-1] != YY_END_OF_BUFFER_CHAR )
2619 /* They forgot to leave room for the EOB's. */
2620 return 0;
2621
Chris Lattnera62e8e42007-12-29 20:47:37 +00002622 b = (YY_BUFFER_STATE) Configalloc(sizeof( struct yy_buffer_state ) );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002623 if ( ! b )
Chris Lattnera62e8e42007-12-29 20:47:37 +00002624 YY_FATAL_ERROR( "out of dynamic memory in Config_scan_buffer()" );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002625
2626 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
2627 b->yy_buf_pos = b->yy_ch_buf = base;
2628 b->yy_is_our_buffer = 0;
2629 b->yy_input_file = 0;
2630 b->yy_n_chars = b->yy_buf_size;
2631 b->yy_is_interactive = 0;
2632 b->yy_at_bol = 1;
2633 b->yy_fill_buffer = 0;
2634 b->yy_buffer_status = YY_BUFFER_NEW;
2635
Chris Lattnera62e8e42007-12-29 20:47:37 +00002636 Config_switch_to_buffer(b );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002637
2638 return b;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002639}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002640
Chris Lattnera62e8e42007-12-29 20:47:37 +00002641/** Setup the input buffer state to scan a string. The next call to Configlex() will
2642 * scan from a @e copy of @a str.
2643 * @param str a NUL-terminated string to scan
2644 *
2645 * @return the newly allocated buffer state object.
2646 * @note If you want to scan bytes that may contain NUL values, then use
2647 * Config_scan_bytes() instead.
2648 */
2649YY_BUFFER_STATE Config_scan_string (yyconst char * yystr )
2650{
2651
2652 return Config_scan_bytes(yystr,strlen(yystr) );
2653}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002654
Chris Lattnera62e8e42007-12-29 20:47:37 +00002655/** Setup the input buffer state to scan the given bytes. The next call to Configlex() will
2656 * scan from a @e copy of @a bytes.
2657 * @param bytes the byte buffer to scan
2658 * @param len the number of bytes in the buffer pointed to by @a bytes.
2659 *
2660 * @return the newly allocated buffer state object.
2661 */
2662YY_BUFFER_STATE Config_scan_bytes (yyconst char * yybytes, int _yybytes_len )
2663{
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002664 YY_BUFFER_STATE b;
2665 char *buf;
2666 yy_size_t n;
2667 int i;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002668
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002669 /* Get memory for full buffer, including space for trailing EOB's. */
Chris Lattnera62e8e42007-12-29 20:47:37 +00002670 n = _yybytes_len + 2;
2671 buf = (char *) Configalloc(n );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002672 if ( ! buf )
Chris Lattnera62e8e42007-12-29 20:47:37 +00002673 YY_FATAL_ERROR( "out of dynamic memory in Config_scan_bytes()" );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002674
Chris Lattnera62e8e42007-12-29 20:47:37 +00002675 for ( i = 0; i < _yybytes_len; ++i )
2676 buf[i] = yybytes[i];
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002677
Chris Lattnera62e8e42007-12-29 20:47:37 +00002678 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002679
Chris Lattnera62e8e42007-12-29 20:47:37 +00002680 b = Config_scan_buffer(buf,n );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002681 if ( ! b )
Chris Lattnera62e8e42007-12-29 20:47:37 +00002682 YY_FATAL_ERROR( "bad buffer in Config_scan_bytes()" );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002683
2684 /* It's okay to grow etc. this buffer, and we should throw it
2685 * away when we're done.
2686 */
2687 b->yy_is_our_buffer = 1;
2688
2689 return b;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002690}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002691
2692#ifndef YY_EXIT_FAILURE
2693#define YY_EXIT_FAILURE 2
2694#endif
2695
Chris Lattnera62e8e42007-12-29 20:47:37 +00002696static void yy_fatal_error (yyconst char* msg )
2697{
2698 (void) fprintf( stderr, "%s\n", msg );
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002699 exit( YY_EXIT_FAILURE );
Chris Lattnera62e8e42007-12-29 20:47:37 +00002700}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002701
2702/* Redefine yyless() so it works in section 3 code. */
2703
2704#undef yyless
2705#define yyless(n) \
2706 do \
2707 { \
Chris Lattnera62e8e42007-12-29 20:47:37 +00002708 /* Undo effects of setting up Configtext. */ \
2709 int yyless_macro_arg = (n); \
2710 YY_LESS_LINENO(yyless_macro_arg);\
2711 Configtext[Configleng] = (yy_hold_char); \
2712 (yy_c_buf_p) = Configtext + yyless_macro_arg; \
2713 (yy_hold_char) = *(yy_c_buf_p); \
2714 *(yy_c_buf_p) = '\0'; \
2715 Configleng = yyless_macro_arg; \
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002716 } \
2717 while ( 0 )
2718
Chris Lattnera62e8e42007-12-29 20:47:37 +00002719/* Accessor methods (get/set functions) to struct members. */
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002720
Chris Lattnera62e8e42007-12-29 20:47:37 +00002721/** Get the current line number.
2722 *
2723 */
2724int Configget_lineno (void)
2725{
2726
2727 return Configlineno;
2728}
2729
2730/** Get the input stream.
2731 *
2732 */
2733FILE *Configget_in (void)
2734{
2735 return Configin;
2736}
2737
2738/** Get the output stream.
2739 *
2740 */
2741FILE *Configget_out (void)
2742{
2743 return Configout;
2744}
2745
2746/** Get the length of the current token.
2747 *
2748 */
2749int Configget_leng (void)
2750{
2751 return Configleng;
2752}
2753
2754/** Get the current token.
2755 *
2756 */
2757
2758char *Configget_text (void)
2759{
2760 return Configtext;
2761}
2762
2763/** Set the current line number.
2764 * @param line_number
2765 *
2766 */
2767void Configset_lineno (int line_number )
2768{
2769
2770 Configlineno = line_number;
2771}
2772
2773/** Set the input stream. This does not discard the current
2774 * input buffer.
2775 * @param in_str A readable stream.
2776 *
2777 * @see Config_switch_to_buffer
2778 */
2779void Configset_in (FILE * in_str )
2780{
2781 Configin = in_str ;
2782}
2783
2784void Configset_out (FILE * out_str )
2785{
2786 Configout = out_str ;
2787}
2788
2789int Configget_debug (void)
2790{
2791 return Config_flex_debug;
2792}
2793
2794void Configset_debug (int bdebug )
2795{
2796 Config_flex_debug = bdebug ;
2797}
2798
2799static int yy_init_globals (void)
2800{
2801 /* Initialization is the same as for the non-reentrant scanner.
2802 * This function is called from Configlex_destroy(), so don't allocate here.
2803 */
2804
2805 (yy_buffer_stack) = 0;
2806 (yy_buffer_stack_top) = 0;
2807 (yy_buffer_stack_max) = 0;
2808 (yy_c_buf_p) = (char *) 0;
2809 (yy_init) = 0;
2810 (yy_start) = 0;
2811
2812/* Defined in main.c */
2813#ifdef YY_STDINIT
2814 Configin = stdin;
2815 Configout = stdout;
2816#else
2817 Configin = (FILE *) 0;
2818 Configout = (FILE *) 0;
2819#endif
2820
2821 /* For future reference: Set errno on error, since we are called by
2822 * Configlex_init()
2823 */
2824 return 0;
2825}
2826
2827/* Configlex_destroy is for both reentrant and non-reentrant scanners. */
2828int Configlex_destroy (void)
2829{
2830
2831 /* Pop the buffer stack, destroying each element. */
2832 while(YY_CURRENT_BUFFER){
2833 Config_delete_buffer(YY_CURRENT_BUFFER );
2834 YY_CURRENT_BUFFER_LVALUE = NULL;
2835 Configpop_buffer_state();
2836 }
2837
2838 /* Destroy the stack itself. */
2839 Configfree((yy_buffer_stack) );
2840 (yy_buffer_stack) = NULL;
2841
2842 /* Reset the globals. This is important in a non-reentrant scanner so the next time
2843 * Configlex() is called, initialization will occur. */
2844 yy_init_globals( );
2845
2846 return 0;
2847}
2848
2849/*
2850 * Internal utility routines.
2851 */
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002852
2853#ifndef yytext_ptr
Chris Lattnera62e8e42007-12-29 20:47:37 +00002854static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
2855{
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002856 register int i;
2857 for ( i = 0; i < n; ++i )
2858 s1[i] = s2[i];
Chris Lattnera62e8e42007-12-29 20:47:37 +00002859}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002860#endif
2861
2862#ifdef YY_NEED_STRLEN
Chris Lattnera62e8e42007-12-29 20:47:37 +00002863static int yy_flex_strlen (yyconst char * s )
2864{
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002865 register int n;
2866 for ( n = 0; s[n]; ++n )
2867 ;
2868
2869 return n;
Chris Lattnera62e8e42007-12-29 20:47:37 +00002870}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002871#endif
2872
Chris Lattnera62e8e42007-12-29 20:47:37 +00002873void *Configalloc (yy_size_t size )
2874{
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002875 return (void *) malloc( size );
Chris Lattnera62e8e42007-12-29 20:47:37 +00002876}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002877
Chris Lattnera62e8e42007-12-29 20:47:37 +00002878void *Configrealloc (void * ptr, yy_size_t size )
2879{
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002880 /* The cast to (char *) in the following accommodates both
2881 * implementations that use char* generic pointers, and those
2882 * that use void* generic pointers. It works with the latter
2883 * because both ANSI C and C++ allow castless assignment from
2884 * any pointer type to void*, and deal with argument conversions
2885 * as though doing an assignment.
2886 */
2887 return (void *) realloc( (char *) ptr, size );
Chris Lattnera62e8e42007-12-29 20:47:37 +00002888}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002889
Chris Lattnera62e8e42007-12-29 20:47:37 +00002890void Configfree (void * ptr )
2891{
2892 free( (char *) ptr ); /* see Configrealloc() for (char *) cast */
2893}
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002894
Chris Lattnera62e8e42007-12-29 20:47:37 +00002895#define YYTABLES_NAME "yytables"
2896
2897#line 201 "/Users/sabre/llvm/tools/llvmc/ConfigLexer.l"
2898
2899
Dan Gohmanf17a25c2007-07-18 16:29:46 +00002900