00001
00002
00003
00004
00005 #line 2 "../../gcc/gcc/gengtype-lex.c"
00006
00007
00008
00009
00010
00011
00012 #define FLEX_SCANNER
00013 #define YY_FLEX_MAJOR_VERSION 2
00014 #define YY_FLEX_MINOR_VERSION 5
00015
00016 #include <stdio.h>
00017 #include <unistd.h>
00018
00019
00020
00021 #ifdef c_plusplus
00022 #ifndef __cplusplus
00023 #define __cplusplus
00024 #endif
00025 #endif
00026
00027
00028 #ifdef __cplusplus
00029
00030 #include <stdlib.h>
00031
00032
00033 #define YY_USE_PROTOS
00034
00035
00036 #define YY_USE_CONST
00037
00038 #else
00039
00040 #if __STDC__
00041
00042 #define YY_USE_PROTOS
00043 #define YY_USE_CONST
00044
00045 #endif
00046 #endif
00047
00048 #ifdef __TURBOC__
00049 #pragma warn -rch
00050 #pragma warn -use
00051 #include <io.h>
00052 #include <stdlib.h>
00053 #define YY_USE_CONST
00054 #define YY_USE_PROTOS
00055 #endif
00056
00057 #ifdef YY_USE_CONST
00058 #define yyconst const
00059 #else
00060 #define yyconst
00061 #endif
00062
00063
00064 #ifdef YY_USE_PROTOS
00065 #define YY_PROTO(proto) proto
00066 #else
00067 #define YY_PROTO(proto) ()
00068 #endif
00069
00070
00071 #define YY_NULL 0
00072
00073
00074
00075
00076
00077
00078 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
00079
00080
00081
00082
00083
00084 #define BEGIN yy_start = 1 + 2 *
00085
00086
00087
00088
00089
00090 #define YY_START ((yy_start - 1) / 2)
00091 #define YYSTATE YY_START
00092
00093
00094 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
00095
00096
00097 #define YY_NEW_FILE yyrestart( yyin )
00098
00099 #define YY_END_OF_BUFFER_CHAR 0
00100
00101
00102 #define YY_BUF_SIZE 16384
00103
00104 typedef struct yy_buffer_state *YY_BUFFER_STATE;
00105
00106 extern int yyleng;
00107 extern FILE *yyin, *yyout;
00108
00109 #define EOB_ACT_CONTINUE_SCAN 0
00110 #define EOB_ACT_END_OF_FILE 1
00111 #define EOB_ACT_LAST_MATCH 2
00112
00113
00114
00115
00116
00117
00118
00119
00120
00121
00122
00123
00124
00125
00126
00127
00128
00129 #define yyless(n) \
00130 do \
00131 { \
00132 \
00133 *yy_cp = yy_hold_char; \
00134 YY_RESTORE_YY_MORE_OFFSET \
00135 yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
00136 YY_DO_BEFORE_ACTION; \
00137 } \
00138 while ( 0 )
00139
00140 #define unput(c) yyunput( c, yytext_ptr )
00141
00142
00143
00144
00145
00146 typedef unsigned int yy_size_t;
00147
00148
00149 struct yy_buffer_state
00150 {
00151 FILE *yy_input_file;
00152
00153 char *yy_ch_buf;
00154 char *yy_buf_pos;
00155
00156
00157
00158
00159 yy_size_t yy_buf_size;
00160
00161
00162
00163
00164 int yy_n_chars;
00165
00166
00167
00168
00169
00170 int yy_is_our_buffer;
00171
00172
00173
00174
00175
00176
00177 int yy_is_interactive;
00178
00179
00180
00181
00182
00183 int yy_at_bol;
00184
00185
00186
00187
00188 int yy_fill_buffer;
00189
00190 int yy_buffer_status;
00191 #define YY_BUFFER_NEW 0
00192 #define YY_BUFFER_NORMAL 1
00193
00194
00195
00196
00197
00198
00199
00200
00201
00202
00203 #define YY_BUFFER_EOF_PENDING 2
00204 };
00205
00206 static YY_BUFFER_STATE yy_current_buffer = 0;
00207
00208
00209
00210
00211
00212 #define YY_CURRENT_BUFFER yy_current_buffer
00213
00214
00215
00216 static char yy_hold_char;
00217
00218 static int yy_n_chars;
00219
00220
00221 int yyleng;
00222
00223
00224 static char *yy_c_buf_p = (char *) 0;
00225 static int yy_init = 1;
00226 static int yy_start = 0;
00227
00228
00229
00230
00231 static int yy_did_buffer_switch_on_eof;
00232
00233 void yyrestart YY_PROTO(( FILE *input_file ));
00234
00235 void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
00236 void yy_load_buffer_state YY_PROTO(( void ));
00237 YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
00238 void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
00239 void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
00240 void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));
00241 #define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
00242
00243 YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
00244 YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
00245 YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
00246
00247 static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
00248 static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));
00249 static void yy_flex_free YY_PROTO(( void * ));
00250
00251 #define yy_new_buffer yy_create_buffer
00252
00253 #define yy_set_interactive(is_interactive) \
00254 { \
00255 if ( ! yy_current_buffer ) \
00256 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
00257 yy_current_buffer->yy_is_interactive = is_interactive; \
00258 }
00259
00260 #define yy_set_bol(at_bol) \
00261 { \
00262 if ( ! yy_current_buffer ) \
00263 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
00264 yy_current_buffer->yy_at_bol = at_bol; \
00265 }
00266
00267 #define YY_AT_BOL() (yy_current_buffer->yy_at_bol)
00268
00269
00270 #define yywrap() 1
00271 #define YY_SKIP_YYWRAP
00272 typedef unsigned char YY_CHAR;
00273 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
00274 typedef int yy_state_type;
00275 extern char *yytext;
00276 #define yytext_ptr yytext
00277
00278 static yy_state_type yy_get_previous_state YY_PROTO(( void ));
00279 static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
00280 static int yy_get_next_buffer YY_PROTO(( void ));
00281 static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
00282
00283
00284
00285
00286 #define YY_DO_BEFORE_ACTION \
00287 yytext_ptr = yy_bp; \
00288 yyleng = (int) (yy_cp - yy_bp); \
00289 yy_hold_char = *yy_cp; \
00290 *yy_cp = '\0'; \
00291 yy_c_buf_p = yy_cp;
00292
00293 #define YY_NUM_RULES 51
00294 #define YY_END_OF_BUFFER 52
00295 static yyconst short int yy_accept[718] =
00296 { 0,
00297 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00298 52, 34, 31, 49, 34, 49, 34, 32, 34, 29,
00299 10, 10, 29, 29, 26, 29, 17, 27, 29, 29,
00300 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
00301 29, 29, 39, 37, 50, 50, 45, 43, 48, 0,
00302 0, 0, 0, 0, 35, 0, 0, 0, 0, 0,
00303 0, 0, 0, 0, 0, 0, 36, 30, 36, 36,
00304 36, 36, 32, 0, 10, 0, 22, 0, 0, 0,
00305 8, 17, 21, 0, 0, 0, 0, 0, 23, 0,
00306 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00307
00308 0, 28, 24, 9, 0, 40, 42, 41, 0, 46,
00309 47, 0, 0, 0, 0, 0, 0, 0, 0, 33,
00310 0, 25, 0, 0, 0, 0, 0, 0, 0, 0,
00311 0, 0, 0, 0, 0, 0, 0, 0, 0, 24,
00312 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00313 0, 0, 0, 0, 12, 0, 0, 0, 19, 19,
00314 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00315 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00316 0, 0, 0, 0, 15, 0, 0, 0, 0, 0,
00317 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00318
00319 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00320 0, 0, 0, 0, 11, 0, 0, 0, 0, 0,
00321 0, 0, 0, 0, 0, 0, 0, 13, 0, 0,
00322 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00323 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00324 14, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00325 0, 0, 0, 19, 19, 0, 0, 0, 0, 0,
00326 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00327 0, 0, 0, 0, 0, 0, 0, 18, 0, 0,
00328 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00329
00330 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00331 0, 0, 0, 0, 0, 16, 0, 0, 6, 0,
00332 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00333 0, 0, 6, 0, 0, 0, 0, 0, 0, 0,
00334 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00335 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00336 0, 0, 0, 0, 0, 0, 5, 0, 0, 0,
00337 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00338 0, 5, 7, 0, 0, 0, 0, 0, 0, 0,
00339 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00340
00341 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00342 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00343 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00344 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00345 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00346 21, 21, 0, 0, 0, 0, 0, 0, 0, 0,
00347 0, 2, 0, 0, 0, 0, 0, 0, 0, 0,
00348 0, 0, 0, 0, 0, 0, 0, 2, 0, 0,
00349 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00350 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00351
00352 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00353 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00354 0, 20, 0, 0, 38, 44, 0, 0, 0, 0,
00355 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00356 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00357 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00358 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00359 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00360 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00361 3, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00362
00363 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
00364 3, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00365 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
00366 4, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00367 0, 0, 0, 5, 0, 4, 0, 0, 0, 0,
00368 0, 0, 0, 0, 0, 0, 0, 0, 5, 0,
00369 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00370 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00371 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00372 0, 0, 0, 0, 3, 3, 0, 0, 3, 3,
00373
00374 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
00375 0, 0, 0, 0, 0, 0, 0
00376 } ;
00377
00378 static yyconst int yy_ec[256] =
00379 { 0,
00380 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
00381 2, 2, 2, 1, 1, 1, 1, 1, 1, 1,
00382 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00383 1, 2, 1, 4, 1, 1, 5, 1, 6, 7,
00384 8, 9, 1, 10, 1, 1, 11, 12, 12, 12,
00385 12, 12, 12, 12, 12, 12, 12, 10, 13, 10,
00386 14, 10, 1, 1, 15, 16, 17, 18, 19, 20,
00387 21, 22, 23, 17, 17, 24, 25, 26, 27, 28,
00388 17, 29, 30, 31, 32, 17, 33, 17, 34, 17,
00389 35, 36, 37, 1, 38, 1, 39, 40, 41, 42,
00390
00391 43, 44, 45, 46, 47, 17, 17, 48, 49, 50,
00392 51, 52, 17, 53, 54, 55, 56, 17, 17, 57,
00393 58, 59, 60, 1, 61, 1, 1, 1, 1, 1,
00394 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00395 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00396 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00397 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00398 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00399 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00400 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00401
00402 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00403 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00404 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00405 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00406 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00407 1, 1, 1, 1, 1
00408 } ;
00409
00410 static yyconst int yy_meta[62] =
00411 { 0,
00412 1, 2, 3, 1, 4, 1, 5, 6, 7, 1,
00413 1, 8, 9, 1, 10, 10, 10, 10, 10, 10,
00414 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
00415 10, 10, 10, 10, 11, 1, 1, 10, 10, 10,
00416 10, 10, 10, 10, 10, 10, 10, 10, 10, 10,
00417 10, 10, 10, 10, 10, 10, 10, 10, 10, 12,
00418 1
00419 } ;
00420
00421 static yyconst short int yy_base[795] =
00422 { 0,
00423 0, 61, 122, 2455, 12, 13, 14, 15, 22, 23,
00424 2459, 0, 3, 45, 48, 39, 3410, 0, 62, 3410,
00425 17, 27, 40, 2420, 3410, 2433, 2429, 3410, 183, 244,
00426 7, 5, 2403, 26, 60, 57, 59, 27, 53, 169,
00427 63, 196, 0, 3410, 2428, 2427, 0, 0, 2376, 2379,
00428 2380, 2376, 2383, 76, 3410, 0, 202, 205, 203, 226,
00429 2426, 2428, 33, 208, 206, 192, 3410, 3410, 2373, 2374,
00430 2370, 2377, 0, 2376, 38, 83, 3410, 2422, 2418, 2420,
00431 3410, 2405, 3410, 2390, 19, 8, 84, 2378, 3410, 174,
00432 178, 173, 176, 179, 177, 182, 184, 185, 239, 187,
00433
00434 240, 3410, 0, 3410, 0, 3410, 3410, 3410, 0, 3410,
00435 3410, 2359, 229, 2361, 2365, 263, 267, 265, 274, 3410,
00436 2363, 3410, 196, 321, 89, 247, 249, 246, 248, 382,
00437 251, 307, 281, 259, 263, 265, 260, 264, 262, 0,
00438 0, 0, 2365, 2352, 2350, 2362, 2353, 307, 343, 338,
00439 332, 361, 2352, 311, 3410, 313, 312, 443, 3410, 418,
00440 314, 315, 318, 319, 322, 329, 326, 327, 0, 0,
00441 2349, 2334, 2339, 2337, 2328, 373, 367, 365, 374, 419,
00442 2326, 267, 200, 504, 3410, 479, 2348, 2323, 2327, 2322,
00443 2320, 182, 2319, 387, 266, 338, 374, 376, 565, 0,
00444
00445 0, 2318, 2324, 2309, 2320, 402, 426, 432, 428, 424,
00446 435, 405, 24, 401, 3410, 2332, 2305, 2314, 2296, 2297,
00447 2295, 416, 2280, 451, 444, 469, 626, 3410, 0, 0,
00448 431, 2275, 482, 494, 488, 687, 484, 335, 476, 2287,
00449 2268, 2262, 497, 2269, 2260, 2261, 2260, 2253, 467, 396,
00450 3410, 0, 0, 526, 520, 534, 556, 546, 748, 540,
00451 505, 519, 2255, 3410, 601, 2236, 2245, 2247, 2238, 809,
00452 508, 0, 0, 2249, 662, 578, 549, 552, 870, 617,
00453 931, 584, 531, 558, 2221, 2210, 2178, 3410, 992, 0,
00454 0, 2194, 587, 643, 605, 608, 664, 666, 673, 675,
00455
00456 2192, 557, 1053, 1114, 558, 568, 597, 571, 658, 624,
00457 675, 2167, 527, 590, 2174, 3410, 0, 0, 3410, 705,
00458 724, 727, 733, 735, 762, 769, 771, 785, 788, 795,
00459 957, 2125, 679, 1175, 823, 2078, 714, 694, 579, 617,
00460 631, 716, 748, 388, 752, 801, 2064, 464, 1978, 1955,
00461 0, 0, 657, 840, 729, 827, 967, 954, 848, 944,
00462 969, 975, 947, 977, 1014, 1028, 3410, 1236, 1010, 1297,
00463 739, 712, 590, 801, 755, 741, 804, 753, 811, 812,
00464 813, 939, 3410, 537, 826, 1880, 0, 0, 960, 859,
00465 862, 950, 1034, 1357, 1036, 1042, 1066, 1090, 1076, 1092,
00466
00467 1006, 1413, 1474, 1535, 1013, 1596, 928, 938, 1043, 946,
00468 997, 1005, 1103, 1856, 0, 0, 1819, 1074, 1084, 1099,
00469 1131, 1133, 1140, 1142, 1145, 1157, 1200, 1159, 1206, 1192,
00470 1166, 1213, 1194, 1094, 1221, 1224, 1657, 993, 1718, 1779,
00471 1057, 1125, 1021, 1105, 1171, 1053, 814, 1084, 1177, 1163,
00472 1251, 983, 1646, 0, 0, 1552, 1259, 1420, 1262, 1264,
00473 1273, 3410, 1310, 1276, 1278, 1280, 1312, 1316, 1318, 1334,
00474 1336, 1259, 1342, 1337, 754, 1372, 1354, 1280, 1127, 1204,
00475 1303, 1267, 1113, 1297, 1323, 1299, 1840, 1384, 1352, 1363,
00476 1381, 1330, 0, 0, 1259, 1045, 1392, 1399, 1390, 1438,
00477
00478 1426, 1444, 1440, 1442, 1456, 1458, 1461, 1486, 1468, 1353,
00479 1069, 1301, 1195, 1404, 1324, 1206, 1382, 1187, 1243, 1901,
00480 1492, 3410, 1500, 992, 3410, 3410, 993, 933, 1510, 1512,
00481 1961, 1518, 1549, 1551, 1670, 1554, 1521, 1524, 1429, 1492,
00482 1173, 1334, 2017, 1407, 1409, 1429, 1471, 2078, 2139, 2200,
00483 836, 764, 1672, 1674, 1556, 1563, 1565, 1682, 1688, 1686,
00484 1695, 1701, 1747, 1703, 1739, 1735, 1581, 1764, 1755, 1584,
00485 1735, 1677, 1547, 1363, 2261, 2322, 1410, 1528, 1684, 1659,
00486 1708, 1764, 1724, 826, 1492, 1796, 2383, 2444, 1546, 0,
00487 3410, 716, 1800, 1806, 1759, 1818, 1825, 1854, 1823, 1856,
00488
00489 1858, 1876, 1878, 1883, 1885, 1860, 1914, 3410, 1917, 1919,
00490 1676, 1739, 1655, 1673, 1921, 625, 1561, 1439, 1713, 1479,
00491 1505, 1746, 1749, 1908, 1810, 1941, 566, 1797, 1801, 1837,
00492 3410, 1953, 1963, 1956, 1969, 2106, 2108, 1983, 2091, 2114,
00493 2120, 2094, 2122, 1990, 1992, 1861, 1786, 1866, 1791, 1855,
00494 1904, 1777, 2099, 1845, 1865, 1920, 1906, 1941, 380, 1960,
00495 2127, 1997, 2153, 2160, 2504, 2169, 2175, 2177, 2181, 2214,
00496 1919, 1971, 2093, 1953, 2184, 2073, 1970, 2130, 2193, 1981,
00497 2219, 2240, 2228, 2242, 2246, 2274, 2154, 2085, 1984, 2192,
00498 2105, 1910, 2276, 2279, 2292, 2304, 2166, 2202, 332, 200,
00499
00500 2335, 2337, 2138, 2229, 2339, 2341, 2219, 2076, 2307, 2213,
00501 2398, 2263, 2396, 2169, 2364, 2281, 3410, 2560, 2572, 2584,
00502 2596, 2608, 2620, 2625, 2635, 2647, 2659, 2671, 2680, 2692,
00503 2704, 2716, 2728, 2733, 2743, 2755, 2767, 2779, 2791, 2803,
00504 2815, 2827, 2839, 2851, 2862, 2872, 2884, 2896, 2908, 2919,
00505 2929, 2941, 2953, 2964, 2974, 2986, 2997, 3007, 3019, 3031,
00506 3042, 3052, 3064, 3076, 3087, 3096, 3106, 3118, 3130, 3142,
00507 3153, 3162, 3172, 3184, 3196, 3207, 3217, 3228, 3238, 3250,
00508 3261, 3271, 3282, 3292, 3304, 3315, 3325, 3336, 3345, 3355,
00509 3366, 3375, 3385, 3397
00510
00511 } ;
00512
00513 static yyconst short int yy_def[795] =
00514 { 0,
00515 718, 718, 717, 3, 719, 719, 719, 719, 720, 720,
00516 717, 717, 717, 721, 722, 723, 717, 724, 717, 717,
00517 717, 717, 725, 726, 717, 717, 717, 717, 727, 727,
00518 30, 30, 728, 30, 30, 30, 30, 30, 30, 30,
00519 30, 729, 730, 717, 731, 731, 732, 732, 733, 717,
00520 717, 717, 717, 721, 717, 721, 721, 721, 721, 721,
00521 717, 722, 717, 717, 717, 717, 717, 717, 717, 717,
00522 717, 717, 724, 717, 717, 725, 717, 725, 717, 726,
00523 717, 717, 717, 30, 30, 30, 30, 728, 717, 30,
00524 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
00525
00526 30, 717, 734, 717, 735, 717, 717, 717, 736, 717,
00527 717, 717, 717, 717, 717, 721, 721, 721, 721, 717,
00528 717, 717, 30, 727, 30, 30, 30, 30, 30, 727,
00529 30, 30, 30, 30, 30, 30, 30, 30, 30, 734,
00530 737, 738, 717, 717, 717, 717, 717, 721, 721, 721,
00531 721, 721, 717, 30, 717, 30, 30, 727, 717, 717,
00532 30, 30, 30, 30, 30, 30, 30, 30, 739, 740,
00533 717, 717, 717, 717, 717, 721, 721, 721, 721, 721,
00534 717, 30, 30, 727, 717, 717, 717, 717, 717, 717,
00535 717, 717, 717, 30, 30, 30, 30, 30, 727, 741,
00536
00537 742, 717, 717, 717, 717, 717, 721, 721, 721, 721,
00538 721, 717, 30, 30, 717, 717, 717, 717, 717, 717,
00539 717, 717, 717, 30, 30, 30, 727, 717, 743, 744,
00540 717, 717, 745, 721, 721, 746, 745, 30, 30, 717,
00541 717, 717, 747, 717, 717, 717, 717, 717, 30, 30,
00542 717, 748, 749, 717, 717, 750, 721, 721, 751, 717,
00543 30, 30, 717, 717, 717, 717, 717, 717, 717, 727,
00544 30, 752, 753, 717, 754, 717, 750, 721, 717, 721,
00545 751, 717, 30, 30, 717, 717, 717, 717, 727, 755,
00546 756, 717, 757, 757, 757, 757, 757, 757, 757, 757,
00547
00548 717, 721, 758, 758, 304, 304, 304, 304, 304, 304,
00549 721, 717, 30, 30, 717, 717, 759, 760, 717, 761,
00550 717, 757, 757, 757, 757, 757, 757, 757, 757, 757,
00551 757, 717, 721, 762, 721, 304, 304, 304, 304, 304,
00552 304, 304, 304, 304, 304, 721, 717, 30, 30, 717,
00553 763, 764, 765, 717, 766, 757, 757, 757, 757, 757,
00554 757, 757, 757, 757, 757, 757, 717, 767, 721, 768,
00555 304, 304, 304, 304, 304, 304, 304, 304, 304, 304,
00556 304, 721, 717, 30, 30, 717, 769, 770, 717, 765,
00557 766, 771, 757, 772, 757, 757, 757, 757, 757, 757,
00558
00559 721, 767, 768, 773, 304, 717, 304, 304, 304, 304,
00560 304, 304, 30, 717, 774, 775, 717, 717, 717, 771,
00561 757, 776, 776, 776, 776, 776, 776, 776, 776, 757,
00562 757, 757, 757, 721, 721, 721, 773, 304, 777, 777,
00563 440, 440, 440, 440, 440, 440, 304, 304, 304, 304,
00564 717, 778, 717, 779, 780, 717, 717, 717, 757, 717,
00565 776, 717, 776, 776, 776, 776, 776, 776, 776, 776,
00566 781, 721, 721, 721, 304, 721, 440, 721, 440, 440,
00567 440, 440, 440, 440, 440, 440, 782, 717, 778, 778,
00568 783, 717, 784, 785, 717, 717, 757, 776, 776, 776,
00569
00570 776, 776, 776, 776, 776, 776, 786, 721, 721, 304,
00571 440, 440, 440, 440, 440, 440, 440, 440, 440, 787,
00572 717, 717, 783, 717, 717, 717, 717, 717, 757, 776,
00573 788, 776, 776, 776, 776, 789, 789, 786, 721, 721,
00574 304, 440, 717, 440, 440, 440, 440, 790, 790, 787,
00575 717, 717, 757, 776, 791, 791, 791, 791, 791, 791,
00576 791, 791, 791, 776, 776, 789, 792, 792, 792, 789,
00577 721, 721, 304, 440, 793, 793, 576, 576, 576, 576,
00578 576, 576, 576, 440, 440, 549, 794, 794, 588, 549,
00579 717, 717, 757, 776, 717, 791, 791, 791, 791, 791,
00580
00581 791, 791, 791, 791, 791, 717, 792, 717, 792, 792,
00582 721, 721, 304, 440, 721, 576, 576, 576, 576, 576,
00583 576, 576, 576, 576, 576, 721, 588, 721, 588, 588,
00584 717, 757, 776, 791, 791, 791, 791, 791, 791, 791,
00585 791, 791, 791, 792, 792, 721, 304, 440, 576, 576,
00586 576, 576, 576, 576, 576, 576, 576, 576, 588, 588,
00587 757, 776, 791, 791, 788, 791, 791, 791, 791, 792,
00588 304, 440, 576, 576, 543, 576, 576, 576, 576, 588,
00589 776, 791, 791, 791, 791, 792, 440, 576, 576, 576,
00590 576, 588, 776, 791, 791, 792, 440, 576, 576, 588,
00591
00592 776, 791, 440, 576, 776, 791, 440, 576, 791, 576,
00593 791, 576, 791, 576, 791, 576, 0, 717, 717, 717,
00594 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00595 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00596 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00597 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00598 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00599 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00600 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00601 717, 717, 717, 717
00602
00603 } ;
00604
00605 static yyconst short int yy_nxt[3472] =
00606 { 0,
00607 12, 12, 13, 14, 12, 15, 12, 12, 12, 12,
00608 16, 17, 12, 12, 44, 44, 44, 44, 75, 75,
00609 45, 45, 46, 46, 48, 48, 49, 49, 75, 75,
00610 84, 87, 84, 84, 12, 12, 12, 86, 120, 75,
00611 75, 124, 50, 77, 84, 50, 238, 68, 55, 84,
00612 123, 84, 84, 51, 52, 53, 51, 52, 53, 12,
00613 12, 12, 12, 13, 14, 19, 15, 12, 12, 12,
00614 12, 16, 17, 12, 12, 78, 90, 95, 84, 55,
00615 56, 69, 84, 62, 84, 84, 77, 57, 84, 112,
00616 63, 96, 70, 71, 72, 12, 12, 12, 58, 59,
00617
00618 60, 64, 65, 66, 50, 91, 93, 97, 94, 84,
00619 92, 56, 101, 125, 84, 51, 52, 74, 78, 156,
00620 12, 12, 20, 21, 22, 23, 20, 24, 25, 25,
00621 25, 25, 26, 27, 28, 28, 29, 29, 29, 29,
00622 30, 29, 31, 32, 29, 29, 29, 29, 29, 29,
00623 29, 29, 29, 29, 29, 29, 33, 20, 20, 29,
00624 29, 34, 35, 29, 36, 29, 29, 29, 37, 38,
00625 29, 29, 29, 39, 29, 40, 29, 41, 29, 29,
00626 29, 25, 25, 83, 83, 83, 83, 83, 83, 83,
00627 83, 83, 83, 83, 84, 83, 83, 120, 84, 84,
00628
00629 102, 84, 84, 84, 84, 55, 55, 84, 55, 84,
00630 84, 120, 84, 120, 98, 99, 127, 83, 83, 83,
00631 154, 84, 128, 100, 126, 84, 131, 221, 222, 55,
00632 627, 129, 214, 130, 132, 134, 133, 56, 56, 137,
00633 56, 115, 83, 83, 83, 83, 83, 83, 83, 83,
00634 83, 83, 83, 83, 83, 104, 83, 83, 116, 117,
00635 118, 56, 113, 114, 84, 84, 55, 144, 55, 85,
00636 55, 84, 84, 84, 84, 119, 84, 55, 83, 83,
00637 83, 145, 213, 135, 84, 84, 138, 84, 84, 84,
00638 84, 84, 84, 139, 130, 130, 158, 136, 56, 157,
00639
00640 56, 130, 56, 83, 83, 149, 84, 165, 168, 56,
00641 55, 163, 164, 226, 167, 166, 151, 148, 162, 150,
00642 152, 155, 155, 155, 155, 155, 155, 155, 155, 155,
00643 155, 155, 84, 155, 155, 55, 84, 84, 84, 84,
00644 84, 55, 56, 84, 84, 161, 55, 84, 182, 176,
00645 183, 84, 84, 195, 84, 155, 155, 155, 616, 197,
00646 84, 196, 194, 84, 55, 261, 184, 56, 55, 198,
00647 55, 135, 130, 56, 179, 199, 55, 55, 56, 130,
00648 155, 155, 159, 160, 160, 159, 159, 159, 159, 159,
00649 159, 159, 159, 178, 159, 159, 56, 177, 224, 84,
00650
00651 56, 84, 56, 233, 233, 209, 237, 237, 56, 56,
00652 627, 180, 84, 208, 336, 210, 159, 159, 159, 186,
00653 186, 84, 55, 239, 225, 207, 84, 55, 130, 55,
00654 227, 55, 254, 254, 271, 55, 236, 236, 55, 187,
00655 379, 159, 159, 185, 185, 185, 185, 185, 185, 185,
00656 185, 185, 185, 185, 56, 185, 185, 188, 189, 56,
00657 246, 56, 224, 56, 190, 191, 235, 56, 211, 84,
00658 56, 192, 234, 193, 247, 234, 84, 185, 185, 185,
00659 186, 186, 211, 233, 233, 237, 237, 384, 225, 84,
00660 249, 55, 84, 262, 84, 257, 257, 55, 265, 265,
00661
00662 187, 84, 185, 185, 215, 215, 215, 215, 215, 215,
00663 215, 215, 215, 215, 215, 250, 215, 215, 188, 189,
00664 270, 275, 275, 56, 283, 190, 191, 254, 254, 56,
00665 84, 258, 192, 84, 193, 276, 276, 284, 215, 215,
00666 215, 282, 282, 260, 84, 348, 274, 279, 279, 55,
00667 276, 276, 84, 313, 413, 55, 84, 257, 257, 55,
00668 55, 289, 84, 215, 215, 228, 228, 228, 228, 228,
00669 228, 228, 228, 228, 228, 228, 278, 228, 228, 276,
00670 276, 56, 302, 84, 336, 282, 282, 56, 320, 320,
00671 333, 56, 56, 321, 336, 314, 627, 336, 301, 228,
00672
00673 228, 228, 186, 186, 312, 336, 320, 320, 338, 320,
00674 320, 321, 349, 339, 321, 84, 336, 373, 280, 280,
00675 55, 341, 187, 336, 228, 228, 251, 251, 251, 251,
00676 251, 251, 251, 251, 251, 251, 251, 311, 251, 251,
00677 188, 189, 374, 336, 320, 320, 340, 190, 191, 321,
00678 336, 616, 56, 325, 192, 324, 193, 336, 389, 389,
00679 251, 251, 251, 275, 275, 320, 320, 320, 320, 323,
00680 321, 374, 321, 345, 320, 320, 320, 320, 55, 321,
00681 375, 321, 55, 294, 336, 251, 251, 54, 236, 236,
00682 55, 54, 54, 54, 54, 54, 54, 54, 54, 54,
00683
00684 54, 295, 296, 342, 343, 346, 320, 320, 297, 298,
00685 56, 321, 344, 326, 56, 299, 327, 300, 328, 329,
00686 336, 54, 56, 54, 331, 354, 354, 330, 320, 320,
00687 391, 391, 355, 321, 320, 320, 320, 320, 336, 321,
00688 336, 321, 336, 371, 372, 631, 54, 54, 54, 280,
00689 280, 55, 54, 54, 54, 54, 54, 54, 54, 374,
00690 54, 54, 356, 320, 320, 336, 376, 336, 321, 405,
00691 320, 320, 320, 320, 336, 321, 510, 321, 336, 336,
00692 336, 336, 54, 56, 54, 357, 320, 320, 592, 320,
00693 320, 321, 377, 407, 321, 409, 320, 320, 380, 374,
00694
00695 358, 321, 406, 406, 55, 381, 378, 54, 54, 288,
00696 288, 288, 288, 288, 288, 288, 288, 288, 288, 288,
00697 360, 288, 288, 359, 369, 369, 55, 336, 320, 320,
00698 336, 370, 362, 321, 382, 361, 56, 336, 336, 336,
00699 336, 354, 354, 288, 288, 288, 363, 364, 355, 394,
00700 394, 84, 477, 408, 321, 374, 130, 393, 56, 412,
00701 389, 389, 411, 391, 391, 591, 410, 514, 288, 288,
00702 54, 279, 279, 55, 54, 54, 54, 54, 54, 54,
00703 54, 54, 54, 54, 303, 303, 303, 303, 303, 303,
00704 303, 304, 303, 303, 303, 303, 303, 303, 303, 303,
00705
00706 303, 303, 303, 303, 54, 56, 54, 303, 303, 305,
00707 306, 303, 303, 303, 303, 303, 307, 308, 303, 303,
00708 303, 303, 303, 309, 303, 310, 303, 303, 303, 54,
00709 54, 54, 280, 280, 55, 54, 54, 54, 54, 54,
00710 54, 54, 55, 54, 54, 320, 320, 552, 320, 320,
00711 321, 418, 418, 321, 336, 320, 320, 419, 320, 320,
00712 321, 389, 389, 321, 336, 54, 56, 54, 320, 320,
00713 320, 320, 336, 321, 56, 321, 320, 320, 320, 320,
00714 447, 321, 374, 321, 490, 490, 449, 417, 359, 397,
00715 54, 54, 316, 316, 316, 316, 316, 316, 316, 316,
00716
00717 316, 316, 316, 365, 316, 316, 359, 401, 401, 55,
00718 366, 369, 369, 55, 359, 320, 320, 551, 370, 336,
00719 321, 395, 243, 336, 396, 475, 316, 316, 316, 320,
00720 320, 336, 398, 434, 321, 320, 320, 320, 320, 336,
00721 321, 56, 321, 320, 320, 56, 450, 477, 321, 377,
00722 438, 316, 316, 54, 334, 334, 55, 54, 54, 335,
00723 54, 54, 54, 54, 399, 54, 54, 320, 320, 336,
00724 482, 421, 321, 528, 400, 418, 418, 320, 320, 477,
00725 448, 419, 321, 477, 430, 457, 457, 54, 56, 54,
00726 359, 320, 320, 320, 320, 477, 321, 55, 321, 542,
00727
00728 418, 418, 486, 431, 451, 451, 419, 480, 472, 452,
00729 336, 458, 54, 54, 54, 334, 334, 55, 54, 54,
00730 335, 54, 54, 54, 54, 433, 54, 54, 84, 56,
00731 432, 477, 320, 320, 460, 460, 362, 321, 374, 477,
00732 337, 460, 460, 460, 460, 462, 460, 460, 54, 56,
00733 54, 477, 462, 477, 462, 483, 511, 462, 460, 460,
00734 460, 460, 515, 459, 487, 487, 463, 320, 320, 462,
00735 481, 462, 321, 54, 54, 54, 334, 334, 55, 54,
00736 54, 335, 54, 54, 54, 54, 54, 54, 54, 336,
00737 465, 573, 464, 320, 320, 471, 471, 477, 321, 336,
00738
00739 321, 460, 460, 336, 468, 469, 466, 460, 460, 54,
00740 56, 54, 462, 477, 320, 320, 484, 485, 462, 321,
00741 359, 477, 435, 435, 55, 473, 473, 55, 436, 546,
00742 477, 450, 477, 359, 54, 54, 54, 401, 401, 55,
00743 54, 54, 54, 54, 54, 54, 54, 514, 54, 54,
00744 467, 474, 488, 488, 512, 470, 56, 489, 544, 56,
00745 457, 457, 55, 320, 320, 460, 460, 433, 321, 477,
00746 54, 56, 54, 527, 460, 460, 462, 460, 460, 460,
00747 460, 460, 460, 55, 497, 462, 458, 508, 462, 547,
00748 462, 417, 462, 477, 56, 54, 54, 54, 403, 403,
00749
00750 55, 54, 54, 54, 54, 54, 54, 54, 54, 54,
00751 54, 460, 460, 460, 460, 56, 500, 460, 460, 460,
00752 460, 514, 462, 477, 462, 477, 499, 477, 462, 477,
00753 462, 54, 56, 54, 501, 460, 460, 471, 471, 498,
00754 55, 513, 321, 473, 473, 55, 462, 516, 514, 477,
00755 477, 509, 519, 490, 490, 524, 54, 54, 394, 394,
00756 477, 502, 504, 321, 490, 490, 503, 517, 514, 474,
00757 541, 574, 56, 476, 476, 55, 505, 56, 423, 336,
00758 477, 518, 521, 521, 478, 488, 488, 506, 522, 477,
00759 489, 460, 460, 320, 320, 614, 424, 425, 321, 434,
00760
00761 460, 460, 462, 426, 427, 543, 543, 56, 477, 529,
00762 428, 462, 429, 54, 401, 401, 55, 54, 54, 54,
00763 54, 54, 54, 54, 618, 54, 54, 531, 531, 530,
00764 477, 545, 55, 477, 496, 477, 616, 501, 462, 460,
00765 460, 460, 460, 460, 460, 460, 460, 54, 56, 54,
00766 462, 584, 462, 571, 462, 477, 462, 460, 460, 460,
00767 460, 514, 536, 536, 56, 616, 585, 650, 462, 537,
00768 462, 55, 54, 54, 54, 403, 403, 55, 54, 54,
00769 54, 54, 54, 54, 54, 54, 54, 54, 501, 55,
00770 501, 533, 532, 521, 521, 55, 540, 477, 534, 522,
00771
00772 539, 521, 521, 56, 535, 616, 572, 522, 54, 56,
00773 54, 320, 320, 460, 460, 517, 321, 652, 477, 460,
00774 460, 56, 570, 570, 462, 536, 536, 56, 553, 717,
00775 462, 616, 537, 54, 54, 54, 435, 435, 55, 54,
00776 54, 54, 436, 54, 54, 54, 514, 54, 54, 554,
00777 460, 460, 460, 460, 616, 566, 566, 595, 595, 653,
00778 630, 462, 537, 462, 595, 595, 595, 595, 462, 54,
00779 56, 54, 501, 336, 568, 462, 627, 462, 619, 598,
00780 495, 569, 606, 606, 613, 570, 570, 616, 565, 597,
00781 649, 564, 717, 608, 54, 54, 54, 406, 406, 55,
00782
00783 54, 54, 335, 54, 54, 54, 54, 54, 54, 54,
00784 439, 439, 439, 439, 439, 439, 439, 440, 439, 439,
00785 439, 439, 439, 439, 439, 439, 439, 439, 439, 439,
00786 54, 56, 54, 439, 439, 441, 442, 439, 439, 439,
00787 439, 439, 443, 444, 439, 439, 439, 439, 439, 445,
00788 439, 446, 439, 439, 439, 54, 54, 54, 435, 435,
00789 55, 54, 54, 54, 436, 54, 54, 54, 492, 54,
00790 54, 460, 460, 320, 320, 460, 460, 647, 321, 55,
00791 55, 336, 462, 595, 595, 616, 462, 595, 595, 595,
00792 595, 54, 56, 54, 462, 648, 595, 595, 462, 477,
00793
00794 462, 612, 595, 595, 460, 460, 594, 462, 621, 593,
00795 616, 56, 56, 462, 504, 462, 54, 54, 54, 476,
00796 476, 55, 54, 54, 54, 54, 54, 54, 54, 620,
00797 478, 54, 599, 600, 616, 601, 566, 566, 55, 616,
00798 460, 460, 55, 537, 501, 602, 603, 604, 595, 595,
00799 616, 462, 54, 56, 54, 568, 606, 606, 622, 462,
00800 595, 595, 569, 651, 611, 606, 606, 608, 646, 610,
00801 56, 462, 616, 625, 56, 616, 608, 54, 54, 54,
00802 476, 476, 55, 54, 54, 54, 54, 54, 54, 54,
00803 616, 478, 54, 501, 609, 654, 605, 586, 586, 655,
00804
00805 55, 320, 320, 616, 549, 479, 321, 460, 460, 623,
00806 624, 671, 336, 54, 56, 54, 588, 616, 462, 595,
00807 595, 673, 632, 589, 595, 595, 595, 595, 633, 653,
00808 462, 627, 56, 456, 659, 462, 616, 462, 54, 54,
00809 54, 487, 487, 55, 54, 54, 335, 54, 54, 54,
00810 54, 54, 54, 54, 634, 595, 595, 595, 595, 595,
00811 595, 606, 606, 658, 55, 660, 462, 627, 462, 674,
00812 462, 616, 608, 636, 54, 56, 54, 595, 595, 595,
00813 595, 616, 635, 672, 595, 595, 595, 595, 462, 653,
00814 462, 616, 477, 453, 637, 462, 56, 462, 414, 54,
00815
00816 54, 54, 548, 548, 55, 54, 54, 54, 54, 549,
00817 54, 54, 638, 54, 54, 606, 606, 676, 606, 606,
00818 606, 606, 615, 615, 55, 639, 608, 641, 640, 608,
00819 616, 608, 616, 478, 616, 54, 56, 54, 643, 700,
00820 627, 642, 626, 626, 55, 336, 616, 645, 678, 374,
00821 644, 653, 656, 628, 320, 320, 56, 595, 595, 321,
00822 54, 54, 531, 531, 460, 460, 657, 616, 462, 677,
00823 595, 595, 386, 462, 680, 462, 56, 689, 661, 616,
00824 662, 462, 556, 664, 665, 665, 663, 679, 557, 687,
00825 627, 606, 606, 606, 606, 462, 616, 477, 460, 460,
00826
00827 558, 559, 608, 385, 608, 692, 670, 560, 561, 462,
00828 616, 627, 690, 699, 562, 681, 563, 54, 543, 543,
00829 55, 54, 54, 54, 54, 54, 54, 54, 54, 478,
00830 54, 575, 575, 575, 575, 575, 575, 575, 576, 575,
00831 575, 575, 575, 575, 577, 575, 575, 575, 575, 575,
00832 575, 54, 56, 54, 575, 575, 578, 579, 575, 575,
00833 575, 575, 575, 580, 581, 575, 575, 575, 575, 575,
00834 582, 575, 583, 575, 575, 575, 54, 54, 54, 586,
00835 586, 55, 54, 54, 54, 54, 549, 54, 54, 54,
00836 54, 54, 595, 595, 710, 595, 595, 383, 588, 616,
00837
00838 675, 675, 616, 462, 336, 589, 462, 595, 595, 595,
00839 595, 616, 54, 56, 54, 595, 595, 698, 462, 616,
00840 462, 595, 595, 595, 595, 616, 462, 653, 320, 320,
00841 688, 616, 462, 321, 462, 638, 668, 54, 54, 54,
00842 590, 590, 55, 54, 54, 54, 54, 54, 54, 54,
00843 54, 54, 54, 638, 595, 595, 616, 359, 367, 653,
00844 638, 595, 595, 707, 477, 462, 666, 691, 669, 667,
00845 595, 595, 462, 54, 56, 54, 595, 595, 595, 595,
00846 477, 462, 595, 595, 683, 675, 675, 462, 703, 462,
00847 682, 697, 477, 462, 716, 616, 350, 347, 54, 54,
00848
00849 54, 548, 548, 55, 54, 54, 54, 54, 549, 54,
00850 54, 575, 54, 54, 685, 606, 606, 684, 616, 616,
00851 460, 460, 332, 638, 704, 641, 608, 319, 616, 595,
00852 595, 462, 243, 653, 54, 56, 54, 656, 686, 616,
00853 462, 595, 595, 595, 595, 477, 708, 595, 595, 514,
00854 712, 243, 462, 315, 462, 616, 693, 695, 462, 54,
00855 54, 54, 615, 615, 55, 54, 54, 54, 54, 54,
00856 54, 54, 694, 478, 54, 606, 606, 460, 460, 292,
00857 595, 595, 246, 638, 287, 714, 608, 286, 462, 616,
00858 243, 462, 285, 595, 595, 54, 56, 54, 701, 269,
00859
00860 638, 702, 268, 696, 462, 606, 606, 616, 595, 595,
00861 267, 653, 266, 243, 243, 243, 608, 263, 255, 462,
00862 54, 54, 54, 615, 615, 55, 54, 54, 54, 54,
00863 54, 54, 54, 248, 478, 54, 460, 460, 595, 595,
00864 460, 460, 595, 595, 711, 245, 244, 462, 617, 462,
00865 243, 462, 242, 462, 706, 241, 54, 56, 54, 709,
00866 705, 240, 232, 206, 231, 595, 595, 231, 223, 501,
00867 220, 219, 218, 217, 216, 212, 462, 206, 205, 204,
00868 203, 54, 54, 54, 626, 626, 55, 54, 54, 54,
00869 54, 54, 54, 54, 638, 628, 54, 595, 595, 595,
00870
00871 595, 202, 181, 175, 174, 173, 172, 171, 462, 153,
00872 462, 147, 146, 143, 89, 84, 82, 54, 56, 54,
00873 713, 715, 717, 122, 717, 121, 115, 114, 113, 112,
00874 717, 120, 115, 114, 113, 112, 111, 108, 107, 89,
00875 82, 81, 54, 54, 54, 626, 626, 55, 54, 54,
00876 54, 54, 54, 54, 54, 80, 628, 54, 717, 42,
00877 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00878 717, 717, 717, 717, 629, 717, 717, 717, 54, 56,
00879 54, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00880 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00881
00882 717, 717, 717, 54, 54, 665, 665, 717, 717, 717,
00883 717, 717, 717, 717, 717, 717, 462, 717, 717, 717,
00884 717, 717, 717, 717, 717, 556, 717, 717, 717, 717,
00885 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00886 717, 717, 717, 558, 559, 717, 717, 717, 717, 717,
00887 560, 561, 717, 717, 717, 717, 717, 562, 717, 563,
00888 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
00889 18, 18, 43, 43, 43, 43, 43, 43, 43, 43,
00890 43, 43, 43, 43, 47, 47, 47, 47, 47, 47,
00891 47, 47, 47, 47, 47, 47, 54, 54, 54, 54,
00892
00893 54, 54, 54, 54, 54, 54, 54, 54, 61, 61,
00894 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
00895 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
00896 67, 67, 73, 717, 73, 76, 76, 76, 76, 76,
00897 76, 76, 76, 76, 76, 76, 76, 79, 79, 79,
00898 79, 79, 79, 79, 79, 79, 79, 79, 79, 84,
00899 84, 84, 84, 84, 84, 84, 84, 84, 84, 84,
00900 84, 88, 88, 88, 88, 88, 88, 88, 88, 88,
00901 88, 717, 88, 103, 717, 717, 717, 717, 717, 103,
00902 717, 103, 105, 105, 717, 105, 105, 105, 717, 105,
00903
00904 105, 105, 105, 105, 106, 106, 106, 106, 106, 106,
00905 106, 106, 106, 106, 106, 106, 109, 109, 109, 717,
00906 109, 109, 109, 109, 109, 109, 109, 109, 110, 110,
00907 110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
00908 140, 717, 140, 141, 141, 717, 141, 141, 141, 717,
00909 141, 141, 141, 141, 141, 142, 142, 142, 717, 142,
00910 142, 142, 142, 142, 142, 142, 142, 169, 169, 717,
00911 169, 169, 169, 717, 169, 169, 169, 169, 169, 170,
00912 170, 170, 717, 170, 170, 170, 170, 170, 170, 170,
00913 170, 200, 200, 717, 200, 200, 200, 717, 200, 200,
00914
00915 200, 200, 200, 201, 201, 201, 717, 201, 201, 201,
00916 201, 201, 201, 201, 201, 229, 229, 717, 229, 229,
00917 229, 717, 229, 229, 229, 229, 229, 230, 230, 230,
00918 717, 230, 230, 230, 230, 230, 230, 230, 230, 252,
00919 252, 717, 252, 252, 252, 717, 252, 252, 252, 252,
00920 252, 253, 253, 253, 717, 253, 253, 253, 253, 253,
00921 253, 253, 253, 256, 256, 717, 717, 717, 717, 717,
00922 717, 256, 259, 259, 259, 259, 259, 259, 259, 259,
00923 259, 259, 259, 259, 264, 264, 264, 264, 264, 264,
00924 264, 717, 264, 717, 264, 264, 272, 272, 717, 272,
00925
00926 272, 272, 717, 272, 272, 272, 272, 272, 273, 273,
00927 273, 717, 273, 273, 273, 273, 273, 273, 273, 273,
00928 277, 277, 717, 717, 717, 717, 277, 717, 277, 281,
00929 281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
00930 281, 290, 290, 717, 290, 290, 290, 717, 290, 290,
00931 290, 290, 290, 291, 291, 291, 717, 291, 291, 291,
00932 291, 291, 291, 291, 291, 293, 293, 717, 717, 717,
00933 717, 717, 717, 293, 317, 317, 717, 317, 317, 317,
00934 717, 317, 317, 317, 317, 317, 318, 318, 318, 717,
00935 318, 318, 318, 318, 318, 318, 318, 318, 322, 322,
00936
00937 717, 322, 717, 717, 322, 717, 322, 336, 336, 336,
00938 336, 336, 336, 336, 336, 336, 336, 336, 336, 351,
00939 351, 717, 351, 351, 351, 717, 351, 351, 351, 351,
00940 351, 352, 352, 352, 717, 352, 352, 352, 352, 352,
00941 352, 352, 352, 353, 353, 717, 353, 717, 717, 717,
00942 717, 353, 368, 368, 368, 368, 368, 368, 368, 368,
00943 368, 368, 368, 368, 387, 387, 717, 387, 387, 387,
00944 717, 387, 387, 387, 387, 387, 388, 388, 388, 717,
00945 388, 388, 388, 388, 388, 388, 388, 388, 390, 390,
00946 717, 717, 717, 717, 390, 717, 390, 392, 392, 717,
00947
00948 717, 717, 717, 717, 717, 392, 402, 402, 402, 402,
00949 402, 402, 402, 402, 402, 402, 402, 402, 404, 404,
00950 404, 404, 404, 404, 404, 404, 404, 404, 404, 404,
00951 415, 415, 717, 415, 415, 415, 717, 415, 415, 415,
00952 415, 415, 416, 416, 416, 717, 416, 416, 416, 416,
00953 416, 416, 416, 416, 420, 420, 717, 717, 420, 717,
00954 420, 717, 420, 422, 422, 717, 422, 717, 717, 717,
00955 717, 422, 437, 437, 437, 437, 437, 437, 437, 437,
00956 437, 437, 437, 437, 454, 454, 717, 454, 454, 454,
00957 717, 454, 454, 454, 454, 454, 455, 455, 455, 717,
00958
00959 455, 455, 455, 455, 455, 455, 455, 455, 461, 461,
00960 717, 717, 717, 717, 461, 461, 461, 477, 477, 477,
00961 477, 477, 477, 477, 477, 477, 477, 477, 477, 491,
00962 491, 717, 717, 717, 717, 717, 717, 491, 493, 493,
00963 717, 493, 493, 493, 717, 493, 493, 493, 493, 493,
00964 494, 494, 494, 717, 494, 494, 494, 494, 494, 494,
00965 494, 494, 507, 507, 717, 507, 717, 717, 717, 717,
00966 507, 520, 520, 520, 520, 520, 520, 520, 520, 520,
00967 520, 520, 520, 523, 523, 717, 717, 523, 717, 523,
00968 717, 523, 525, 525, 717, 525, 525, 525, 717, 525,
00969
00970 525, 525, 525, 525, 526, 526, 526, 717, 526, 526,
00971 526, 526, 526, 526, 526, 526, 538, 538, 717, 717,
00972 717, 538, 538, 717, 538, 550, 550, 550, 550, 550,
00973 550, 550, 550, 550, 550, 550, 550, 555, 555, 717,
00974 717, 717, 717, 717, 555, 555, 567, 567, 717, 717,
00975 717, 567, 717, 717, 567, 587, 587, 587, 587, 587,
00976 587, 587, 587, 587, 587, 587, 587, 596, 596, 717,
00977 717, 717, 717, 596, 596, 596, 607, 607, 717, 717,
00978 717, 717, 607, 607, 607, 616, 616, 616, 616, 616,
00979 616, 616, 616, 616, 616, 616, 616, 627, 627, 627,
00980
00981 627, 627, 627, 627, 627, 627, 627, 627, 627, 11,
00982 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00983 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00984 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00985 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00986 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00987 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
00988 717
00989 } ;
00990
00991 static yyconst short int yy_chk[3472] =
00992 { 0,
00993 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
00994 1, 1, 1, 1, 5, 6, 7, 8, 21, 21,
00995 5, 6, 7, 8, 9, 10, 9, 10, 22, 22,
00996 32, 32, 31, 86, 1, 1, 1, 31, 63, 75,
00997 75, 86, 12, 23, 85, 13, 213, 16, 14, 213,
00998 85, 34, 38, 12, 12, 12, 13, 13, 13, 1,
00999 1, 2, 2, 2, 2, 2, 2, 2, 2, 2,
01000 2, 2, 2, 2, 2, 23, 34, 38, 39, 54,
01001 14, 16, 36, 15, 37, 35, 76, 14, 41, 63,
01002 15, 39, 16, 16, 16, 2, 2, 2, 14, 14,
01003
01004 14, 15, 15, 15, 19, 35, 36, 39, 37, 87,
01005 35, 54, 41, 87, 125, 19, 19, 19, 76, 125,
01006 2, 2, 3, 3, 3, 3, 3, 3, 3, 3,
01007 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
01008 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
01009 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
01010 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
01011 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
01012 3, 3, 3, 29, 29, 29, 29, 29, 29, 29,
01013 29, 29, 29, 29, 40, 29, 29, 66, 92, 90,
01014
01015 42, 93, 95, 91, 94, 57, 59, 96, 58, 97,
01016 98, 65, 100, 64, 40, 40, 91, 29, 29, 29,
01017 123, 123, 92, 40, 90, 183, 95, 192, 192, 60,
01018 700, 93, 183, 94, 96, 98, 97, 57, 59, 100,
01019 58, 66, 29, 29, 30, 30, 30, 30, 30, 30,
01020 30, 30, 30, 30, 30, 42, 30, 30, 57, 58,
01021 59, 60, 64, 65, 99, 101, 116, 113, 118, 30,
01022 117, 128, 126, 129, 127, 60, 131, 119, 30, 30,
01023 30, 113, 182, 99, 134, 137, 101, 139, 135, 138,
01024 136, 195, 182, 101, 126, 131, 129, 99, 116, 128,
01025
01026 118, 127, 117, 30, 30, 117, 133, 136, 139, 119,
01027 148, 134, 135, 195, 138, 137, 118, 116, 133, 117,
01028 119, 124, 124, 124, 124, 124, 124, 124, 124, 124,
01029 124, 124, 132, 124, 124, 151, 154, 157, 156, 161,
01030 162, 150, 148, 163, 164, 132, 149, 165, 154, 148,
01031 156, 167, 168, 162, 166, 124, 124, 124, 699, 165,
01032 238, 164, 161, 196, 152, 238, 157, 151, 178, 166,
01033 177, 168, 163, 150, 151, 167, 176, 179, 149, 196,
01034 124, 124, 130, 130, 130, 130, 130, 130, 130, 130,
01035 130, 130, 130, 150, 130, 130, 152, 149, 194, 197,
01036
01037 178, 198, 177, 206, 206, 178, 212, 212, 176, 179,
01038 659, 152, 194, 177, 344, 179, 130, 130, 130, 160,
01039 160, 250, 180, 214, 194, 176, 214, 210, 197, 207,
01040 198, 209, 231, 231, 250, 208, 211, 211, 211, 160,
01041 344, 130, 130, 158, 158, 158, 158, 158, 158, 158,
01042 158, 158, 158, 158, 180, 158, 158, 160, 160, 210,
01043 222, 207, 224, 209, 160, 160, 210, 208, 180, 225,
01044 211, 160, 208, 160, 222, 207, 224, 158, 158, 158,
01045 186, 186, 209, 233, 233, 237, 237, 348, 224, 348,
01046 225, 235, 249, 239, 226, 234, 234, 234, 243, 243,
01047
01048 186, 239, 158, 158, 184, 184, 184, 184, 184, 184,
01049 184, 184, 184, 184, 184, 226, 184, 184, 186, 186,
01050 249, 255, 255, 235, 261, 186, 186, 254, 254, 234,
01051 261, 235, 186, 271, 186, 256, 256, 262, 184, 184,
01052 184, 260, 260, 237, 262, 313, 254, 258, 258, 258,
01053 277, 277, 313, 283, 384, 278, 283, 257, 257, 257,
01054 302, 271, 384, 184, 184, 199, 199, 199, 199, 199,
01055 199, 199, 199, 199, 199, 199, 257, 199, 199, 276,
01056 276, 258, 278, 284, 305, 282, 282, 278, 293, 293,
01057 302, 257, 302, 293, 306, 284, 627, 308, 276, 199,
01058
01059 199, 199, 265, 265, 282, 339, 295, 295, 305, 296,
01060 296, 295, 314, 306, 296, 314, 373, 339, 280, 280,
01061 280, 308, 265, 307, 199, 199, 227, 227, 227, 227,
01062 227, 227, 227, 227, 227, 227, 227, 280, 227, 227,
01063 265, 265, 373, 340, 294, 294, 307, 265, 265, 294,
01064 310, 616, 280, 296, 265, 295, 265, 341, 353, 353,
01065 227, 227, 227, 275, 275, 297, 297, 298, 298, 294,
01066 297, 340, 298, 310, 299, 299, 300, 300, 311, 299,
01067 341, 300, 333, 275, 309, 227, 227, 236, 236, 236,
01068 236, 236, 236, 236, 236, 236, 236, 236, 236, 236,
01069
01070 236, 275, 275, 309, 309, 311, 320, 320, 275, 275,
01071 311, 320, 309, 297, 333, 275, 298, 275, 299, 299,
01072 338, 236, 236, 236, 300, 321, 321, 299, 322, 322,
01073 355, 355, 321, 322, 323, 323, 324, 324, 372, 323,
01074 337, 324, 342, 337, 338, 592, 236, 236, 259, 259,
01075 259, 259, 259, 259, 259, 259, 259, 259, 259, 372,
01076 259, 259, 323, 325, 325, 371, 342, 376, 325, 371,
01077 326, 326, 327, 327, 343, 326, 475, 327, 345, 378,
01078 475, 375, 259, 259, 259, 324, 328, 328, 552, 329,
01079 329, 328, 343, 376, 329, 378, 330, 330, 345, 375,
01080
01081 325, 330, 374, 374, 346, 345, 343, 259, 259, 270,
01082 270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
01083 327, 270, 270, 326, 335, 335, 335, 374, 356, 356,
01084 377, 335, 329, 356, 346, 328, 346, 379, 380, 381,
01085 447, 354, 354, 270, 270, 270, 329, 330, 354, 359,
01086 359, 385, 584, 377, 359, 447, 385, 356, 335, 381,
01087 390, 390, 380, 391, 391, 551, 379, 584, 270, 270,
01088 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
01089 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
01090 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
01091
01092 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
01093 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
01094 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
01095 279, 281, 281, 281, 281, 281, 281, 281, 281, 281,
01096 281, 281, 382, 281, 281, 360, 360, 528, 363, 363,
01097 360, 392, 392, 363, 407, 358, 358, 392, 331, 331,
01098 358, 389, 389, 331, 408, 281, 281, 281, 357, 357,
01099 361, 361, 410, 357, 382, 361, 362, 362, 364, 364,
01100 408, 362, 407, 364, 452, 452, 410, 389, 360, 363,
01101 281, 281, 289, 289, 289, 289, 289, 289, 289, 289,
01102
01103 289, 289, 289, 331, 289, 289, 358, 401, 401, 401,
01104 331, 369, 369, 369, 357, 365, 365, 527, 369, 438,
01105 365, 361, 524, 411, 362, 438, 289, 289, 289, 366,
01106 366, 412, 364, 401, 366, 393, 393, 395, 395, 405,
01107 393, 401, 395, 396, 396, 369, 411, 443, 396, 412,
01108 405, 289, 289, 303, 303, 303, 303, 303, 303, 303,
01109 303, 303, 303, 303, 365, 303, 303, 397, 397, 409,
01110 443, 393, 397, 496, 366, 418, 418, 399, 399, 446,
01111 409, 418, 399, 441, 396, 419, 419, 303, 303, 303,
01112 395, 398, 398, 400, 400, 511, 398, 434, 400, 511,
01113
01114 420, 420, 446, 397, 413, 413, 420, 441, 434, 413,
01115 448, 419, 303, 303, 304, 304, 304, 304, 304, 304,
01116 304, 304, 304, 304, 304, 399, 304, 304, 413, 434,
01117 398, 444, 421, 421, 422, 422, 400, 421, 448, 483,
01118 304, 423, 423, 424, 424, 422, 425, 425, 304, 304,
01119 304, 442, 423, 479, 424, 444, 479, 425, 426, 426,
01120 428, 428, 483, 421, 450, 450, 423, 431, 431, 426,
01121 442, 428, 431, 304, 304, 334, 334, 334, 334, 334,
01122 334, 334, 334, 334, 334, 334, 334, 334, 334, 450,
01123 425, 541, 424, 430, 430, 433, 433, 445, 430, 541,
01124
01125 433, 427, 427, 449, 428, 428, 426, 429, 429, 334,
01126 334, 334, 427, 518, 432, 432, 445, 445, 429, 432,
01127 431, 513, 435, 435, 435, 436, 436, 436, 435, 518,
01128 480, 449, 516, 430, 334, 334, 368, 368, 368, 368,
01129 368, 368, 368, 368, 368, 368, 368, 513, 368, 368,
01130 427, 436, 451, 451, 480, 429, 435, 451, 516, 436,
01131 457, 457, 472, 459, 459, 460, 460, 432, 459, 519,
01132 368, 368, 368, 495, 461, 461, 460, 464, 464, 465,
01133 465, 466, 466, 478, 459, 461, 457, 472, 464, 519,
01134 465, 460, 466, 482, 472, 368, 368, 370, 370, 370,
01135
01136 370, 370, 370, 370, 370, 370, 370, 370, 370, 370,
01137 370, 463, 463, 467, 467, 478, 465, 468, 468, 469,
01138 469, 482, 463, 484, 467, 486, 464, 512, 468, 481,
01139 469, 370, 370, 370, 466, 470, 470, 471, 471, 463,
01140 474, 481, 471, 473, 473, 473, 470, 484, 512, 485,
01141 515, 474, 486, 489, 489, 492, 370, 370, 394, 394,
01142 542, 467, 469, 394, 490, 490, 468, 485, 515, 473,
01143 510, 542, 474, 476, 476, 476, 469, 473, 394, 510,
01144 477, 485, 491, 491, 476, 488, 488, 470, 491, 574,
01145 488, 499, 499, 497, 497, 574, 394, 394, 497, 476,
01146
01147 498, 498, 499, 394, 394, 514, 514, 476, 517, 497,
01148 394, 498, 394, 402, 402, 402, 402, 402, 402, 402,
01149 402, 402, 402, 402, 577, 402, 402, 501, 501, 498,
01150 514, 517, 539, 544, 458, 545, 577, 499, 501, 500,
01151 500, 503, 503, 504, 504, 502, 502, 402, 402, 402,
01152 500, 545, 503, 539, 504, 546, 502, 505, 505, 506,
01153 506, 544, 507, 507, 539, 618, 546, 618, 505, 507,
01154 506, 509, 402, 402, 403, 403, 403, 403, 403, 403,
01155 403, 403, 403, 403, 403, 403, 403, 403, 502, 508,
01156 500, 504, 503, 521, 521, 540, 509, 547, 505, 521,
01157
01158 508, 523, 523, 509, 506, 620, 540, 523, 403, 403,
01159 403, 529, 529, 530, 530, 547, 529, 620, 585, 532,
01160 532, 508, 537, 537, 530, 538, 538, 540, 529, 537,
01161 532, 621, 538, 403, 403, 404, 404, 404, 404, 404,
01162 404, 404, 404, 404, 404, 404, 585, 404, 404, 530,
01163 533, 533, 534, 534, 578, 536, 536, 555, 555, 621,
01164 589, 533, 536, 534, 556, 556, 557, 557, 555, 404,
01165 404, 404, 532, 573, 536, 556, 589, 557, 578, 557,
01166 456, 536, 567, 567, 573, 570, 570, 617, 534, 556,
01167 617, 533, 570, 567, 404, 404, 406, 406, 406, 406,
01168
01169 406, 406, 406, 406, 406, 406, 406, 406, 406, 406,
01170 406, 406, 406, 406, 406, 406, 406, 406, 406, 406,
01171 406, 406, 406, 406, 406, 406, 406, 406, 406, 406,
01172 406, 406, 406, 406, 406, 406, 406, 406, 406, 406,
01173 406, 406, 406, 406, 406, 406, 406, 406, 406, 406,
01174 406, 406, 406, 406, 406, 406, 406, 437, 437, 437,
01175 437, 437, 437, 437, 437, 437, 437, 437, 453, 437,
01176 437, 535, 535, 553, 553, 554, 554, 613, 553, 611,
01177 572, 613, 535, 558, 558, 580, 554, 560, 560, 559,
01178 559, 437, 437, 437, 558, 614, 561, 561, 560, 614,
01179
01180 559, 572, 562, 562, 564, 564, 554, 561, 580, 553,
01181 579, 611, 572, 562, 535, 564, 437, 437, 439, 439,
01182 439, 439, 439, 439, 439, 439, 439, 439, 439, 579,
01183 439, 439, 558, 559, 581, 560, 566, 566, 571, 619,
01184 565, 565, 612, 566, 564, 561, 562, 562, 563, 563,
01185 583, 565, 439, 439, 439, 566, 569, 569, 581, 563,
01186 595, 595, 566, 619, 571, 568, 568, 569, 612, 569,
01187 571, 595, 622, 583, 612, 623, 568, 439, 439, 440,
01188 440, 440, 440, 440, 440, 440, 440, 440, 440, 440,
01189 582, 440, 440, 565, 568, 622, 563, 586, 586, 623,
01190
01191 628, 593, 593, 652, 586, 440, 593, 594, 594, 582,
01192 582, 647, 647, 440, 440, 440, 586, 649, 594, 596,
01193 596, 649, 593, 586, 599, 599, 597, 597, 594, 652,
01194 596, 629, 628, 417, 629, 599, 625, 597, 440, 440,
01195 487, 487, 487, 487, 487, 487, 487, 487, 487, 487,
01196 487, 487, 487, 487, 597, 598, 598, 600, 600, 601,
01197 601, 606, 606, 625, 646, 630, 598, 630, 600, 650,
01198 601, 654, 606, 599, 487, 487, 487, 602, 602, 603,
01199 603, 650, 598, 648, 604, 604, 605, 605, 602, 654,
01200 603, 655, 648, 414, 600, 604, 646, 605, 386, 487,
01201
01202 487, 520, 520, 520, 520, 520, 520, 520, 520, 520,
01203 520, 520, 601, 520, 520, 607, 607, 655, 609, 609,
01204 610, 610, 615, 615, 615, 602, 607, 604, 603, 609,
01205 651, 610, 657, 615, 624, 520, 520, 520, 605, 692,
01206 692, 604, 626, 626, 626, 671, 656, 610, 657, 671,
01207 609, 651, 624, 626, 632, 632, 615, 634, 634, 632,
01208 520, 520, 531, 531, 633, 633, 624, 658, 634, 656,
01209 635, 635, 350, 531, 660, 633, 626, 674, 632, 674,
01210 633, 635, 531, 635, 638, 638, 634, 658, 531, 672,
01211 660, 644, 644, 645, 645, 638, 677, 672, 662, 662,
01212
01213 531, 531, 644, 349, 645, 680, 645, 531, 531, 662,
01214 689, 680, 677, 689, 531, 662, 531, 543, 543, 543,
01215 543, 543, 543, 543, 543, 543, 543, 543, 543, 543,
01216 543, 543, 543, 543, 543, 543, 543, 543, 543, 543,
01217 543, 543, 543, 543, 543, 543, 543, 543, 543, 543,
01218 543, 543, 543, 543, 543, 543, 543, 543, 543, 543,
01219 543, 543, 543, 543, 543, 543, 543, 543, 543, 543,
01220 543, 543, 543, 543, 543, 543, 543, 543, 548, 548,
01221 548, 548, 548, 548, 548, 548, 548, 548, 548, 548,
01222 548, 548, 639, 639, 708, 642, 642, 347, 548, 676,
01223
01224 653, 653, 708, 639, 336, 548, 642, 636, 636, 637,
01225 637, 688, 548, 548, 548, 640, 640, 688, 636, 673,
01226 637, 641, 641, 643, 643, 653, 640, 676, 661, 661,
01227 673, 691, 641, 661, 643, 639, 642, 548, 548, 549,
01228 549, 549, 549, 549, 549, 549, 549, 549, 549, 549,
01229 549, 549, 549, 636, 663, 663, 678, 661, 332, 691,
01230 637, 664, 664, 703, 703, 663, 640, 678, 643, 641,
01231 666, 666, 664, 549, 549, 549, 667, 667, 668, 668,
01232 687, 666, 669, 669, 664, 675, 675, 667, 697, 668,
01233 663, 687, 697, 669, 714, 714, 315, 312, 549, 549,
01234
01235 550, 550, 550, 550, 550, 550, 550, 550, 550, 550,
01236 550, 675, 550, 550, 668, 670, 670, 667, 690, 679,
01237 681, 681, 301, 666, 698, 669, 670, 292, 698, 683,
01238 683, 681, 287, 690, 550, 550, 550, 679, 670, 710,
01239 683, 682, 682, 684, 684, 707, 704, 685, 685, 707,
01240 710, 286, 682, 285, 684, 704, 681, 683, 685, 550,
01241 550, 575, 575, 575, 575, 575, 575, 575, 575, 575,
01242 575, 575, 682, 575, 575, 686, 686, 693, 693, 274,
01243 694, 694, 269, 684, 268, 712, 686, 267, 693, 712,
01244 266, 694, 263, 695, 695, 575, 575, 575, 693, 248,
01245
01246 685, 694, 247, 686, 695, 696, 696, 716, 709, 709,
01247 246, 716, 245, 244, 242, 241, 696, 240, 232, 709,
01248 575, 575, 576, 576, 576, 576, 576, 576, 576, 576,
01249 576, 576, 576, 223, 576, 576, 701, 701, 702, 702,
01250 705, 705, 706, 706, 709, 221, 220, 701, 576, 702,
01251 219, 705, 218, 706, 702, 217, 576, 576, 576, 706,
01252 701, 216, 205, 204, 203, 715, 715, 202, 193, 705,
01253 191, 190, 189, 188, 187, 181, 715, 175, 174, 173,
01254 172, 576, 576, 587, 587, 587, 587, 587, 587, 587,
01255 587, 587, 587, 587, 715, 587, 587, 713, 713, 711,
01256
01257 711, 171, 153, 147, 146, 145, 144, 143, 713, 121,
01258 711, 115, 114, 112, 88, 84, 82, 587, 587, 587,
01259 711, 713, 80, 79, 78, 74, 72, 71, 70, 69,
01260 62, 61, 53, 52, 51, 50, 49, 46, 45, 33,
01261 27, 26, 587, 587, 588, 588, 588, 588, 588, 588,
01262 588, 588, 588, 588, 588, 24, 588, 588, 11, 4,
01263 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
01264 0, 0, 0, 0, 588, 0, 0, 0, 588, 588,
01265 588, 0, 0, 0, 0, 0, 0, 0, 0, 0,
01266 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
01267
01268 0, 0, 0, 588, 588, 665, 665, 0, 0, 0,
01269 0, 0, 0, 0, 0, 0, 665, 0, 0, 0,
01270 0, 0, 0, 0, 0, 665, 0, 0, 0, 0,
01271 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
01272 0, 0, 0, 665, 665, 0, 0, 0, 0, 0,
01273 665, 665, 0, 0, 0, 0, 0, 665, 0, 665,
01274 718, 718, 718, 718, 718, 718, 718, 718, 718, 718,
01275 718, 718, 719, 719, 719, 719, 719, 719, 719, 719,
01276 719, 719, 719, 719, 720, 720, 720, 720, 720, 720,
01277 720, 720, 720, 720, 720, 720, 721, 721, 721, 721,
01278
01279 721, 721, 721, 721, 721, 721, 721, 721, 722, 722,
01280 722, 722, 722, 722, 722, 722, 722, 722, 722, 722,
01281 723, 723, 723, 723, 723, 723, 723, 723, 723, 723,
01282 723, 723, 724, 0, 724, 725, 725, 725, 725, 725,
01283 725, 725, 725, 725, 725, 725, 725, 726, 726, 726,
01284 726, 726, 726, 726, 726, 726, 726, 726, 726, 727,
01285 727, 727, 727, 727, 727, 727, 727, 727, 727, 727,
01286 727, 728, 728, 728, 728, 728, 728, 728, 728, 728,
01287 728, 0, 728, 729, 0, 0, 0, 0, 0, 729,
01288 0, 729, 730, 730, 0, 730, 730, 730, 0, 730,
01289
01290 730, 730, 730, 730, 731, 731, 731, 731, 731, 731,
01291 731, 731, 731, 731, 731, 731, 732, 732, 732, 0,
01292 732, 732, 732, 732, 732, 732, 732, 732, 733, 733,
01293 733, 733, 733, 733, 733, 733, 733, 733, 733, 733,
01294 734, 0, 734, 735, 735, 0, 735, 735, 735, 0,
01295 735, 735, 735, 735, 735, 736, 736, 736, 0, 736,
01296 736, 736, 736, 736, 736, 736, 736, 737, 737, 0,
01297 737, 737, 737, 0, 737, 737, 737, 737, 737, 738,
01298 738, 738, 0, 738, 738, 738, 738, 738, 738, 738,
01299 738, 739, 739, 0, 739, 739, 739, 0, 739, 739,
01300
01301 739, 739, 739, 740, 740, 740, 0, 740, 740, 740,
01302 740, 740, 740, 740, 740, 741, 741, 0, 741, 741,
01303 741, 0, 741, 741, 741, 741, 741, 742, 742, 742,
01304 0, 742, 742, 742, 742, 742, 742, 742, 742, 743,
01305 743, 0, 743, 743, 743, 0, 743, 743, 743, 743,
01306 743, 744, 744, 744, 0, 744, 744, 744, 744, 744,
01307 744, 744, 744, 745, 745, 0, 0, 0, 0, 0,
01308 0, 745, 746, 746, 746, 746, 746, 746, 746, 746,
01309 746, 746, 746, 746, 747, 747, 747, 747, 747, 747,
01310 747, 0, 747, 0, 747, 747, 748, 748, 0, 748,
01311
01312 748, 748, 0, 748, 748, 748, 748, 748, 749, 749,
01313 749, 0, 749, 749, 749, 749, 749, 749, 749, 749,
01314 750, 750, 0, 0, 0, 0, 750, 0, 750, 751,
01315 751, 751, 751, 751, 751, 751, 751, 751, 751, 751,
01316 751, 752, 752, 0, 752, 752, 752, 0, 752, 752,
01317 752, 752, 752, 753, 753, 753, 0, 753, 753, 753,
01318 753, 753, 753, 753, 753, 754, 754, 0, 0, 0,
01319 0, 0, 0, 754, 755, 755, 0, 755, 755, 755,
01320 0, 755, 755, 755, 755, 755, 756, 756, 756, 0,
01321 756, 756, 756, 756, 756, 756, 756, 756, 757, 757,
01322
01323 0, 757, 0, 0, 757, 0, 757, 758, 758, 758,
01324 758, 758, 758, 758, 758, 758, 758, 758, 758, 759,
01325 759, 0, 759, 759, 759, 0, 759, 759, 759, 759,
01326 759, 760, 760, 760, 0, 760, 760, 760, 760, 760,
01327 760, 760, 760, 761, 761, 0, 761, 0, 0, 0,
01328 0, 761, 762, 762, 762, 762, 762, 762, 762, 762,
01329 762, 762, 762, 762, 763, 763, 0, 763, 763, 763,
01330 0, 763, 763, 763, 763, 763, 764, 764, 764, 0,
01331 764, 764, 764, 764, 764, 764, 764, 764, 765, 765,
01332 0, 0, 0, 0, 765, 0, 765, 766, 766, 0,
01333
01334 0, 0, 0, 0, 0, 766, 767, 767, 767, 767,
01335 767, 767, 767, 767, 767, 767, 767, 767, 768, 768,
01336 768, 768, 768, 768, 768, 768, 768, 768, 768, 768,
01337 769, 769, 0, 769, 769, 769, 0, 769, 769, 769,
01338 769, 769, 770, 770, 770, 0, 770, 770, 770, 770,
01339 770, 770, 770, 770, 771, 771, 0, 0, 771, 0,
01340 771, 0, 771, 772, 772, 0, 772, 0, 0, 0,
01341 0, 772, 773, 773, 773, 773, 773, 773, 773, 773,
01342 773, 773, 773, 773, 774, 774, 0, 774, 774, 774,
01343 0, 774, 774, 774, 774, 774, 775, 775, 775, 0,
01344
01345 775, 775, 775, 775, 775, 775, 775, 775, 776, 776,
01346 0, 0, 0, 0, 776, 776, 776, 777, 777, 777,
01347 777, 777, 777, 777, 777, 777, 777, 777, 777, 778,
01348 778, 0, 0, 0, 0, 0, 0, 778, 779, 779,
01349 0, 779, 779, 779, 0, 779, 779, 779, 779, 779,
01350 780, 780, 780, 0, 780, 780, 780, 780, 780, 780,
01351 780, 780, 781, 781, 0, 781, 0, 0, 0, 0,
01352 781, 782, 782, 782, 782, 782, 782, 782, 782, 782,
01353 782, 782, 782, 783, 783, 0, 0, 783, 0, 783,
01354 0, 783, 784, 784, 0, 784, 784, 784, 0, 784,
01355
01356 784, 784, 784, 784, 785, 785, 785, 0, 785, 785,
01357 785, 785, 785, 785, 785, 785, 786, 786, 0, 0,
01358 0, 786, 786, 0, 786, 787, 787, 787, 787, 787,
01359 787, 787, 787, 787, 787, 787, 787, 788, 788, 0,
01360 0, 0, 0, 0, 788, 788, 789, 789, 0, 0,
01361 0, 789, 0, 0, 789, 790, 790, 790, 790, 790,
01362 790, 790, 790, 790, 790, 790, 790, 791, 791, 0,
01363 0, 0, 0, 791, 791, 791, 792, 792, 0, 0,
01364 0, 0, 792, 792, 792, 793, 793, 793, 793, 793,
01365 793, 793, 793, 793, 793, 793, 793, 794, 794, 794,
01366
01367 794, 794, 794, 794, 794, 794, 794, 794, 794, 717,
01368 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
01369 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
01370 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
01371 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
01372 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
01373 717, 717, 717, 717, 717, 717, 717, 717, 717, 717,
01374 717
01375 } ;
01376
01377 static yy_state_type yy_last_accepting_state;
01378 static char *yy_last_accepting_cpos;
01379
01380
01381
01382
01383 #define REJECT reject_used_but_not_detected
01384 #define yymore() yymore_used_but_not_detected
01385 #define YY_MORE_ADJ 0
01386 #define YY_RESTORE_YY_MORE_OFFSET
01387 char *yytext;
01388 #line 1 "gengtype-lex.l"
01389 #define INITIAL 0
01390
01391
01392
01393
01394
01395
01396
01397
01398
01399
01400
01401
01402
01403
01404
01405
01406
01407
01408
01409
01410 #line 23 "gengtype-lex.l"
01411 #include "hconfig.h"
01412 #include "system.h"
01413
01414 #define malloc xmalloc
01415 #define realloc xrealloc
01416
01417 #include "gengtype.h"
01418 #include "gengtype-yacc.h"
01419
01420 #undef YY_USE_PROTOS
01421 #define YY_DECL int yylex ()
01422
01423 static void update_lineno PARAMS ((const char *l, size_t len));
01424
01425 struct fileloc lexer_line;
01426 int lexer_toplevel_done;
01427
01428 static void
01429 update_lineno (l, len)
01430 const char *l;
01431 size_t len;
01432 {
01433 while (len-- > 0)
01434 if (*l++ == '\n')
01435 lexer_line.line++;
01436 }
01437
01438 #define in_struct 1
01439 #define in_struct_comment 2
01440 #define in_comment 3
01441 #define in_yacc_escape 4
01442
01443 #define YY_NO_UNPUT 1
01444 #define YY_NEVER_INTERACTIVE 1
01445 #line 1442 "../../gcc/gcc/gengtype-lex.c"
01446
01447
01448
01449
01450
01451 #ifndef YY_SKIP_YYWRAP
01452 #ifdef __cplusplus
01453 extern "C" int yywrap YY_PROTO(( void ));
01454 #else
01455 extern int yywrap YY_PROTO(( void ));
01456 #endif
01457 #endif
01458
01459 #ifndef YY_NO_UNPUT
01460 static void yyunput YY_PROTO(( int c, char *buf_ptr ));
01461 #endif
01462
01463 #ifndef yytext_ptr
01464 static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
01465 #endif
01466
01467 #ifdef YY_NEED_STRLEN
01468 static int yy_flex_strlen YY_PROTO(( yyconst char * ));
01469 #endif
01470
01471 #ifndef YY_NO_INPUT
01472 #ifdef __cplusplus
01473 static int yyinput YY_PROTO(( void ));
01474 #else
01475 static int input YY_PROTO(( void ));
01476 #endif
01477 #endif
01478
01479 #if YY_STACK_USED
01480 static int yy_start_stack_ptr = 0;
01481 static int yy_start_stack_depth = 0;
01482 static int *yy_start_stack = 0;
01483 #ifndef YY_NO_PUSH_STATE
01484 static void yy_push_state YY_PROTO(( int new_state ));
01485 #endif
01486 #ifndef YY_NO_POP_STATE
01487 static void yy_pop_state YY_PROTO(( void ));
01488 #endif
01489 #ifndef YY_NO_TOP_STATE
01490 static int yy_top_state YY_PROTO(( void ));
01491 #endif
01492
01493 #else
01494 #define YY_NO_PUSH_STATE 1
01495 #define YY_NO_POP_STATE 1
01496 #define YY_NO_TOP_STATE 1
01497 #endif
01498
01499 #ifdef YY_MALLOC_DECL
01500 YY_MALLOC_DECL
01501 #else
01502 #if __STDC__
01503 #ifndef __cplusplus
01504 #include <stdlib.h>
01505 #endif
01506 #else
01507
01508
01509
01510
01511 #endif
01512 #endif
01513
01514
01515 #ifndef YY_READ_BUF_SIZE
01516 #define YY_READ_BUF_SIZE 8192
01517 #endif
01518
01519
01520
01521 #ifndef ECHO
01522
01523
01524
01525 #define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
01526 #endif
01527
01528
01529
01530
01531 #ifndef YY_INPUT
01532 #define YY_INPUT(buf,result,max_size) \
01533 if ( yy_current_buffer->yy_is_interactive ) \
01534 { \
01535 int c = '*', n; \
01536 for ( n = 0; n < max_size && \
01537 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
01538 buf[n] = (char) c; \
01539 if ( c == '\n' ) \
01540 buf[n++] = (char) c; \
01541 if ( c == EOF && ferror( yyin ) ) \
01542 YY_FATAL_ERROR( "input in flex scanner failed" ); \
01543 result = n; \
01544 } \
01545 else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
01546 && ferror( yyin ) ) \
01547 YY_FATAL_ERROR( "input in flex scanner failed" );
01548 #endif
01549
01550
01551
01552
01553
01554 #ifndef yyterminate
01555 #define yyterminate() return YY_NULL
01556 #endif
01557
01558
01559 #ifndef YY_START_STACK_INCR
01560 #define YY_START_STACK_INCR 25
01561 #endif
01562
01563
01564 #ifndef YY_FATAL_ERROR
01565 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
01566 #endif
01567
01568
01569
01570
01571 #ifndef YY_DECL
01572 #define YY_DECL int yylex YY_PROTO(( void ))
01573 #endif
01574
01575
01576
01577
01578 #ifndef YY_USER_ACTION
01579 #define YY_USER_ACTION
01580 #endif
01581
01582
01583 #ifndef YY_BREAK
01584 #define YY_BREAK break;
01585 #endif
01586
01587 #define YY_RULE_SETUP \
01588 if ( yyleng > 0 ) \
01589 yy_current_buffer->yy_at_bol = \
01590 (yytext[yyleng - 1] == '\n'); \
01591 YY_USER_ACTION
01592
01593 YY_DECL
01594 {
01595 register yy_state_type yy_current_state;
01596 register char *yy_cp = NULL, *yy_bp = NULL;
01597 register int yy_act;
01598
01599 #line 60 "gengtype-lex.l"
01600
01601
01602 #line 1599 "../../gcc/gcc/gengtype-lex.c"
01603
01604 if ( yy_init )
01605 {
01606 yy_init = 0;
01607
01608 #ifdef YY_USER_INIT
01609 YY_USER_INIT;
01610 #endif
01611
01612 if ( ! yy_start )
01613 yy_start = 1;
01614
01615 if ( ! yyin )
01616 yyin = stdin;
01617
01618 if ( ! yyout )
01619 yyout = stdout;
01620
01621 if ( ! yy_current_buffer )
01622 yy_current_buffer =
01623 yy_create_buffer( yyin, YY_BUF_SIZE );
01624
01625 yy_load_buffer_state();
01626 }
01627
01628 while ( 1 )
01629 {
01630 yy_cp = yy_c_buf_p;
01631
01632
01633 *yy_cp = yy_hold_char;
01634
01635
01636
01637
01638 yy_bp = yy_cp;
01639
01640 yy_current_state = yy_start;
01641 yy_current_state += YY_AT_BOL();
01642 yy_match:
01643 do
01644 {
01645 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
01646 if ( yy_accept[yy_current_state] )
01647 {
01648 yy_last_accepting_state = yy_current_state;
01649 yy_last_accepting_cpos = yy_cp;
01650 }
01651 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
01652 {
01653 yy_current_state = (int) yy_def[yy_current_state];
01654 if ( yy_current_state >= 718 )
01655 yy_c = yy_meta[(unsigned int) yy_c];
01656 }
01657 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
01658 ++yy_cp;
01659 }
01660 while ( yy_base[yy_current_state] != 3410 );
01661
01662 yy_find_action:
01663 yy_act = yy_accept[yy_current_state];
01664 if ( yy_act == 0 )
01665 {
01666 yy_cp = yy_last_accepting_cpos;
01667 yy_current_state = yy_last_accepting_state;
01668 yy_act = yy_accept[yy_current_state];
01669 }
01670
01671 YY_DO_BEFORE_ACTION;
01672
01673
01674 do_action:
01675
01676
01677 switch ( yy_act )
01678 {
01679 case 0:
01680
01681 *yy_cp = yy_hold_char;
01682 yy_cp = yy_last_accepting_cpos;
01683 yy_current_state = yy_last_accepting_state;
01684 goto yy_find_action;
01685
01686 case 1:
01687 YY_RULE_SETUP
01688 #line 62 "gengtype-lex.l"
01689 {
01690 char *tagstart;
01691 size_t taglen;
01692 char *namestart;
01693 size_t namelen;
01694 int is_pointer = 0;
01695 struct type *t;
01696 int union_p;
01697
01698 tagstart = yytext + strlen (" typedef ");
01699 while (ISSPACE (*tagstart))
01700 tagstart++;
01701 union_p = tagstart[0] == 'u';
01702 tagstart += strlen ("union ");
01703 while (ISSPACE (*tagstart))
01704 tagstart++;
01705 for (taglen = 1; ISIDNUM (tagstart[taglen]); taglen++)
01706 ;
01707 for (namestart = tagstart + taglen;
01708 ! ISIDNUM (*namestart);
01709 namestart++)
01710 if (*namestart == '*')
01711 is_pointer = 1;
01712 for (namelen = 1; ISIDNUM (namestart[namelen]); namelen++)
01713 ;
01714 t = find_structure (xmemdup (tagstart, taglen, taglen+1), union_p);
01715 if (is_pointer)
01716 t = create_pointer (t);
01717 do_typedef (xmemdup (namestart, namelen, namelen+1), t, &lexer_line);
01718 update_lineno (yytext, yyleng);
01719 }
01720 YY_BREAK
01721 case 2:
01722 YY_RULE_SETUP
01723 #line 94 "gengtype-lex.l"
01724 {
01725
01726 char *namestart;
01727 size_t namelen;
01728 struct type *t;
01729 char *typestart;
01730 size_t typelen;
01731
01732 for (namestart = yytext + yyleng - 2; ISSPACE (*namestart); namestart--)
01733 ;
01734 for (namelen = 1; !ISSPACE (namestart[-namelen]); namelen++)
01735 ;
01736 namestart -= namelen - 1;
01737 for (typestart = yytext + strlen (" typedef ");
01738 ISSPACE(*typestart);
01739 typestart++)
01740 ;
01741 for (typelen = namestart - typestart;
01742 ISSPACE(typestart[typelen-1]);
01743 typelen--)
01744 ;
01745
01746 t = create_scalar_type (typestart, typelen);
01747 do_typedef (xmemdup (namestart, namelen, namelen+1), t, &lexer_line);
01748 update_lineno (yytext, yyleng);
01749 }
01750 YY_BREAK
01751 case 3:
01752 YY_RULE_SETUP
01753 #line 121 "gengtype-lex.l"
01754 {
01755 char *namestart;
01756 size_t namelen;
01757 struct type *t;
01758
01759 for (namestart = yytext + yyleng - 7; ISSPACE (*namestart); namestart--)
01760 ;
01761 for (namelen = 1; !ISSPACE (namestart[-namelen]); namelen++)
01762 ;
01763 namestart -= namelen - 1;
01764
01765 t = create_scalar_type ("function type", sizeof ("function type")-1);
01766 do_typedef (xmemdup (namestart, namelen, namelen+1), t, &lexer_line);
01767 update_lineno (yytext, yyleng);
01768 }
01769 YY_BREAK
01770 case 4:
01771 YY_RULE_SETUP
01772 #line 136 "gengtype-lex.l"
01773 {
01774 char *namestart;
01775 size_t namelen;
01776 struct type *t;
01777
01778 for (namestart = yytext + yyleng - 7; !ISIDNUM (*namestart); namestart--)
01779 ;
01780 for (namelen = 1; ISIDNUM (namestart[-namelen]); namelen++)
01781 ;
01782 namestart -= namelen - 1;
01783
01784 t = create_scalar_type ("function type", sizeof ("function type")-1);
01785 do_typedef (xmemdup (namestart, namelen, namelen+1), t, &lexer_line);
01786 update_lineno (yytext, yyleng);
01787 }
01788 YY_BREAK
01789 case 5:
01790 *yy_cp = yy_hold_char;
01791 yy_c_buf_p = yy_cp -= 3;
01792 YY_DO_BEFORE_ACTION;
01793 YY_RULE_SETUP
01794 #line 152 "gengtype-lex.l"
01795 {
01796 char *tagstart;
01797 size_t taglen;
01798 int typedef_p;
01799 int union_p;
01800
01801 typedef_p = yytext[1] == 't';
01802 if (typedef_p)
01803 for (tagstart = yytext + strlen (" typedef ");
01804 ISSPACE(*tagstart);
01805 tagstart++)
01806 ;
01807 else
01808 tagstart = yytext + 1;
01809
01810 union_p = tagstart[0] == 'u';
01811 tagstart += strlen ("union ");
01812 while (ISSPACE (*tagstart))
01813 tagstart++;
01814 for (taglen = 1; ISIDNUM (tagstart[taglen]); taglen++)
01815 ;
01816
01817 yylval.t = find_structure (xmemdup (tagstart, taglen, taglen + 1), union_p);
01818 BEGIN(in_struct);
01819 update_lineno (yytext, yyleng);
01820 return typedef_p ? ENT_TYPEDEF_STRUCT : ENT_STRUCT;
01821 }
01822 YY_BREAK
01823 case 6:
01824 *yy_cp = yy_hold_char;
01825 yy_c_buf_p = yy_cp -= 3;
01826 YY_DO_BEFORE_ACTION;
01827 YY_RULE_SETUP
01828 #line 180 "gengtype-lex.l"
01829 {
01830 BEGIN(in_struct);
01831 update_lineno (yytext, yyleng);
01832 return ENT_EXTERNSTATIC;
01833 }
01834 YY_BREAK
01835 case 7:
01836 *yy_cp = yy_hold_char;
01837 yy_c_buf_p = yy_cp -= 3;
01838 YY_DO_BEFORE_ACTION;
01839 YY_RULE_SETUP
01840 #line 186 "gengtype-lex.l"
01841 {
01842 BEGIN(in_struct);
01843 update_lineno (yytext, yyleng);
01844 return ENT_YACCUNION;
01845 }
01846 YY_BREAK
01847
01848 case 8:
01849 YY_RULE_SETUP
01850 #line 194 "gengtype-lex.l"
01851 { BEGIN(in_struct_comment); }
01852 YY_BREAK
01853 case 9:
01854 YY_RULE_SETUP
01855 #line 196 "gengtype-lex.l"
01856 { BEGIN(in_yacc_escape); }
01857 YY_BREAK
01858 case 10:
01859 YY_RULE_SETUP
01860 #line 198 "gengtype-lex.l"
01861 { update_lineno (yytext, yyleng); }
01862 YY_BREAK
01863 case 11:
01864 *yy_cp = yy_hold_char;
01865 yy_c_buf_p = yy_cp = yy_bp + 5;
01866 YY_DO_BEFORE_ACTION;
01867 YY_RULE_SETUP
01868 #line 200 "gengtype-lex.l"
01869
01870 YY_BREAK
01871 case 12:
01872 *yy_cp = yy_hold_char;
01873 yy_c_buf_p = yy_cp = yy_bp + 3;
01874 YY_DO_BEFORE_ACTION;
01875 YY_RULE_SETUP
01876 #line 202 "gengtype-lex.l"
01877 { return GTY_TOKEN; }
01878 YY_BREAK
01879 case 13:
01880 *yy_cp = yy_hold_char;
01881 yy_c_buf_p = yy_cp = yy_bp + 5;
01882 YY_DO_BEFORE_ACTION;
01883 YY_RULE_SETUP
01884 #line 203 "gengtype-lex.l"
01885 { return UNION; }
01886 YY_BREAK
01887 case 14:
01888 *yy_cp = yy_hold_char;
01889 yy_c_buf_p = yy_cp = yy_bp + 6;
01890 YY_DO_BEFORE_ACTION;
01891 YY_RULE_SETUP
01892 #line 204 "gengtype-lex.l"
01893 { return STRUCT; }
01894 YY_BREAK
01895 case 15:
01896 *yy_cp = yy_hold_char;
01897 yy_c_buf_p = yy_cp = yy_bp + 4;
01898 YY_DO_BEFORE_ACTION;
01899 YY_RULE_SETUP
01900 #line 205 "gengtype-lex.l"
01901 { return ENUM; }
01902 YY_BREAK
01903 case 16:
01904 *yy_cp = yy_hold_char;
01905 yy_c_buf_p = yy_cp = yy_bp + 9;
01906 YY_DO_BEFORE_ACTION;
01907 YY_RULE_SETUP
01908 #line 206 "gengtype-lex.l"
01909 { return ALIAS; }
01910 YY_BREAK
01911 case 17:
01912 YY_RULE_SETUP
01913 #line 207 "gengtype-lex.l"
01914 { return NUM; }
01915 YY_BREAK
01916 case 18:
01917 *yy_cp = yy_hold_char;
01918 yy_c_buf_p = yy_cp -= 1;
01919 YY_DO_BEFORE_ACTION;
01920 YY_RULE_SETUP
01921 #line 208 "gengtype-lex.l"
01922 {
01923 yylval.s = xmemdup (yytext, yyleng, yyleng+1);
01924 return PARAM_IS;
01925 }
01926 YY_BREAK
01927 case 19:
01928 *yy_cp = yy_hold_char;
01929 yy_c_buf_p = yy_cp -= 1;
01930 YY_DO_BEFORE_ACTION;
01931 #line 214 "gengtype-lex.l"
01932 case 20:
01933 YY_RULE_SETUP
01934 #line 214 "gengtype-lex.l"
01935 {
01936 size_t len;
01937
01938 for (len = yyleng; ISSPACE (yytext[len-1]); len--)
01939 ;
01940
01941 yylval.t = create_scalar_type (yytext, len);
01942 update_lineno (yytext, yyleng);
01943 return SCALAR;
01944 }
01945 YY_BREAK
01946 case 21:
01947 *yy_cp = yy_hold_char;
01948 yy_c_buf_p = yy_cp -= 1;
01949 YY_DO_BEFORE_ACTION;
01950 YY_RULE_SETUP
01951 #line 225 "gengtype-lex.l"
01952 {
01953 yylval.s = xmemdup (yytext, yyleng, yyleng+1);
01954 return ID;
01955 }
01956 YY_BREAK
01957 case 22:
01958 YY_RULE_SETUP
01959 #line 230 "gengtype-lex.l"
01960 {
01961 yylval.s = xmemdup (yytext+1, yyleng-2, yyleng-1);
01962 return STRING;
01963 }
01964 YY_BREAK
01965 case 23:
01966 YY_RULE_SETUP
01967 #line 234 "gengtype-lex.l"
01968 {
01969 yylval.s = xmemdup (yytext+1, yyleng-2, yyleng-1);
01970 return ARRAY;
01971 }
01972 YY_BREAK
01973 case 24:
01974 YY_RULE_SETUP
01975 #line 238 "gengtype-lex.l"
01976 {
01977 yylval.s = xmemdup (yytext+1, yyleng-1, yyleng);
01978 return PERCENT_ID;
01979 }
01980 YY_BREAK
01981 case 25:
01982 YY_RULE_SETUP
01983 #line 242 "gengtype-lex.l"
01984 {
01985 yylval.s = xmemdup (yytext+1, yyleng-2, yyleng);
01986 return CHAR;
01987 }
01988 YY_BREAK
01989 case 26:
01990 YY_RULE_SETUP
01991 #line 247 "gengtype-lex.l"
01992 { return yytext[0]; }
01993 YY_BREAK
01994 case 27:
01995 YY_RULE_SETUP
01996 #line 249 "gengtype-lex.l"
01997 {
01998 if (lexer_toplevel_done)
01999 {
02000 BEGIN(INITIAL);
02001 lexer_toplevel_done = 0;
02002 }
02003 return yytext[0];
02004 }
02005 YY_BREAK
02006 case 28:
02007 YY_RULE_SETUP
02008 #line 258 "gengtype-lex.l"
02009 {
02010 BEGIN(INITIAL);
02011 return PERCENTPERCENT;
02012 }
02013 YY_BREAK
02014 case 29:
02015 YY_RULE_SETUP
02016 #line 263 "gengtype-lex.l"
02017 {
02018 error_at_line (&lexer_line, "unexpected character `%s'", yytext);
02019 }
02020 YY_BREAK
02021
02022 case 30:
02023 YY_RULE_SETUP
02024 #line 268 "gengtype-lex.l"
02025 { BEGIN(in_comment); }
02026 YY_BREAK
02027 case 31:
02028 YY_RULE_SETUP
02029 #line 269 "gengtype-lex.l"
02030 { lexer_line.line++; }
02031 YY_BREAK
02032 case 32:
02033 #line 271 "gengtype-lex.l"
02034 case 33:
02035 #line 272 "gengtype-lex.l"
02036 case 34:
02037 YY_RULE_SETUP
02038 #line 272 "gengtype-lex.l"
02039
02040 YY_BREAK
02041 case 35:
02042 YY_RULE_SETUP
02043 #line 273 "gengtype-lex.l"
02044 { update_lineno (yytext, yyleng); }
02045 YY_BREAK
02046 case 36:
02047 *yy_cp = yy_hold_char;
02048 yy_c_buf_p = yy_cp = yy_bp + 1;
02049 YY_DO_BEFORE_ACTION;
02050 YY_RULE_SETUP
02051 #line 274 "gengtype-lex.l"
02052
02053 YY_BREAK
02054
02055 case 37:
02056 YY_RULE_SETUP
02057 #line 277 "gengtype-lex.l"
02058 { lexer_line.line++; }
02059 YY_BREAK
02060 case 38:
02061 #line 279 "gengtype-lex.l"
02062 case 39:
02063 YY_RULE_SETUP
02064 #line 279 "gengtype-lex.l"
02065
02066 YY_BREAK
02067 case 40:
02068 *yy_cp = yy_hold_char;
02069 yy_c_buf_p = yy_cp = yy_bp + 1;
02070 YY_DO_BEFORE_ACTION;
02071 YY_RULE_SETUP
02072 #line 280 "gengtype-lex.l"
02073
02074 YY_BREAK
02075
02076 case 41:
02077 YY_RULE_SETUP
02078 #line 282 "gengtype-lex.l"
02079 { BEGIN(INITIAL); }
02080 YY_BREAK
02081 case 42:
02082 YY_RULE_SETUP
02083 #line 283 "gengtype-lex.l"
02084 { BEGIN(in_struct); }
02085 YY_BREAK
02086
02087 case 43:
02088 YY_RULE_SETUP
02089 #line 286 "gengtype-lex.l"
02090 { lexer_line.line++; }
02091 YY_BREAK
02092 case 44:
02093 #line 288 "gengtype-lex.l"
02094 case 45:
02095 YY_RULE_SETUP
02096 #line 288 "gengtype-lex.l"
02097
02098 YY_BREAK
02099 case 46:
02100 *yy_cp = yy_hold_char;
02101 yy_c_buf_p = yy_cp = yy_bp + 1;
02102 YY_DO_BEFORE_ACTION;
02103 YY_RULE_SETUP
02104 #line 289 "gengtype-lex.l"
02105
02106 YY_BREAK
02107 case 47:
02108 YY_RULE_SETUP
02109 #line 290 "gengtype-lex.l"
02110 { BEGIN(in_struct); }
02111 YY_BREAK
02112 case 48:
02113 YY_RULE_SETUP
02114 #line 291 "gengtype-lex.l"
02115 {
02116 error_at_line (&lexer_line,
02117 "unterminated %%{; unexpected EOF");
02118 }
02119 YY_BREAK
02120
02121 case 49:
02122 #line 299 "gengtype-lex.l"
02123 case 50:
02124 YY_RULE_SETUP
02125 #line 299 "gengtype-lex.l"
02126 {
02127 error_at_line (&lexer_line,
02128 "unterminated comment or string; unexpected EOF");
02129 }
02130 YY_BREAK
02131 case 51:
02132 YY_RULE_SETUP
02133 #line 304 "gengtype-lex.l"
02134 YY_FATAL_ERROR( "flex scanner jammed" );
02135 YY_BREAK
02136 #line 2133 "../../gcc/gcc/gengtype-lex.c"
02137 case YY_STATE_EOF(INITIAL):
02138 case YY_STATE_EOF(in_struct):
02139 case YY_STATE_EOF(in_struct_comment):
02140 case YY_STATE_EOF(in_comment):
02141 case YY_STATE_EOF(in_yacc_escape):
02142 yyterminate();
02143
02144 case YY_END_OF_BUFFER:
02145 {
02146
02147 int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
02148
02149
02150 *yy_cp = yy_hold_char;
02151 YY_RESTORE_YY_MORE_OFFSET
02152
02153 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
02154 {
02155
02156
02157
02158
02159
02160
02161
02162
02163
02164 yy_n_chars = yy_current_buffer->yy_n_chars;
02165 yy_current_buffer->yy_input_file = yyin;
02166 yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
02167 }
02168
02169
02170
02171
02172
02173
02174
02175
02176 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
02177 {
02178 yy_state_type yy_next_state;
02179
02180 yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
02181
02182 yy_current_state = yy_get_previous_state();
02183
02184
02185
02186
02187
02188
02189
02190
02191
02192
02193 yy_next_state = yy_try_NUL_trans( yy_current_state );
02194
02195 yy_bp = yytext_ptr + YY_MORE_ADJ;
02196
02197 if ( yy_next_state )
02198 {
02199
02200 yy_cp = ++yy_c_buf_p;
02201 yy_current_state = yy_next_state;
02202 goto yy_match;
02203 }
02204
02205 else
02206 {
02207 yy_cp = yy_c_buf_p;
02208 goto yy_find_action;
02209 }
02210 }
02211
02212 else switch ( yy_get_next_buffer() )
02213 {
02214 case EOB_ACT_END_OF_FILE:
02215 {
02216 yy_did_buffer_switch_on_eof = 0;
02217
02218 if ( yywrap() )
02219 {
02220
02221
02222
02223
02224
02225
02226
02227
02228
02229 yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
02230
02231 yy_act = YY_STATE_EOF(YY_START);
02232 goto do_action;
02233 }
02234
02235 else
02236 {
02237 if ( ! yy_did_buffer_switch_on_eof )
02238 YY_NEW_FILE;
02239 }
02240 break;
02241 }
02242
02243 case EOB_ACT_CONTINUE_SCAN:
02244 yy_c_buf_p =
02245 yytext_ptr + yy_amount_of_matched_text;
02246
02247 yy_current_state = yy_get_previous_state();
02248
02249 yy_cp = yy_c_buf_p;
02250 yy_bp = yytext_ptr + YY_MORE_ADJ;
02251 goto yy_match;
02252
02253 case EOB_ACT_LAST_MATCH:
02254 yy_c_buf_p =
02255 &yy_current_buffer->yy_ch_buf[yy_n_chars];
02256
02257 yy_current_state = yy_get_previous_state();
02258
02259 yy_cp = yy_c_buf_p;
02260 yy_bp = yytext_ptr + YY_MORE_ADJ;
02261 goto yy_find_action;
02262 }
02263 break;
02264 }
02265
02266 default:
02267 YY_FATAL_ERROR(
02268 "fatal flex scanner internal error--no action found" );
02269 }
02270 }
02271 }
02272
02273
02274
02275
02276
02277
02278
02279
02280
02281
02282 static int yy_get_next_buffer()
02283 {
02284 register char *dest = yy_current_buffer->yy_ch_buf;
02285 register char *source = yytext_ptr;
02286 register int number_to_move, i;
02287 int ret_val;
02288
02289 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
02290 YY_FATAL_ERROR(
02291 "fatal flex scanner internal error--end of buffer missed" );
02292
02293 if ( yy_current_buffer->yy_fill_buffer == 0 )
02294 {
02295 if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
02296 {
02297
02298
02299
02300 return EOB_ACT_END_OF_FILE;
02301 }
02302
02303 else
02304 {
02305
02306
02307
02308 return EOB_ACT_LAST_MATCH;
02309 }
02310 }
02311
02312
02313
02314
02315 number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
02316
02317 for ( i = 0; i < number_to_move; ++i )
02318 *(dest++) = *(source++);
02319
02320 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
02321
02322
02323
02324 yy_current_buffer->yy_n_chars = yy_n_chars = 0;
02325
02326 else
02327 {
02328 int num_to_read =
02329 yy_current_buffer->yy_buf_size - number_to_move - 1;
02330
02331 while ( num_to_read <= 0 )
02332 {
02333 #ifdef YY_USES_REJECT
02334 YY_FATAL_ERROR(
02335 "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
02336 #else
02337
02338
02339 YY_BUFFER_STATE b = yy_current_buffer;
02340
02341 int yy_c_buf_p_offset =
02342 (int) (yy_c_buf_p - b->yy_ch_buf);
02343
02344 if ( b->yy_is_our_buffer )
02345 {
02346 int new_size = b->yy_buf_size * 2;
02347
02348 if ( new_size <= 0 )
02349 b->yy_buf_size += b->yy_buf_size / 8;
02350 else
02351 b->yy_buf_size *= 2;
02352
02353 b->yy_ch_buf = (char *)
02354
02355 yy_flex_realloc( (void *) b->yy_ch_buf,
02356 b->yy_buf_size + 2 );
02357 }
02358 else
02359
02360 b->yy_ch_buf = 0;
02361
02362 if ( ! b->yy_ch_buf )
02363 YY_FATAL_ERROR(
02364 "fatal error - scanner input buffer overflow" );
02365
02366 yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
02367
02368 num_to_read = yy_current_buffer->yy_buf_size -
02369 number_to_move - 1;
02370 #endif
02371 }
02372
02373 if ( num_to_read > YY_READ_BUF_SIZE )
02374 num_to_read = YY_READ_BUF_SIZE;
02375
02376
02377 YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
02378 yy_n_chars, num_to_read );
02379
02380 yy_current_buffer->yy_n_chars = yy_n_chars;
02381 }
02382
02383 if ( yy_n_chars == 0 )
02384 {
02385 if ( number_to_move == YY_MORE_ADJ )
02386 {
02387 ret_val = EOB_ACT_END_OF_FILE;
02388 yyrestart( yyin );
02389 }
02390
02391 else
02392 {
02393 ret_val = EOB_ACT_LAST_MATCH;
02394 yy_current_buffer->yy_buffer_status =
02395 YY_BUFFER_EOF_PENDING;
02396 }
02397 }
02398
02399 else
02400 ret_val = EOB_ACT_CONTINUE_SCAN;
02401
02402 yy_n_chars += number_to_move;
02403 yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
02404 yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
02405
02406 yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
02407
02408 return ret_val;
02409 }
02410
02411
02412
02413
02414 static yy_state_type yy_get_previous_state()
02415 {
02416 register yy_state_type yy_current_state;
02417 register char *yy_cp;
02418
02419 yy_current_state = yy_start;
02420 yy_current_state += YY_AT_BOL();
02421
02422 for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
02423 {
02424 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
02425 if ( yy_accept[yy_current_state] )
02426 {
02427 yy_last_accepting_state = yy_current_state;
02428 yy_last_accepting_cpos = yy_cp;
02429 }
02430 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
02431 {
02432 yy_current_state = (int) yy_def[yy_current_state];
02433 if ( yy_current_state >= 718 )
02434 yy_c = yy_meta[(unsigned int) yy_c];
02435 }
02436 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
02437 }
02438
02439 return yy_current_state;
02440 }
02441
02442
02443
02444
02445
02446
02447
02448
02449 #ifdef YY_USE_PROTOS
02450 static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
02451 #else
02452 static yy_state_type yy_try_NUL_trans( yy_current_state )
02453 yy_state_type yy_current_state;
02454 #endif
02455 {
02456 register int yy_is_jam;
02457 register char *yy_cp = yy_c_buf_p;
02458
02459 register YY_CHAR yy_c = 1;
02460 if ( yy_accept[yy_current_state] )
02461 {
02462 yy_last_accepting_state = yy_current_state;
02463 yy_last_accepting_cpos = yy_cp;
02464 }
02465 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
02466 {
02467 yy_current_state = (int) yy_def[yy_current_state];
02468 if ( yy_current_state >= 718 )
02469 yy_c = yy_meta[(unsigned int) yy_c];
02470 }
02471 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
02472 yy_is_jam = (yy_current_state == 717);
02473
02474 return yy_is_jam ? 0 : yy_current_state;
02475 }
02476
02477
02478 #ifndef YY_NO_UNPUT
02479 #ifdef YY_USE_PROTOS
02480 static void yyunput( int c, register char *yy_bp )
02481 #else
02482 static void yyunput( c, yy_bp )
02483 int c;
02484 register char *yy_bp;
02485 #endif
02486 {
02487 register char *yy_cp = yy_c_buf_p;
02488
02489
02490 *yy_cp = yy_hold_char;
02491
02492 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
02493 {
02494
02495 register int number_to_move = yy_n_chars + 2;
02496 register char *dest = &yy_current_buffer->yy_ch_buf[
02497 yy_current_buffer->yy_buf_size + 2];
02498 register char *source =
02499 &yy_current_buffer->yy_ch_buf[number_to_move];
02500
02501 while ( source > yy_current_buffer->yy_ch_buf )
02502 *--dest = *--source;
02503
02504 yy_cp += (int) (dest - source);
02505 yy_bp += (int) (dest - source);
02506 yy_current_buffer->yy_n_chars =
02507 yy_n_chars = yy_current_buffer->yy_buf_size;
02508
02509 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
02510 YY_FATAL_ERROR( "flex scanner push-back overflow" );
02511 }
02512
02513 *--yy_cp = (char) c;
02514
02515
02516 yytext_ptr = yy_bp;
02517 yy_hold_char = *yy_cp;
02518 yy_c_buf_p = yy_cp;
02519 }
02520 #endif
02521
02522
02523 #ifndef YY_NO_INPUT
02524 #ifdef __cplusplus
02525 static int yyinput()
02526 #else
02527 static int input()
02528 #endif
02529 {
02530 int c;
02531
02532 *yy_c_buf_p = yy_hold_char;
02533
02534 if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
02535 {
02536
02537
02538
02539
02540 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
02541
02542 *yy_c_buf_p = '\0';
02543
02544 else
02545 {
02546 int offset = yy_c_buf_p - yytext_ptr;
02547 ++yy_c_buf_p;
02548
02549 switch ( yy_get_next_buffer() )
02550 {
02551 case EOB_ACT_LAST_MATCH:
02552
02553
02554
02555
02556
02557
02558
02559
02560
02561
02562
02563 yyrestart( yyin );
02564
02565
02566
02567 case EOB_ACT_END_OF_FILE:
02568 {
02569 if ( yywrap() )
02570 return EOF;
02571
02572 if ( ! yy_did_buffer_switch_on_eof )
02573 YY_NEW_FILE;
02574 #ifdef __cplusplus
02575 return yyinput();
02576 #else
02577 return input();
02578 #endif
02579 }
02580
02581 case EOB_ACT_CONTINUE_SCAN:
02582 yy_c_buf_p = yytext_ptr + offset;
02583 break;
02584 }
02585 }
02586 }
02587
02588 c = *(unsigned char *) yy_c_buf_p;
02589 *yy_c_buf_p = '\0';
02590 yy_hold_char = *++yy_c_buf_p;
02591
02592 yy_current_buffer->yy_at_bol = (c == '\n');
02593
02594 return c;
02595 }
02596 #endif
02597
02598 #ifdef YY_USE_PROTOS
02599 void yyrestart( FILE *input_file )
02600 #else
02601 void yyrestart( input_file )
02602 FILE *input_file;
02603 #endif
02604 {
02605 if ( ! yy_current_buffer )
02606 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
02607
02608 yy_init_buffer( yy_current_buffer, input_file );
02609 yy_load_buffer_state();
02610 }
02611
02612
02613 #ifdef YY_USE_PROTOS
02614 void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
02615 #else
02616 void yy_switch_to_buffer( new_buffer )
02617 YY_BUFFER_STATE new_buffer;
02618 #endif
02619 {
02620 if ( yy_current_buffer == new_buffer )
02621 return;
02622
02623 if ( yy_current_buffer )
02624 {
02625
02626 *yy_c_buf_p = yy_hold_char;
02627 yy_current_buffer->yy_buf_pos = yy_c_buf_p;
02628 yy_current_buffer->yy_n_chars = yy_n_chars;
02629 }
02630
02631 yy_current_buffer = new_buffer;
02632 yy_load_buffer_state();
02633
02634
02635
02636
02637
02638
02639 yy_did_buffer_switch_on_eof = 1;
02640 }
02641
02642
02643 #ifdef YY_USE_PROTOS
02644 void yy_load_buffer_state( void )
02645 #else
02646 void yy_load_buffer_state()
02647 #endif
02648 {
02649 yy_n_chars = yy_current_buffer->yy_n_chars;
02650 yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
02651 yyin = yy_current_buffer->yy_input_file;
02652 yy_hold_char = *yy_c_buf_p;
02653 }
02654
02655
02656 #ifdef YY_USE_PROTOS
02657 YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
02658 #else
02659 YY_BUFFER_STATE yy_create_buffer( file, size )
02660 FILE *file;
02661 int size;
02662 #endif
02663 {
02664 YY_BUFFER_STATE b;
02665
02666 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
02667 if ( ! b )
02668 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
02669
02670 b->yy_buf_size = size;
02671
02672
02673
02674
02675 b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
02676 if ( ! b->yy_ch_buf )
02677 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
02678
02679 b->yy_is_our_buffer = 1;
02680
02681 yy_init_buffer( b, file );
02682
02683 return b;
02684 }
02685
02686
02687 #ifdef YY_USE_PROTOS
02688 void yy_delete_buffer( YY_BUFFER_STATE b )
02689 #else
02690 void yy_delete_buffer( b )
02691 YY_BUFFER_STATE b;
02692 #endif
02693 {
02694 if ( ! b )
02695 return;
02696
02697 if ( b == yy_current_buffer )
02698 yy_current_buffer = (YY_BUFFER_STATE) 0;
02699
02700 if ( b->yy_is_our_buffer )
02701 yy_flex_free( (void *) b->yy_ch_buf );
02702
02703 yy_flex_free( (void *) b );
02704 }
02705
02706
02707
02708 #ifdef YY_USE_PROTOS
02709 void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
02710 #else
02711 void yy_init_buffer( b, file )
02712 YY_BUFFER_STATE b;
02713 FILE *file;
02714 #endif
02715
02716
02717 {
02718 yy_flush_buffer( b );
02719
02720 b->yy_input_file = file;
02721 b->yy_fill_buffer = 1;
02722
02723 #if YY_ALWAYS_INTERACTIVE
02724 b->yy_is_interactive = 1;
02725 #else
02726 #if YY_NEVER_INTERACTIVE
02727 b->yy_is_interactive = 0;
02728 #else
02729 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
02730 #endif
02731 #endif
02732 }
02733
02734
02735 #ifdef YY_USE_PROTOS
02736 void yy_flush_buffer( YY_BUFFER_STATE b )
02737 #else
02738 void yy_flush_buffer( b )
02739 YY_BUFFER_STATE b;
02740 #endif
02741
02742 {
02743 if ( ! b )
02744 return;
02745
02746 b->yy_n_chars = 0;
02747
02748
02749
02750
02751
02752 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
02753 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
02754
02755 b->yy_buf_pos = &b->yy_ch_buf[0];
02756
02757 b->yy_at_bol = 1;
02758 b->yy_buffer_status = YY_BUFFER_NEW;
02759
02760 if ( b == yy_current_buffer )
02761 yy_load_buffer_state();
02762 }
02763
02764
02765 #ifndef YY_NO_SCAN_BUFFER
02766 #ifdef YY_USE_PROTOS
02767 YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
02768 #else
02769 YY_BUFFER_STATE yy_scan_buffer( base, size )
02770 char *base;
02771 yy_size_t size;
02772 #endif
02773 {
02774 YY_BUFFER_STATE b;
02775
02776 if ( size < 2 ||
02777 base[size-2] != YY_END_OF_BUFFER_CHAR ||
02778 base[size-1] != YY_END_OF_BUFFER_CHAR )
02779
02780 return 0;
02781
02782 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
02783 if ( ! b )
02784 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
02785
02786 b->yy_buf_size = size - 2;
02787 b->yy_buf_pos = b->yy_ch_buf = base;
02788 b->yy_is_our_buffer = 0;
02789 b->yy_input_file = 0;
02790 b->yy_n_chars = b->yy_buf_size;
02791 b->yy_is_interactive = 0;
02792 b->yy_at_bol = 1;
02793 b->yy_fill_buffer = 0;
02794 b->yy_buffer_status = YY_BUFFER_NEW;
02795
02796 yy_switch_to_buffer( b );
02797
02798 return b;
02799 }
02800 #endif
02801
02802
02803 #ifndef YY_NO_SCAN_STRING
02804 #ifdef YY_USE_PROTOS
02805 YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
02806 #else
02807 YY_BUFFER_STATE yy_scan_string( yy_str )
02808 yyconst char *yy_str;
02809 #endif
02810 {
02811 int len;
02812 for ( len = 0; yy_str[len]; ++len )
02813 ;
02814
02815 return yy_scan_bytes( yy_str, len );
02816 }
02817 #endif
02818
02819
02820 #ifndef YY_NO_SCAN_BYTES
02821 #ifdef YY_USE_PROTOS
02822 YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
02823 #else
02824 YY_BUFFER_STATE yy_scan_bytes( bytes, len )
02825 yyconst char *bytes;
02826 int len;
02827 #endif
02828 {
02829 YY_BUFFER_STATE b;
02830 char *buf;
02831 yy_size_t n;
02832 int i;
02833
02834
02835 n = len + 2;
02836 buf = (char *) yy_flex_alloc( n );
02837 if ( ! buf )
02838 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
02839
02840 for ( i = 0; i < len; ++i )
02841 buf[i] = bytes[i];
02842
02843 buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
02844
02845 b = yy_scan_buffer( buf, n );
02846 if ( ! b )
02847 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
02848
02849
02850
02851
02852 b->yy_is_our_buffer = 1;
02853
02854 return b;
02855 }
02856 #endif
02857
02858
02859 #ifndef YY_NO_PUSH_STATE
02860 #ifdef YY_USE_PROTOS
02861 static void yy_push_state( int new_state )
02862 #else
02863 static void yy_push_state( new_state )
02864 int new_state;
02865 #endif
02866 {
02867 if ( yy_start_stack_ptr >= yy_start_stack_depth )
02868 {
02869 yy_size_t new_size;
02870
02871 yy_start_stack_depth += YY_START_STACK_INCR;
02872 new_size = yy_start_stack_depth * sizeof( int );
02873
02874 if ( ! yy_start_stack )
02875 yy_start_stack = (int *) yy_flex_alloc( new_size );
02876
02877 else
02878 yy_start_stack = (int *) yy_flex_realloc(
02879 (void *) yy_start_stack, new_size );
02880
02881 if ( ! yy_start_stack )
02882 YY_FATAL_ERROR(
02883 "out of memory expanding start-condition stack" );
02884 }
02885
02886 yy_start_stack[yy_start_stack_ptr++] = YY_START;
02887
02888 BEGIN(new_state);
02889 }
02890 #endif
02891
02892
02893 #ifndef YY_NO_POP_STATE
02894 static void yy_pop_state()
02895 {
02896 if ( --yy_start_stack_ptr < 0 )
02897 YY_FATAL_ERROR( "start-condition stack underflow" );
02898
02899 BEGIN(yy_start_stack[yy_start_stack_ptr]);
02900 }
02901 #endif
02902
02903
02904 #ifndef YY_NO_TOP_STATE
02905 static int yy_top_state()
02906 {
02907 return yy_start_stack[yy_start_stack_ptr - 1];
02908 }
02909 #endif
02910
02911 #ifndef YY_EXIT_FAILURE
02912 #define YY_EXIT_FAILURE 2
02913 #endif
02914
02915 #ifdef YY_USE_PROTOS
02916 static void yy_fatal_error( yyconst char msg[] )
02917 #else
02918 static void yy_fatal_error( msg )
02919 yyconst char msg[];
02920 #endif
02921 {
02922 (void) fprintf( stderr, "%s\n", msg );
02923 exit( YY_EXIT_FAILURE );
02924 }
02925
02926
02927
02928
02929
02930 #undef yyless
02931 #define yyless(n) \
02932 do \
02933 { \
02934 \
02935 yytext[yyleng] = yy_hold_char; \
02936 yy_c_buf_p = yytext + n; \
02937 yy_hold_char = *yy_c_buf_p; \
02938 *yy_c_buf_p = '\0'; \
02939 yyleng = n; \
02940 } \
02941 while ( 0 )
02942
02943
02944
02945
02946 #ifndef yytext_ptr
02947 #ifdef YY_USE_PROTOS
02948 static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
02949 #else
02950 static void yy_flex_strncpy( s1, s2, n )
02951 char *s1;
02952 yyconst char *s2;
02953 int n;
02954 #endif
02955 {
02956 register int i;
02957 for ( i = 0; i < n; ++i )
02958 s1[i] = s2[i];
02959 }
02960 #endif
02961
02962 #ifdef YY_NEED_STRLEN
02963 #ifdef YY_USE_PROTOS
02964 static int yy_flex_strlen( yyconst char *s )
02965 #else
02966 static int yy_flex_strlen( s )
02967 yyconst char *s;
02968 #endif
02969 {
02970 register int n;
02971 for ( n = 0; s[n]; ++n )
02972 ;
02973
02974 return n;
02975 }
02976 #endif
02977
02978
02979 #ifdef YY_USE_PROTOS
02980 static void *yy_flex_alloc( yy_size_t size )
02981 #else
02982 static void *yy_flex_alloc( size )
02983 yy_size_t size;
02984 #endif
02985 {
02986 return (void *) malloc( size );
02987 }
02988
02989 #ifdef YY_USE_PROTOS
02990 static void *yy_flex_realloc( void *ptr, yy_size_t size )
02991 #else
02992 static void *yy_flex_realloc( ptr, size )
02993 void *ptr;
02994 yy_size_t size;
02995 #endif
02996 {
02997
02998
02999
03000
03001
03002
03003
03004 return (void *) realloc( (char *) ptr, size );
03005 }
03006
03007 #ifdef YY_USE_PROTOS
03008 static void yy_flex_free( void *ptr )
03009 #else
03010 static void yy_flex_free( ptr )
03011 void *ptr;
03012 #endif
03013 {
03014 free( ptr );
03015 }
03016
03017 #if YY_MAIN
03018 int main()
03019 {
03020 yylex();
03021 return 0;
03022 }
03023 #endif
03024 #line 304 "gengtype-lex.l"
03025
03026
03027 void
03028 yyerror (s)
03029 const char *s;
03030 {
03031 error_at_line (&lexer_line, s);
03032 }
03033
03034 void
03035 parse_file (fname)
03036 const char *fname;
03037 {
03038 yyin = fopen (fname, "r");
03039 lexer_line.file = fname;
03040 lexer_line.line = 1;
03041 if (yyin == NULL)
03042 {
03043 perror (fname);
03044 exit (1);
03045 }
03046 if (yyparse() != 0)
03047 exit (1);
03048 fclose (yyin);
03049 }