X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/bc5f945db724984312da4c8d3905c1db7d168889..27d566aff751aa91bc650bf1ea2f92d7cd5a7d52:/src/xbt/graphxml.c diff --git a/src/xbt/graphxml.c b/src/xbt/graphxml.c index e4f8efaaff..42ca4d595d 100644 --- a/src/xbt/graphxml.c +++ b/src/xbt/graphxml.c @@ -1,15 +1,33 @@ -#line 2 "xbt/graphxml.c" -#line 4 "xbt/graphxml.c" +#line 3 "src/xbt/graphxml.c" #define YY_INT_ALIGNED short int /* A lexical scanner generated by flex */ +#define yy_create_buffer xbt_graph_parse__create_buffer +#define yy_delete_buffer xbt_graph_parse__delete_buffer +#define yy_flex_debug xbt_graph_parse__flex_debug +#define yy_init_buffer xbt_graph_parse__init_buffer +#define yy_flush_buffer xbt_graph_parse__flush_buffer +#define yy_load_buffer_state xbt_graph_parse__load_buffer_state +#define yy_switch_to_buffer xbt_graph_parse__switch_to_buffer +#define yyin xbt_graph_parse_in +#define yyleng xbt_graph_parse_leng +#define yylex xbt_graph_parse_lex +#define yylineno xbt_graph_parse_lineno +#define yyout xbt_graph_parse_out +#define yyrestart xbt_graph_parse_restart +#define yytext xbt_graph_parse_text +#define yywrap xbt_graph_parse_wrap +#define yyalloc xbt_graph_parse_alloc +#define yyrealloc xbt_graph_parse_realloc +#define yyfree xbt_graph_parse_free + #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 #define YY_FLEX_MINOR_VERSION 5 -#define YY_FLEX_SUBMINOR_VERSION 33 +#define YY_FLEX_SUBMINOR_VERSION 35 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif @@ -31,7 +49,7 @@ /* C99 systems have . Non-C99 systems may or may not. */ -#if __STDC_VERSION__ >= 199901L +#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h, * if you want the limit (max/min) macros for int types. @@ -54,7 +72,6 @@ typedef int flex_int32_t; typedef unsigned char flex_uint8_t; typedef unsigned short int flex_uint16_t; typedef unsigned int flex_uint32_t; -#endif /* ! C99 */ /* Limits of integral types. */ #ifndef INT8_MIN @@ -85,6 +102,8 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif +#endif /* ! C99 */ + #endif /* ! FLEXINT_H */ #ifdef __cplusplus @@ -94,11 +113,12 @@ typedef unsigned int flex_uint32_t; #else /* ! __cplusplus */ -#if __STDC__ +/* C99 requires __STDC__ to be defined as 1. */ +#if defined (__STDC__) #define YY_USE_CONST -#endif /* __STDC__ */ +#endif /* defined (__STDC__) */ #endif /* ! __cplusplus */ #ifdef YY_USE_CONST @@ -140,7 +160,15 @@ typedef unsigned int flex_uint32_t; /* Size of default input buffer. */ #ifndef YY_BUF_SIZE +#ifdef __ia64__ +/* On IA-64, the buffer size is 16k, not 8k. + * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case. + * Ditto for the __ia64__ case accordingly. + */ +#define YY_BUF_SIZE 32768 +#else #define YY_BUF_SIZE 16384 +#endif /* __ia64__ */ #endif /* The state buf must be large enough to hold one state per character in the main buffer. @@ -191,14 +219,9 @@ extern FILE *xbt_graph_parse_in, *xbt_graph_parse_out; #define unput(c) yyunput( c, (yytext_ptr) ) -/* The following is because we cannot portably get our hands on size_t - * (without autoconf's help, which isn't available because we want - * flex-generated scanners to compile on their own). - */ - #ifndef YY_TYPEDEF_YY_SIZE_T #define YY_TYPEDEF_YY_SIZE_T -typedef unsigned int yy_size_t; +typedef size_t yy_size_t; #endif #ifndef YY_STRUCT_YY_BUFFER_STATE @@ -349,7 +372,7 @@ void xbt_graph_parse_free (void * ); /* Begin user sect3 */ -#define xbt_graph_parse_wrap() 1 +#define xbt_graph_parse_wrap(n) 1 #define YY_SKIP_YYWRAP typedef unsigned char YY_CHAR; @@ -380,8 +403,8 @@ static void yy_fatal_error (yyconst char msg[] ); *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; -#define YY_NUM_RULES 81 -#define YY_END_OF_BUFFER 82 +#define YY_NUM_RULES 92 +#define YY_END_OF_BUFFER 93 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -389,64 +412,70 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[507] = +static yyconst flex_int16_t yy_accept[564] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 82, 80, 17, 10, 10, 17, 17, 60, 10, 60, - 5, 6, 5, 8, 9, 8, 76, 68, 69, 77, - 74, 77, 75, 79, 68, 69, 79, 80, 21, 10, - 21, 21, 21, 19, 25, 10, 25, 25, 80, 80, - 25, 33, 10, 33, 33, 33, 31, 33, 33, 37, - - 10, 37, 55, 10, 55, 55, 55, 53, 55, 55, - 55, 55, 55, 59, 10, 59, 77, 76, 10, 0, - 2, 2, 0, 4, 7, 71, 70, 0, 0, 0, - 0, 0, 0, 0, 20, 22, 0, 0, 0, 32, - 34, 34, 34, 0, 54, 56, 56, 56, 56, 56, - 56, 56, 0, 0, 0, 0, 0, 0, 0, 3, - 0, 0, 0, 0, 0, 0, 0, 78, 0, 0, - 0, 0, 0, 34, 34, 0, 0, 56, 56, 56, - 56, 56, 56, 0, 0, 0, 73, 0, 16, 1, - 0, 0, 66, 0, 0, 0, 63, 62, 0, 0, - - 0, 0, 24, 0, 0, 0, 34, 34, 0, 0, - 36, 0, 56, 56, 56, 56, 56, 56, 0, 0, - 58, 0, 0, 0, 0, 67, 61, 0, 0, 0, - 0, 38, 26, 34, 0, 0, 0, 56, 56, 56, - 0, 0, 56, 56, 0, 0, 0, 0, 0, 12, - 0, 64, 65, 18, 0, 38, 26, 0, 0, 0, - 30, 29, 0, 56, 0, 0, 56, 0, 42, 41, - 56, 56, 0, 0, 0, 0, 0, 11, 18, 0, - 0, 28, 27, 0, 35, 56, 0, 40, 39, 0, - 0, 0, 0, 0, 0, 0, 57, 0, 0, 0, - - 0, 0, 23, 56, 0, 48, 47, 0, 44, 43, - 0, 46, 45, 0, 0, 0, 0, 56, 72, 0, - 0, 0, 56, 0, 0, 0, 0, 0, 0, 0, + 93, 91, 17, 10, 10, 17, 17, 71, 10, 71, + 5, 6, 5, 8, 9, 8, 87, 79, 80, 88, + 85, 88, 86, 90, 79, 80, 90, 91, 26, 10, + 26, 26, 26, 24, 26, 30, 10, 30, 30, 91, + 91, 30, 91, 45, 10, 45, 45, 45, 43, 45, + + 45, 45, 45, 49, 10, 49, 91, 66, 10, 66, + 66, 66, 64, 66, 66, 66, 66, 66, 70, 10, + 70, 88, 87, 10, 0, 2, 2, 0, 4, 7, + 82, 81, 0, 0, 0, 0, 0, 0, 0, 25, + 27, 27, 0, 0, 0, 0, 0, 0, 44, 46, + 46, 46, 46, 46, 0, 65, 67, 67, 67, 67, + 67, 67, 67, 0, 0, 0, 0, 0, 0, 0, + 3, 0, 0, 0, 0, 0, 0, 0, 89, 0, + 27, 0, 0, 0, 0, 0, 0, 0, 46, 46, + 46, 46, 0, 0, 67, 67, 67, 67, 67, 67, + + 0, 0, 0, 84, 0, 16, 1, 0, 0, 77, + 0, 0, 0, 74, 73, 0, 0, 27, 0, 0, + 29, 0, 0, 0, 0, 0, 0, 46, 46, 46, + 46, 0, 0, 48, 0, 67, 67, 67, 67, 67, + 67, 0, 0, 69, 0, 0, 0, 0, 78, 72, + 0, 0, 0, 27, 0, 51, 0, 32, 31, 50, + 0, 0, 46, 0, 0, 46, 0, 0, 0, 67, + 67, 0, 0, 67, 67, 0, 0, 0, 0, 0, + 12, 0, 75, 76, 19, 27, 0, 51, 18, 32, + 31, 50, 0, 38, 37, 0, 0, 0, 36, 35, + + 46, 0, 0, 63, 62, 0, 0, 67, 0, 55, + 54, 67, 67, 0, 0, 0, 0, 0, 11, 19, + 27, 0, 18, 0, 34, 33, 46, 0, 47, 0, + 53, 52, 0, 0, 0, 0, 0, 0, 0, 68, + 0, 0, 0, 0, 27, 0, 28, 46, 0, 61, + 60, 0, 57, 56, 0, 59, 58, 0, 0, 0, + 0, 27, 46, 83, 0, 0, 0, 27, 46, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 40, 39, 0, 42, 41, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 12, 0, 12, 0, - 0, 50, 0, 49, 0, 0, 0, 0, 0, 0, - - 0, 52, 51, 0, 0, 0, 0, 0, 0, 0, - 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 12, 0, 12, 0, 0, 21, 0, + 20, 0, 0, 0, 0, 0, 0, 0, 23, 22, + 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, - - 0, 0, 14, 0, 15, 0 + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 13, 0, 0, 14, + 0, 15, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -460,11 +489,11 @@ static yyconst flex_int32_t yy_ec[256] = 17, 18, 19, 1, 20, 21, 22, 23, 24, 21, 14, 14, 14, 14, 14, 14, 25, 14, 26, 27, 14, 14, 28, 29, 14, 14, 14, 14, 30, 14, - 31, 1, 32, 1, 14, 1, 33, 34, 35, 36, + 31, 1, 32, 1, 33, 1, 34, 35, 36, 37, - 37, 38, 39, 40, 41, 14, 14, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 14, 53, - 14, 14, 1, 1, 1, 1, 1, 1, 1, 1, + 38, 39, 40, 41, 42, 14, 14, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 14, 54, + 55, 14, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -481,490 +510,534 @@ static yyconst flex_int32_t yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst flex_int32_t yy_meta[54] = +static yyconst flex_int32_t yy_meta[56] = { 0, 1, 2, 2, 2, 1, 1, 1, 1, 1, 3, 3, 1, 4, 5, 1, 1, 1, 6, 1, 7, 7, 7, 7, 7, 5, 5, 5, 5, 5, 5, - 1, 1, 7, 7, 7, 7, 7, 7, 5, 5, + 1, 1, 5, 7, 7, 7, 7, 7, 7, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5 + 5, 5, 5, 5, 5 } ; -static yyconst flex_int16_t yy_base[537] = +static yyconst flex_int16_t yy_base[594] = { 0, 0, 0, 0, 3, 6, 9, 24, 27, 11, 14, 15, 17, 29, 38, 45, 52, 59, 61, 67, 70, - 93, 125, 73, 76, 143, 146, 149, 164, 167, 170, - 173, 188, 191, 194, 197, 212, 215, 218, 234, 0, - 286, 289, 292, 295, 311, 0, 363, 366, 368, 370, - 1447, 1448, 1448, 111, 114, 47, 62, 1448, 117, 159, - 1448, 1448, 1436, 1448, 1448, 1427, 1448, 1440, 1440, 368, - 1448, 1448, 1448, 1448, 1438, 1438, 1408, 372, 1448, 221, - 1421, 0, 183, 1448, 1448, 385, 380, 385, 375, 376, - 393, 1448, 423, 1420, 0, 207, 1448, 1404, 1403, 1448, - - 426, 404, 1448, 429, 1417, 0, 401, 1448, 1385, 2, - 1400, 1387, 1398, 1448, 432, 432, 1425, 1397, 436, 34, - 1375, 1448, 1417, 1408, 1448, 1448, 1448, 37, 39, 1375, - 1374, 1372, 1404, 1373, 1448, 0, 1381, 1383, 1373, 1448, - 0, 1383, 1373, 1371, 1448, 0, 1391, 1379, 1368, 1368, - 1359, 1361, 1371, 1376, 1388, 1387, 1394, 137, 1360, 1448, - 145, 0, 1356, 1356, 1385, 1384, 1353, 1448, 1364, 439, - 443, 1357, 1359, 1357, 1356, 446, 450, 1283, 1286, 1274, - 1273, 1259, 1265, 456, 463, 1275, 1448, 1274, 1448, 1448, - 66, 1245, 1448, 1190, 1189, 1154, 1448, 1448, 1152, 1155, - - 467, 474, 1448, 480, 1163, 1162, 1156, 484, 500, 503, - 1448, 506, 1149, 1154, 1145, 512, 1159, 1156, 523, 528, - 1448, 531, 1165, 385, 534, 1448, 1448, 1172, 1170, 1144, - 541, 552, 558, 561, 564, 570, 580, 1145, 586, 1141, - 589, 593, 1142, 1128, 605, 1156, 378, 1139, 608, 1448, - 1137, 1448, 1448, 611, 616, 625, 628, 633, 637, 645, - 1448, 1448, 655, 1117, 659, 662, 675, 678, 1448, 1448, - 686, 691, 694, 1110, 282, 143, 166, 1448, 697, 702, - 707, 1448, 1448, 715, 1448, 1085, 719, 1448, 1448, 727, - 732, 743, 746, 754, 759, 770, 1448, 1114, 161, 104, - - 163, 773, 1448, 1024, 776, 1448, 1448, 790, 1448, 1448, - 798, 1448, 1448, 997, 806, 164, 105, 930, 1448, 809, - 437, 188, 812, 444, 445, 187, 438, 472, 815, 819, - 457, 479, 504, 476, 533, 831, 473, 519, 190, 41, - 482, 532, 839, 928, 867, 872, 854, 847, 540, 856, - 859, 864, 869, 822, 803, 802, 738, 881, 886, 889, - 893, 910, 918, 936, 968, 658, 632, 551, 549, 586, - 928, 603, 986, 649, 292, 1004, 1036, 510, 522, 452, - 463, 365, 656, 557, 696, 285, 415, 530, 409, 931, - 301, 1448, 297, 1448, 576, 657, 654, 227, 211, 98, - - 960, 1448, 1448, 620, 697, 719, 5, 714, 735, 765, - 1448, 999, 780, 1028, 1054, 1062, 1067, 583, 652, 1075, - 748, 808, 706, 722, 813, 861, 733, 749, 709, 751, - 788, 821, 812, 837, 606, 607, 868, 885, 862, 880, - 746, 907, 911, 947, 941, 942, 785, 905, 978, 1007, - 961, 973, 777, 1006, 976, 980, 1016, 1032, 1044, 1056, - 1064, 1065, 1069, 1070, 1078, 1079, 1073, 1074, 1083, 1084, - 1081, 1082, 1092, 1095, 1086, 1087, 1091, 1096, 1101, 1102, - 1103, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 888, 1122, - 1114, 1115, 1009, 1127, 1159, 1136, 1140, 1162, 1165, 1448, - - 1168, 1171, 1448, 1188, 1448, 1448, 1206, 1213, 1220, 1227, - 1234, 1241, 1248, 1255, 1262, 1269, 1276, 1281, 1286, 1291, - 1298, 1301, 1304, 1307, 1314, 1318, 1324, 1330, 1336, 1343, - 1350, 1357, 1364, 1371, 1378, 1385 + 93, 135, 73, 76, 111, 114, 117, 153, 156, 159, + 176, 179, 182, 185, 200, 203, 206, 209, 225, 0, + 279, 282, 285, 288, 304, 0, 358, 361, 363, 365, + 1585, 1586, 1586, 380, 383, 47, 62, 1586, 386, 171, + 1586, 1586, 1574, 1586, 1586, 1565, 1586, 1578, 1578, 365, + 1586, 1586, 1586, 1586, 1576, 1576, 1546, 375, 1586, 389, + 1559, 0, 195, 1586, 1526, 1586, 398, 391, 399, 402, + 411, 414, 393, 1586, 420, 1557, 0, 401, 1586, 1540, + + 1539, 1538, 1525, 1586, 458, 422, 427, 1586, 464, 1552, + 0, 409, 1586, 1535, 1, 1534, 1521, 1532, 1586, 467, + 438, 1560, 1532, 470, 34, 1509, 1586, 1552, 1543, 1586, + 1586, 1586, 69, 40, 1509, 1508, 1506, 1539, 1507, 1586, + 0, 1532, 1514, 1516, 1503, 1505, 1504, 1512, 1586, 0, + 1497, 1512, 1502, 1495, 1499, 1586, 0, 1492, 1507, 1496, + 1496, 1487, 1489, 1499, 1505, 1517, 1516, 1523, 108, 1488, + 1586, 75, 0, 1484, 1484, 1514, 1513, 1481, 1586, 1492, + 1483, 473, 476, 1484, 1489, 1485, 1484, 1480, 1485, 1480, + 1479, 1474, 479, 482, 1481, 1476, 1473, 1474, 1462, 1470, + + 485, 502, 1487, 1586, 1490, 1586, 1586, 110, 1464, 1586, + 1491, 1490, 1454, 1586, 1586, 1452, 1455, 1452, 505, 508, + 1586, 511, 1462, 1452, 1460, 1459, 1458, 514, 1452, 530, + 1443, 533, 538, 1586, 546, 550, 1450, 1373, 555, 1387, + 1375, 558, 566, 1586, 571, 1387, 435, 575, 1586, 1586, + 1392, 1389, 1356, 1354, 578, 583, 1346, 588, 595, 598, + 601, 604, 612, 617, 624, 1263, 620, 633, 637, 645, + 1263, 649, 661, 1264, 1250, 653, 1280, 472, 1280, 657, + 1586, 1279, 1586, 1586, 670, 1260, 674, 677, 680, 683, + 686, 694, 697, 1586, 1586, 705, 710, 721, 1586, 1586, + + 1248, 729, 732, 1586, 1586, 740, 746, 756, 759, 1586, + 1586, 767, 772, 775, 1264, 32, 104, 153, 1586, 778, + 1226, 783, 788, 793, 1586, 1586, 1230, 801, 1586, 804, + 1586, 1586, 812, 818, 828, 831, 839, 844, 855, 1586, + 1234, 146, 179, 147, 1212, 858, 1586, 1215, 861, 1586, + 1586, 875, 1586, 1586, 883, 1586, 1586, 1111, 891, 175, + 445, 1066, 119, 1586, 894, 181, 89, 897, 900, 903, + 501, 360, 399, 480, 475, 919, 922, 938, 941, 949, + 954, 506, 509, 526, 599, 624, 965, 654, 678, 973, + 1586, 1586, 981, 1586, 1586, 417, 176, 594, 548, 989, + + 1058, 1003, 1016, 937, 992, 407, 995, 998, 1001, 1018, + 930, 918, 922, 910, 1026, 1029, 1035, 1038, 1055, 1063, + 1081, 1113, 819, 790, 733, 616, 710, 1073, 721, 1131, + 748, 284, 1149, 1181, 557, 565, 458, 449, 537, 770, + 676, 805, 278, 369, 285, 291, 1076, 293, 1586, 211, + 1586, 708, 693, 727, 162, 110, 76, 1105, 1586, 1586, + 352, 735, 794, 5, 199, 820, 474, 1586, 1144, 850, + 1173, 1199, 1207, 1212, 591, 754, 1220, 799, 831, 749, + 833, 834, 848, 862, 897, 684, 791, 900, 912, 895, + 901, 483, 808, 920, 930, 836, 890, 627, 892, 941, + + 962, 971, 993, 818, 873, 1005, 1007, 954, 960, 702, + 872, 963, 1008, 1027, 1092, 1017, 1025, 1151, 1160, 1031, + 1084, 1093, 1152, 1176, 1188, 1161, 1209, 1033, 1087, 1217, + 1221, 1123, 1155, 1088, 1108, 1215, 1216, 1120, 1156, 1218, + 1219, 1222, 1223, 1224, 1225, 1239, 1240, 1226, 1228, 1241, + 1242, 1264, 1258, 1260, 1268, 1277, 1586, 1281, 1285, 1586, + 1288, 1586, 1586, 1306, 1313, 1320, 1327, 1334, 1341, 1348, + 1355, 1362, 1369, 1376, 1381, 1386, 1391, 1398, 1401, 1404, + 1407, 1414, 1418, 1424, 1430, 1436, 1443, 1450, 1457, 1464, + 1471, 1478, 1485 + } ; -static yyconst flex_int16_t yy_def[537] = +static yyconst flex_int16_t yy_def[594] = { 0, - 507, 507, 508, 508, 508, 508, 509, 509, 510, 510, - 511, 511, 512, 512, 512, 512, 513, 513, 507, 507, - 514, 514, 515, 515, 515, 515, 507, 507, 515, 515, - 507, 507, 515, 515, 515, 515, 507, 507, 506, 39, - 516, 516, 507, 507, 506, 45, 517, 517, 512, 512, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 518, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 519, 506, 506, 519, 519, 506, - - 506, 506, 506, 506, 506, 520, 506, 506, 520, 520, - 520, 520, 520, 506, 506, 506, 506, 506, 506, 521, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 518, 522, 506, 506, 506, - 519, 519, 519, 523, 506, 520, 520, 520, 520, 520, - 520, 520, 524, 506, 506, 525, 506, 525, 506, 506, - 506, 526, 506, 506, 506, 506, 506, 506, 506, 527, - 527, 506, 506, 519, 519, 528, 528, 520, 520, 520, - 520, 520, 520, 529, 529, 506, 506, 525, 506, 506, - 525, 506, 506, 526, 506, 506, 506, 506, 506, 506, - - 506, 527, 506, 527, 506, 506, 519, 519, 506, 528, - 506, 528, 520, 520, 520, 520, 520, 520, 506, 529, - 506, 529, 506, 525, 530, 506, 506, 506, 506, 506, - 527, 506, 506, 519, 506, 506, 528, 520, 520, 520, - 506, 506, 520, 520, 529, 506, 525, 530, 530, 506, - 530, 506, 506, 506, 527, 506, 506, 506, 506, 506, - 506, 506, 528, 520, 506, 506, 520, 506, 506, 506, - 520, 520, 529, 506, 525, 530, 530, 506, 506, 527, - 506, 506, 506, 506, 506, 520, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 525, 530, - - 530, 506, 506, 520, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 525, 530, 530, 520, 506, 525, - 530, 530, 520, 525, 525, 525, 530, 530, 506, 506, - 525, 525, 525, 530, 530, 506, 506, 506, 525, 525, - 525, 530, 530, 506, 506, 506, 506, 525, 525, 525, - 530, 530, 530, 506, 506, 506, 506, 525, 525, 525, - 530, 530, 530, 531, 532, 506, 506, 506, 506, 525, - 525, 525, 530, 533, 534, 531, 532, 506, 506, 506, - 506, 525, 525, 525, 533, 530, 535, 534, 536, 530, - 506, 506, 506, 506, 525, 525, 525, 535, 506, 536, - - 530, 506, 506, 525, 525, 525, 506, 525, 525, 525, - 506, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 525, - 525, 525, 525, 525, 525, 525, 525, 525, 525, 506, - - 525, 525, 506, 525, 506, 0, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506 + 564, 564, 565, 565, 565, 565, 566, 566, 567, 567, + 568, 568, 569, 569, 569, 569, 570, 570, 564, 564, + 571, 571, 572, 572, 572, 572, 564, 564, 572, 572, + 564, 564, 572, 572, 572, 572, 564, 564, 563, 39, + 573, 573, 564, 564, 563, 45, 574, 574, 569, 569, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 575, 563, 563, 575, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 576, 563, 563, 576, + + 576, 576, 576, 563, 563, 563, 563, 563, 563, 563, + 577, 563, 563, 577, 577, 577, 577, 577, 563, 563, + 563, 563, 563, 563, 578, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 575, 575, 579, 563, 563, 563, 563, 563, 563, 576, + 576, 576, 576, 576, 580, 563, 577, 577, 577, 577, + 577, 577, 577, 581, 563, 563, 582, 563, 582, 563, + 563, 563, 583, 563, 563, 563, 563, 563, 563, 563, + 575, 584, 584, 563, 563, 563, 563, 563, 576, 576, + 576, 576, 585, 585, 577, 577, 577, 577, 577, 577, + + 586, 586, 563, 563, 582, 563, 563, 582, 563, 563, + 583, 563, 563, 563, 563, 563, 563, 575, 563, 584, + 563, 584, 563, 563, 563, 563, 563, 576, 576, 576, + 576, 563, 585, 563, 585, 577, 577, 577, 577, 577, + 577, 563, 586, 563, 586, 563, 582, 587, 563, 563, + 563, 563, 563, 575, 584, 563, 563, 563, 563, 563, + 563, 563, 576, 563, 563, 576, 585, 563, 563, 577, + 577, 563, 563, 577, 577, 586, 563, 582, 587, 587, + 563, 587, 563, 563, 563, 575, 584, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + + 576, 585, 563, 563, 563, 563, 563, 577, 563, 563, + 563, 577, 577, 586, 563, 582, 587, 587, 563, 563, + 575, 584, 563, 563, 563, 563, 576, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 582, 587, 587, 575, 563, 563, 576, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 582, 587, + 587, 575, 576, 563, 582, 587, 587, 575, 576, 576, + 582, 582, 582, 587, 587, 563, 563, 563, 563, 563, + 563, 582, 582, 582, 587, 587, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 582, 582, 582, 587, 587, + + 563, 563, 563, 563, 582, 582, 582, 587, 587, 587, + 563, 563, 563, 563, 582, 582, 582, 587, 587, 587, + 588, 589, 563, 563, 563, 563, 582, 582, 582, 587, + 590, 591, 588, 589, 563, 563, 563, 563, 582, 582, + 582, 590, 587, 592, 591, 593, 587, 563, 563, 563, + 563, 582, 582, 582, 592, 563, 593, 587, 563, 563, + 582, 582, 582, 563, 582, 582, 582, 563, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 582, 582, 582, 582, + 582, 582, 582, 582, 582, 582, 563, 582, 582, 563, + 582, 563, 0, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563 + } ; -static yyconst flex_int16_t yy_nxt[1502] = +static yyconst flex_int16_t yy_nxt[1642] = { 0, - 506, 54, 55, 54, 54, 55, 54, 54, 55, 54, - 54, 55, 54, 62, 506, 56, 62, 65, 56, 65, - 63, 57, 411, 63, 57, 59, 55, 59, 59, 55, - 59, 68, 69, 66, 148, 66, 70, 71, 149, 60, - 68, 69, 60, 157, 72, 70, 71, 68, 69, 161, - 73, 120, 70, 72, 68, 69, 158, 73, 189, 70, - 72, 75, 76, 75, 76, 121, 120, 72, 55, 55, - 55, 55, 55, 55, 86, 55, 86, 86, 55, 86, - 122, 163, 78, 189, 164, 78, 349, 224, 87, 162, - 77, 87, 77, 79, 80, 55, 80, 79, 79, 79, - - 79, 79, 79, 79, 81, 79, 399, 79, 83, 79, - 84, 79, 119, 119, 119, 119, 119, 119, 119, 119, - 119, 250, 250, 79, 79, 79, 80, 55, 80, 79, - 79, 79, 79, 79, 79, 79, 81, 79, 316, 79, - 83, 79, 84, 79, 86, 55, 86, 86, 55, 86, - 55, 55, 55, 322, 189, 79, 79, 161, 88, 193, - 250, 88, 191, 123, 89, 55, 55, 55, 86, 55, - 86, 86, 55, 86, 55, 55, 55, 122, 189, 89, - 250, 250, 87, 250, 315, 87, 300, 123, 90, 55, - 55, 55, 86, 55, 86, 86, 55, 86, 86, 55, - - 86, 122, 301, 90, 189, 250, 88, 189, 321, 88, - 317, 123, 91, 86, 55, 86, 55, 55, 55, 55, - 55, 55, 119, 119, 119, 122, 348, 91, 328, 407, - 89, 333, 399, 89, 92, 93, 55, 93, 92, 92, - 92, 92, 92, 92, 92, 94, 92, 95, 92, 96, - 92, 97, 92, 95, 95, 95, 95, 95, 95, 95, - 95, 95, 95, 95, 92, 92, 95, 95, 95, 95, - 95, 95, 95, 95, 95, 98, 95, 99, 95, 95, - 95, 95, 95, 95, 95, 95, 95, 101, 55, 101, - 101, 55, 101, 55, 55, 55, 55, 55, 55, 189, - - 386, 102, 250, 251, 102, 403, 402, 90, 299, 389, - 90, 103, 104, 55, 104, 103, 103, 103, 103, 103, - 103, 103, 105, 103, 106, 103, 107, 103, 108, 103, - 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, - 106, 103, 103, 106, 106, 106, 106, 106, 106, 106, - 106, 109, 110, 106, 111, 106, 106, 106, 106, 112, - 113, 106, 106, 106, 115, 55, 115, 115, 55, 115, - 68, 69, 68, 69, 128, 70, 123, 70, 116, 123, - 123, 116, 189, 117, 123, 117, 119, 119, 119, 123, - 122, 137, 395, 122, 122, 189, 137, 123, 122, 118, - - 129, 118, 189, 122, 137, 123, 130, 275, 123, 131, - 134, 122, 138, 247, 132, 144, 138, 399, 139, 122, - 399, 138, 122, 139, 119, 119, 119, 119, 119, 119, - 119, 119, 119, 119, 119, 119, 123, 119, 119, 119, - 201, 201, 201, 153, 201, 201, 201, 209, 209, 209, - 122, 209, 209, 209, 250, 250, 203, 219, 219, 219, - 203, 189, 189, 211, 219, 219, 219, 211, 201, 201, - 201, 394, 327, 221, 189, 201, 201, 201, 334, 331, - 221, 201, 201, 201, 203, 235, 235, 235, 393, 250, - 204, 203, 332, 250, 212, 339, 189, 203, 222, 189, - - 236, 209, 209, 209, 209, 209, 209, 209, 209, 209, - 344, 340, 231, 241, 241, 241, 335, 211, 350, 342, - 211, 189, 345, 211, 219, 219, 219, 392, 242, 219, - 219, 219, 219, 219, 219, 249, 249, 249, 386, 341, - 221, 237, 201, 201, 201, 221, 391, 389, 221, 250, - 250, 250, 251, 256, 256, 256, 346, 189, 203, 257, - 257, 257, 258, 258, 258, 235, 235, 235, 347, 245, - 351, 260, 260, 260, 189, 261, 343, 259, 262, 359, - 236, 209, 209, 209, 397, 381, 255, 265, 265, 265, - 241, 241, 241, 189, 268, 268, 268, 211, 269, 380, - - 189, 270, 266, 189, 404, 242, 219, 219, 219, 249, - 249, 249, 279, 279, 279, 382, 263, 201, 201, 201, - 189, 423, 221, 189, 189, 250, 256, 256, 256, 257, - 257, 257, 384, 203, 258, 258, 258, 189, 281, 281, - 281, 273, 282, 408, 276, 283, 260, 260, 260, 259, - 261, 441, 442, 262, 386, 280, 284, 284, 284, 277, - 265, 265, 265, 287, 287, 287, 387, 288, 379, 189, - 289, 189, 285, 189, 189, 266, 290, 290, 290, 268, - 268, 268, 406, 269, 405, 396, 270, 292, 292, 292, - 424, 291, 294, 294, 294, 296, 296, 296, 279, 279, - - 279, 386, 293, 302, 302, 302, 378, 295, 281, 281, - 281, 297, 282, 387, 189, 283, 284, 284, 284, 303, - 287, 287, 287, 189, 288, 409, 189, 289, 290, 290, - 290, 189, 285, 305, 305, 305, 189, 306, 412, 189, - 307, 435, 410, 291, 292, 292, 292, 308, 308, 308, - 189, 309, 189, 429, 310, 294, 294, 294, 413, 293, - 311, 311, 311, 189, 312, 189, 189, 313, 189, 430, - 295, 296, 296, 296, 302, 302, 302, 305, 305, 305, - 433, 306, 189, 436, 307, 447, 427, 297, 369, 414, - 303, 308, 308, 308, 189, 309, 434, 189, 310, 311, - - 311, 311, 189, 312, 416, 189, 313, 320, 320, 320, - 320, 320, 320, 329, 329, 329, 329, 329, 329, 459, - 336, 336, 336, 189, 337, 189, 189, 338, 330, 189, - 189, 330, 336, 336, 336, 437, 337, 453, 189, 338, - 352, 352, 352, 368, 439, 324, 428, 325, 358, 358, - 358, 431, 326, 367, 189, 353, 250, 360, 360, 360, - 361, 361, 361, 366, 189, 352, 352, 352, 438, 440, - 363, 363, 363, 189, 364, 362, 250, 365, 189, 189, - 353, 250, 358, 358, 358, 189, 250, 371, 371, 371, - 360, 360, 360, 495, 361, 361, 361, 189, 189, 432, - - 443, 357, 189, 189, 356, 189, 189, 445, 370, 362, - 250, 373, 373, 373, 355, 374, 372, 444, 375, 363, - 363, 363, 189, 364, 189, 446, 365, 250, 189, 371, - 371, 371, 401, 401, 401, 250, 248, 248, 248, 248, - 248, 248, 248, 248, 248, 189, 448, 248, 250, 251, - 248, 248, 248, 250, 248, 383, 449, 454, 189, 189, - 354, 401, 401, 401, 189, 323, 248, 248, 248, 248, - 248, 248, 248, 248, 248, 248, 248, 250, 189, 248, - 451, 452, 248, 248, 248, 250, 248, 373, 373, 373, - 189, 374, 450, 189, 375, 189, 276, 189, 248, 248, - - 415, 415, 415, 250, 248, 248, 248, 248, 248, 390, - 248, 248, 248, 457, 498, 248, 189, 455, 248, 248, - 248, 250, 248, 189, 189, 458, 189, 319, 461, 417, - 417, 417, 462, 189, 248, 248, 248, 248, 248, 248, - 248, 248, 248, 248, 390, 189, 456, 248, 460, 189, - 248, 248, 248, 250, 248, 415, 415, 415, 463, 418, - 318, 189, 419, 420, 420, 420, 248, 248, 417, 417, - 417, 189, 421, 189, 464, 422, 420, 420, 420, 189, - 425, 189, 189, 426, 189, 465, 189, 189, 471, 472, - 189, 189, 189, 475, 476, 189, 189, 466, 189, 189, - - 189, 189, 479, 189, 189, 480, 467, 468, 189, 189, - 469, 470, 189, 189, 473, 474, 477, 478, 189, 189, - 189, 481, 482, 189, 189, 189, 189, 189, 189, 189, - 495, 189, 189, 314, 304, 498, 485, 486, 298, 189, - 483, 501, 489, 490, 189, 484, 493, 494, 501, 496, - 497, 286, 487, 189, 278, 488, 250, 189, 491, 492, - 499, 499, 499, 502, 502, 502, 499, 499, 499, 504, - 504, 504, 502, 502, 502, 274, 500, 272, 271, 503, - 267, 264, 500, 254, 253, 505, 252, 246, 503, 504, - 504, 504, 244, 243, 240, 239, 238, 234, 233, 232, - - 230, 229, 228, 227, 226, 505, 52, 52, 52, 52, + 563, 54, 55, 54, 54, 55, 54, 54, 55, 54, + 54, 55, 54, 62, 563, 56, 62, 65, 56, 65, + 63, 57, 468, 63, 57, 59, 55, 59, 59, 55, + 59, 68, 69, 66, 159, 66, 70, 71, 160, 60, + 68, 69, 60, 168, 72, 70, 71, 68, 69, 206, + 73, 125, 70, 72, 68, 69, 169, 73, 342, 70, + 72, 75, 76, 75, 76, 126, 125, 72, 55, 55, + 55, 55, 55, 55, 87, 55, 87, 87, 55, 87, + 127, 172, 78, 174, 456, 78, 175, 172, 88, 210, + 77, 88, 77, 79, 80, 55, 80, 79, 79, 79, + + 79, 79, 79, 79, 81, 79, 281, 79, 83, 79, + 84, 79, 87, 55, 87, 87, 55, 87, 55, 55, + 55, 281, 173, 79, 79, 206, 89, 206, 464, 89, + 375, 247, 90, 208, 85, 79, 80, 55, 80, 79, + 79, 79, 79, 79, 79, 79, 81, 79, 343, 79, + 83, 79, 84, 79, 55, 55, 55, 87, 55, 87, + 87, 55, 87, 206, 281, 79, 79, 456, 90, 359, + 281, 88, 369, 370, 88, 128, 85, 55, 55, 55, + 55, 55, 55, 87, 55, 87, 87, 55, 87, 127, + 344, 91, 281, 206, 91, 361, 281, 89, 281, 128, + + 89, 87, 55, 87, 87, 55, 87, 55, 55, 55, + 55, 55, 55, 127, 360, 92, 206, 374, 92, 460, + 366, 93, 406, 469, 93, 94, 95, 55, 95, 94, + 94, 94, 94, 94, 94, 94, 96, 94, 97, 94, + 98, 94, 99, 94, 97, 97, 97, 97, 97, 97, + 97, 97, 97, 97, 97, 94, 94, 97, 97, 97, + 97, 100, 97, 97, 97, 97, 97, 101, 97, 102, + 97, 103, 97, 97, 97, 97, 97, 97, 97, 97, + 105, 55, 105, 105, 55, 105, 55, 55, 55, 55, + 55, 55, 443, 443, 106, 281, 282, 106, 459, 456, + + 107, 446, 446, 107, 108, 109, 55, 109, 108, 108, + 108, 108, 108, 108, 108, 110, 108, 111, 108, 112, + 108, 113, 108, 111, 111, 111, 111, 111, 111, 111, + 111, 111, 111, 111, 108, 108, 111, 111, 111, 111, + 114, 111, 111, 111, 111, 111, 115, 111, 116, 111, + 111, 111, 111, 117, 118, 111, 111, 111, 111, 120, + 55, 120, 120, 55, 120, 68, 69, 68, 69, 206, + 70, 133, 70, 121, 456, 465, 121, 206, 122, 128, + 122, 124, 124, 124, 124, 124, 124, 124, 124, 124, + 124, 124, 124, 127, 123, 128, 123, 128, 134, 124, + + 124, 124, 143, 128, 135, 128, 128, 136, 383, 127, + 143, 127, 137, 128, 139, 128, 206, 127, 128, 127, + 127, 124, 124, 124, 206, 143, 128, 127, 144, 127, + 145, 128, 127, 155, 206, 146, 144, 146, 145, 148, + 127, 145, 128, 147, 384, 127, 146, 416, 144, 164, + 145, 148, 206, 145, 405, 147, 127, 451, 147, 124, + 124, 124, 281, 278, 144, 124, 124, 124, 124, 124, + 124, 124, 124, 124, 219, 219, 219, 219, 219, 219, + 232, 232, 232, 232, 232, 232, 242, 242, 242, 206, + 221, 206, 281, 221, 367, 450, 234, 281, 471, 234, + + 206, 316, 244, 242, 242, 242, 219, 219, 219, 219, + 219, 219, 219, 219, 219, 261, 261, 261, 206, 244, + 386, 385, 221, 206, 222, 221, 206, 235, 221, 498, + 262, 264, 264, 264, 232, 232, 232, 382, 245, 232, + 232, 232, 397, 206, 255, 396, 265, 232, 232, 232, + 234, 268, 268, 268, 206, 234, 272, 272, 272, 242, + 242, 242, 398, 234, 452, 281, 269, 242, 242, 242, + 449, 273, 242, 242, 242, 244, 280, 280, 280, 219, + 219, 219, 267, 244, 288, 288, 288, 408, 244, 290, + 290, 290, 281, 282, 448, 221, 291, 291, 291, 292, + + 292, 292, 261, 261, 261, 293, 293, 293, 206, 294, + 276, 206, 295, 296, 296, 296, 281, 262, 264, 264, + 264, 232, 232, 232, 287, 298, 298, 298, 297, 299, + 480, 407, 300, 265, 268, 268, 268, 234, 303, 303, + 303, 281, 304, 399, 206, 305, 306, 306, 306, 269, + 272, 272, 272, 438, 242, 242, 242, 302, 280, 280, + 280, 307, 309, 309, 309, 273, 310, 504, 400, 311, + 244, 320, 320, 320, 281, 219, 219, 219, 288, 288, + 288, 323, 323, 323, 290, 290, 290, 291, 291, 291, + 314, 221, 401, 206, 317, 292, 292, 292, 293, 293, + + 293, 206, 294, 454, 402, 295, 296, 296, 296, 318, + 206, 324, 324, 324, 322, 325, 403, 492, 326, 206, + 462, 297, 298, 298, 298, 206, 299, 206, 404, 300, + 328, 328, 328, 303, 303, 303, 461, 304, 206, 439, + 305, 306, 306, 306, 206, 516, 329, 330, 330, 330, + 441, 331, 206, 443, 332, 463, 307, 333, 333, 333, + 309, 309, 309, 466, 310, 444, 206, 311, 335, 335, + 335, 206, 334, 337, 337, 337, 339, 339, 339, 320, + 320, 320, 437, 336, 346, 346, 346, 206, 338, 323, + 323, 323, 340, 481, 324, 324, 324, 486, 325, 453, + + 347, 326, 328, 328, 328, 330, 330, 330, 206, 331, + 443, 206, 332, 333, 333, 333, 206, 467, 329, 349, + 349, 349, 444, 350, 493, 206, 351, 436, 334, 335, + 335, 335, 352, 352, 352, 206, 353, 206, 484, 354, + 337, 337, 337, 470, 336, 355, 355, 355, 206, 356, + 206, 206, 357, 206, 499, 338, 339, 339, 339, 346, + 346, 346, 349, 349, 349, 206, 350, 206, 435, 351, + 485, 510, 340, 488, 473, 347, 352, 352, 352, 206, + 353, 487, 502, 354, 355, 355, 355, 489, 356, 206, + 206, 357, 365, 365, 365, 365, 365, 365, 376, 376, + + 376, 378, 378, 378, 380, 380, 380, 206, 206, 206, + 490, 206, 206, 377, 206, 517, 379, 206, 206, 381, + 376, 376, 376, 387, 387, 387, 511, 388, 496, 206, + 389, 371, 505, 372, 497, 377, 503, 206, 373, 378, + 378, 378, 390, 390, 390, 491, 391, 206, 494, 392, + 380, 380, 380, 500, 379, 393, 393, 393, 206, 394, + 495, 426, 395, 501, 425, 381, 387, 387, 387, 424, + 388, 206, 423, 389, 390, 390, 390, 206, 391, 206, + 206, 392, 393, 393, 393, 414, 394, 506, 206, 395, + 409, 409, 409, 415, 415, 415, 417, 417, 417, 418, + + 418, 418, 409, 409, 409, 410, 281, 514, 507, 206, + 206, 508, 206, 515, 419, 281, 518, 410, 281, 420, + 420, 420, 206, 421, 206, 206, 422, 415, 415, 415, + 428, 428, 428, 509, 206, 281, 417, 417, 417, 418, + 418, 418, 206, 206, 206, 512, 206, 513, 206, 413, + 206, 412, 206, 427, 419, 281, 430, 430, 430, 522, + 431, 519, 429, 432, 420, 420, 420, 523, 421, 534, + 520, 422, 281, 526, 428, 428, 428, 458, 458, 458, + 281, 279, 279, 279, 279, 279, 279, 279, 279, 279, + 206, 411, 279, 281, 282, 279, 279, 279, 281, 279, + + 440, 206, 368, 528, 206, 206, 458, 458, 458, 206, + 206, 279, 279, 279, 279, 279, 279, 279, 279, 279, + 279, 279, 281, 535, 279, 206, 527, 279, 279, 279, + 281, 279, 430, 430, 430, 521, 431, 206, 540, 432, + 206, 364, 317, 279, 279, 472, 472, 472, 281, 279, + 279, 279, 279, 279, 447, 279, 279, 279, 541, 538, + 279, 206, 529, 279, 279, 279, 281, 279, 206, 206, + 544, 532, 206, 206, 474, 474, 474, 206, 206, 279, + 279, 279, 279, 279, 279, 279, 279, 279, 279, 447, + 206, 539, 279, 206, 524, 279, 279, 279, 281, 279, + + 472, 472, 472, 525, 475, 206, 545, 476, 477, 477, + 477, 279, 279, 474, 474, 474, 206, 478, 530, 533, + 479, 477, 477, 477, 206, 482, 206, 536, 483, 206, + 531, 537, 206, 206, 206, 206, 206, 206, 206, 206, + 206, 206, 206, 206, 552, 206, 555, 363, 552, 362, + 555, 542, 543, 358, 546, 547, 206, 206, 206, 206, + 550, 551, 553, 558, 554, 556, 556, 556, 558, 559, + 559, 559, 548, 549, 348, 206, 345, 206, 556, 556, + 556, 557, 561, 561, 561, 560, 559, 559, 559, 561, + 561, 561, 341, 327, 557, 321, 319, 281, 562, 315, + + 313, 312, 560, 308, 301, 562, 52, 52, 52, 52, 52, 52, 52, 53, 53, 53, 53, 53, 53, 53, 58, 58, 58, 58, 58, 58, 58, 61, 61, 61, 61, 61, 61, 61, 64, 64, 64, 64, 64, 64, 64, 67, 67, 67, 67, 67, 67, 67, 74, 74, 74, 74, 74, 74, 74, 82, 82, 82, 82, 82, - 82, 82, 85, 85, 85, 85, 85, 85, 85, 100, - 100, 100, 100, 100, 100, 100, 114, 114, 114, 114, - 114, 114, 114, 136, 136, 136, 225, 136, 141, 141, - 141, 189, 141, 146, 146, 146, 223, 146, 156, 156, - - 156, 156, 156, 218, 156, 170, 217, 170, 176, 216, - 176, 184, 215, 184, 188, 188, 188, 188, 188, 188, - 188, 194, 214, 213, 194, 202, 202, 202, 202, 202, - 202, 210, 210, 210, 210, 210, 210, 220, 220, 220, - 220, 220, 220, 248, 248, 248, 248, 248, 248, 248, - 376, 376, 376, 376, 376, 376, 376, 377, 377, 377, - 377, 377, 377, 377, 385, 385, 385, 385, 385, 385, - 385, 388, 388, 388, 388, 388, 388, 388, 398, 398, - 398, 398, 398, 398, 398, 400, 400, 400, 400, 400, - 400, 400, 208, 207, 206, 205, 200, 199, 198, 197, - - 196, 195, 192, 190, 189, 187, 186, 185, 183, 182, - 181, 180, 179, 178, 177, 175, 174, 173, 172, 171, - 169, 168, 167, 166, 165, 160, 157, 159, 155, 154, - 152, 151, 150, 147, 145, 143, 142, 140, 135, 133, - 127, 126, 127, 126, 125, 124, 506, 51, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - - 506 + 82, 82, 86, 86, 86, 86, 86, 86, 86, 104, + 104, 104, 104, 104, 104, 104, 119, 119, 119, 119, + 119, 119, 119, 141, 141, 141, 289, 141, 150, 150, + 150, 286, 150, 157, 157, 157, 285, 157, 167, 167, + + 167, 167, 167, 284, 167, 182, 283, 182, 193, 277, + 193, 201, 275, 201, 205, 205, 205, 205, 205, 205, + 205, 211, 274, 271, 211, 220, 220, 220, 220, 220, + 220, 233, 233, 233, 233, 233, 233, 243, 243, 243, + 243, 243, 243, 279, 279, 279, 279, 279, 279, 279, + 433, 433, 433, 433, 433, 433, 433, 434, 434, 434, + 434, 434, 434, 434, 442, 442, 442, 442, 442, 442, + 442, 445, 445, 445, 445, 445, 445, 445, 455, 455, + 455, 455, 455, 455, 455, 457, 457, 457, 457, 457, + 457, 457, 270, 266, 263, 260, 259, 258, 257, 256, + + 254, 253, 252, 251, 250, 249, 248, 206, 246, 241, + 240, 239, 238, 237, 236, 231, 230, 229, 228, 227, + 226, 225, 224, 223, 218, 217, 216, 215, 214, 213, + 212, 209, 207, 206, 204, 203, 202, 200, 199, 198, + 197, 196, 195, 194, 192, 191, 190, 189, 188, 187, + 186, 185, 184, 183, 181, 180, 179, 178, 177, 176, + 171, 168, 170, 166, 165, 163, 162, 161, 158, 156, + 154, 153, 152, 151, 149, 142, 140, 138, 132, 131, + 132, 131, 130, 129, 563, 51, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563 } ; -static yyconst flex_int16_t yy_chk[1502] = +static yyconst flex_int16_t yy_chk[1642] = { 0, 0, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6, 9, 0, 3, 10, 11, 4, 12, - 9, 5, 407, 10, 6, 7, 7, 7, 8, 8, - 8, 13, 13, 11, 110, 12, 13, 13, 110, 7, - 14, 14, 8, 120, 13, 14, 14, 15, 15, 128, - 15, 56, 15, 14, 16, 16, 120, 16, 340, 16, + 9, 5, 464, 10, 6, 7, 7, 7, 8, 8, + 8, 13, 13, 11, 115, 12, 13, 13, 115, 7, + 14, 14, 8, 125, 13, 14, 14, 15, 15, 316, + 15, 56, 15, 14, 16, 16, 125, 16, 316, 16, 15, 17, 17, 18, 18, 56, 57, 16, 19, 19, 19, 20, 20, 20, 23, 23, 23, 24, 24, 24, - 57, 129, 19, 191, 129, 20, 340, 191, 23, 128, + 57, 133, 19, 134, 457, 20, 134, 172, 23, 172, 17, 24, 18, 21, 21, 21, 21, 21, 21, 21, - 21, 21, 21, 21, 21, 21, 400, 21, 21, 21, - 21, 21, 54, 54, 54, 55, 55, 55, 59, 59, - 59, 300, 317, 21, 21, 22, 22, 22, 22, 22, - 22, 22, 22, 22, 22, 22, 22, 22, 300, 22, - 22, 22, 22, 22, 25, 25, 25, 26, 26, 26, - 27, 27, 27, 317, 158, 22, 22, 161, 25, 161, - 276, 26, 158, 60, 27, 28, 28, 28, 29, 29, - 29, 30, 30, 30, 31, 31, 31, 60, 299, 28, - 301, 316, 29, 277, 299, 30, 276, 83, 31, 32, - 32, 32, 33, 33, 33, 34, 34, 34, 35, 35, - - 35, 83, 277, 32, 326, 322, 33, 339, 316, 34, - 301, 96, 35, 36, 36, 36, 37, 37, 37, 38, - 38, 38, 80, 80, 80, 96, 339, 36, 322, 399, - 37, 326, 398, 38, 39, 39, 39, 39, 39, 39, + 21, 21, 21, 21, 21, 21, 367, 21, 21, 21, + 21, 21, 25, 25, 25, 26, 26, 26, 27, 27, + 27, 317, 133, 21, 21, 169, 25, 208, 456, 26, + 367, 208, 27, 169, 21, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 317, 22, + 22, 22, 22, 22, 28, 28, 28, 29, 29, 29, + 30, 30, 30, 342, 344, 22, 22, 455, 28, 342, + 318, 29, 363, 363, 30, 60, 22, 31, 31, 31, + 32, 32, 32, 33, 33, 33, 34, 34, 34, 60, + 318, 31, 360, 397, 32, 344, 343, 33, 366, 83, + + 34, 35, 35, 35, 36, 36, 36, 37, 37, 37, + 38, 38, 38, 83, 343, 35, 465, 366, 36, 450, + 360, 37, 397, 465, 38, 39, 39, 39, 39, 39, + 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, 39, - 39, 39, 39, 39, 39, 39, 39, 41, 41, 41, - 42, 42, 42, 43, 43, 43, 44, 44, 44, 275, + 41, 41, 41, 42, 42, 42, 43, 43, 43, 44, + 44, 44, 432, 445, 41, 443, 443, 42, 448, 446, - 375, 41, 386, 386, 42, 393, 391, 43, 275, 375, - 44, 45, 45, 45, 45, 45, 45, 45, 45, 45, + 43, 432, 445, 44, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, 45, - 45, 45, 45, 45, 47, 47, 47, 48, 48, 48, - 49, 49, 50, 50, 70, 49, 78, 50, 47, 89, - 90, 48, 382, 49, 87, 50, 86, 86, 86, 88, - 78, 87, 382, 89, 90, 247, 88, 91, 87, 49, - - 70, 50, 224, 88, 91, 107, 70, 247, 102, 70, - 78, 91, 90, 224, 70, 102, 87, 389, 89, 107, - 387, 88, 102, 87, 93, 93, 93, 101, 101, 101, - 104, 104, 104, 115, 115, 115, 116, 119, 119, 119, - 170, 170, 170, 116, 171, 171, 171, 176, 176, 176, - 116, 177, 177, 177, 321, 327, 170, 184, 184, 184, - 171, 324, 325, 176, 185, 185, 185, 177, 201, 201, - 201, 381, 321, 184, 331, 202, 202, 202, 327, 324, - 185, 204, 204, 204, 201, 208, 208, 208, 380, 328, - 171, 202, 325, 334, 177, 331, 332, 204, 185, 341, - - 208, 209, 209, 209, 210, 210, 210, 212, 212, 212, - 337, 332, 204, 216, 216, 216, 328, 209, 341, 334, - 210, 333, 337, 212, 219, 219, 219, 379, 216, 220, - 220, 220, 222, 222, 222, 225, 225, 225, 388, 333, - 219, 212, 231, 231, 231, 220, 378, 388, 222, 342, - 335, 225, 225, 232, 232, 232, 338, 349, 231, 233, - 233, 233, 234, 234, 234, 235, 235, 235, 338, 222, - 342, 236, 236, 236, 384, 236, 335, 234, 236, 349, - 235, 237, 237, 237, 384, 369, 231, 239, 239, 239, - 241, 241, 241, 395, 242, 242, 242, 237, 242, 368, - - 418, 242, 239, 370, 395, 241, 245, 245, 245, 249, - 249, 249, 254, 254, 254, 370, 237, 255, 255, 255, - 372, 418, 245, 435, 436, 249, 256, 256, 256, 257, - 257, 257, 372, 255, 258, 258, 258, 404, 259, 259, - 259, 245, 259, 404, 249, 259, 260, 260, 260, 258, - 260, 435, 436, 260, 374, 255, 263, 263, 263, 249, - 265, 265, 265, 266, 266, 266, 374, 266, 367, 419, - 266, 397, 263, 383, 396, 265, 267, 267, 267, 268, - 268, 268, 397, 268, 396, 383, 268, 271, 271, 271, - 419, 267, 272, 272, 272, 273, 273, 273, 279, 279, - - 279, 385, 271, 280, 280, 280, 366, 272, 281, 281, - 281, 273, 281, 385, 405, 281, 284, 284, 284, 280, - 287, 287, 287, 423, 287, 405, 429, 287, 290, 290, - 290, 408, 284, 291, 291, 291, 406, 291, 408, 424, - 291, 429, 406, 290, 292, 292, 292, 293, 293, 293, - 427, 293, 409, 423, 293, 294, 294, 294, 409, 292, - 295, 295, 295, 441, 295, 421, 428, 295, 430, 424, - 294, 296, 296, 296, 302, 302, 302, 305, 305, 305, - 427, 305, 410, 430, 305, 441, 421, 296, 357, 410, - 302, 308, 308, 308, 453, 308, 428, 413, 308, 311, - - 311, 311, 447, 311, 413, 431, 311, 315, 315, 315, - 320, 320, 320, 323, 323, 323, 329, 329, 329, 453, - 330, 330, 330, 315, 330, 422, 320, 330, 323, 433, - 425, 329, 336, 336, 336, 431, 336, 447, 432, 336, - 343, 343, 343, 356, 433, 320, 422, 320, 348, 348, - 348, 425, 320, 355, 434, 343, 343, 350, 350, 350, - 351, 351, 351, 354, 348, 352, 352, 352, 432, 434, - 353, 353, 353, 350, 353, 351, 351, 353, 426, 439, - 352, 352, 358, 358, 358, 437, 353, 359, 359, 359, - 360, 360, 360, 489, 361, 361, 361, 440, 358, 426, - - 437, 347, 438, 359, 346, 489, 360, 439, 358, 361, - 361, 362, 362, 362, 345, 362, 360, 438, 362, 363, - 363, 363, 448, 363, 442, 440, 363, 362, 443, 371, - 371, 371, 390, 390, 390, 363, 364, 364, 364, 364, - 364, 364, 364, 364, 364, 371, 442, 364, 390, 390, - 364, 364, 364, 364, 364, 371, 443, 448, 445, 446, - 344, 401, 401, 401, 444, 318, 364, 364, 365, 365, - 365, 365, 365, 365, 365, 365, 365, 401, 451, 365, - 445, 446, 365, 365, 365, 365, 365, 373, 373, 373, - 452, 373, 444, 455, 373, 449, 401, 456, 365, 365, - - 412, 412, 412, 373, 376, 376, 376, 376, 376, 376, - 376, 376, 376, 451, 493, 376, 412, 449, 376, 376, - 376, 376, 376, 454, 450, 452, 493, 314, 455, 414, - 414, 414, 456, 457, 376, 376, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 414, 450, 377, 454, 458, - 377, 377, 377, 377, 377, 415, 415, 415, 457, 415, - 304, 459, 415, 416, 416, 416, 377, 377, 417, 417, - 417, 415, 417, 460, 458, 417, 420, 420, 420, 416, - 420, 461, 462, 420, 417, 459, 463, 464, 465, 466, - 467, 468, 420, 469, 470, 465, 466, 460, 471, 472, - - 469, 470, 473, 475, 476, 474, 461, 462, 477, 473, - 463, 464, 474, 478, 467, 468, 471, 472, 479, 480, - 481, 475, 476, 482, 483, 484, 485, 486, 487, 488, - 490, 491, 492, 298, 286, 494, 479, 480, 274, 490, - 477, 496, 483, 484, 494, 478, 487, 488, 497, 491, - 492, 264, 481, 496, 251, 482, 248, 497, 485, 486, - 495, 495, 495, 498, 498, 498, 499, 499, 499, 501, - 501, 501, 502, 502, 502, 246, 495, 244, 243, 498, - 240, 238, 499, 230, 229, 501, 228, 223, 502, 504, - 504, 504, 218, 217, 215, 214, 213, 207, 206, 205, - - 200, 199, 196, 195, 194, 504, 507, 507, 507, 507, - 507, 507, 507, 508, 508, 508, 508, 508, 508, 508, - 509, 509, 509, 509, 509, 509, 509, 510, 510, 510, - 510, 510, 510, 510, 511, 511, 511, 511, 511, 511, - 511, 512, 512, 512, 512, 512, 512, 512, 513, 513, - 513, 513, 513, 513, 513, 514, 514, 514, 514, 514, - 514, 514, 515, 515, 515, 515, 515, 515, 515, 516, - 516, 516, 516, 516, 516, 516, 517, 517, 517, 517, - 517, 517, 517, 518, 518, 518, 192, 518, 519, 519, - 519, 188, 519, 520, 520, 520, 186, 520, 521, 521, - - 521, 521, 521, 183, 521, 522, 182, 522, 523, 181, - 523, 524, 180, 524, 525, 525, 525, 525, 525, 525, - 525, 526, 179, 178, 526, 527, 527, 527, 527, 527, - 527, 528, 528, 528, 528, 528, 528, 529, 529, 529, - 529, 529, 529, 530, 530, 530, 530, 530, 530, 530, - 531, 531, 531, 531, 531, 531, 531, 532, 532, 532, - 532, 532, 532, 532, 533, 533, 533, 533, 533, 533, - 533, 534, 534, 534, 534, 534, 534, 534, 535, 535, - 535, 535, 535, 535, 535, 536, 536, 536, 536, 536, - 536, 536, 175, 174, 173, 172, 169, 167, 166, 165, - - 164, 163, 159, 157, 156, 155, 154, 153, 152, 151, - 150, 149, 148, 147, 144, 143, 142, 139, 138, 137, - 134, 133, 132, 131, 130, 124, 123, 121, 118, 117, - 113, 112, 111, 109, 105, 99, 98, 94, 81, 77, - 76, 75, 69, 68, 66, 63, 51, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - 506, 506, 506, 506, 506, 506, 506, 506, 506, 506, - - 506 + 45, 45, 45, 45, 45, 45, 45, 45, 45, 47, + 47, 47, 48, 48, 48, 49, 49, 50, 50, 461, + 49, 70, 50, 47, 444, 461, 48, 372, 49, 78, + 50, 54, 54, 54, 55, 55, 55, 59, 59, 59, + 80, 80, 80, 78, 49, 88, 50, 93, 70, 87, + + 87, 87, 88, 89, 70, 98, 90, 70, 372, 88, + 89, 93, 70, 112, 78, 91, 373, 89, 92, 98, + 90, 95, 95, 95, 406, 92, 106, 112, 88, 91, + 88, 107, 92, 106, 396, 88, 89, 93, 89, 90, + 106, 90, 121, 89, 373, 107, 90, 406, 91, 121, + 91, 92, 247, 92, 396, 91, 121, 438, 92, 105, + 105, 105, 361, 247, 107, 109, 109, 109, 120, 120, + 120, 124, 124, 124, 182, 182, 182, 183, 183, 183, + 193, 193, 193, 194, 194, 194, 201, 201, 201, 278, + 182, 467, 375, 183, 361, 437, 193, 374, 467, 194, + + 492, 278, 201, 202, 202, 202, 219, 219, 219, 220, + 220, 220, 222, 222, 222, 228, 228, 228, 371, 202, + 375, 374, 219, 382, 183, 220, 383, 194, 222, 492, + 228, 230, 230, 230, 232, 232, 232, 371, 202, 233, + 233, 233, 383, 384, 222, 382, 230, 235, 235, 235, + 232, 236, 236, 236, 439, 233, 239, 239, 239, 242, + 242, 242, 384, 235, 439, 399, 236, 243, 243, 243, + 436, 239, 245, 245, 245, 242, 248, 248, 248, 255, + 255, 255, 235, 243, 256, 256, 256, 399, 245, 258, + 258, 258, 248, 248, 435, 255, 259, 259, 259, 260, + + 260, 260, 261, 261, 261, 262, 262, 262, 475, 262, + 245, 398, 262, 263, 263, 263, 385, 261, 264, 264, + 264, 267, 267, 267, 255, 265, 265, 265, 263, 265, + 475, 398, 265, 264, 268, 268, 268, 267, 269, 269, + 269, 386, 269, 385, 498, 269, 270, 270, 270, 268, + 272, 272, 272, 426, 276, 276, 276, 267, 280, 280, + 280, 270, 273, 273, 273, 272, 273, 498, 386, 273, + 276, 285, 285, 285, 280, 287, 287, 287, 288, 288, + 288, 289, 289, 289, 290, 290, 290, 291, 291, 291, + 276, 287, 388, 441, 280, 292, 292, 292, 293, 293, + + 293, 486, 293, 441, 388, 293, 296, 296, 296, 280, + 453, 297, 297, 297, 287, 297, 389, 486, 297, 510, + 453, 296, 298, 298, 298, 452, 298, 427, 389, 298, + 302, 302, 302, 303, 303, 303, 452, 303, 429, 427, + 303, 306, 306, 306, 454, 510, 302, 307, 307, 307, + 429, 307, 462, 431, 307, 454, 306, 308, 308, 308, + 309, 309, 309, 462, 309, 431, 480, 309, 312, 312, + 312, 476, 308, 313, 313, 313, 314, 314, 314, 320, + 320, 320, 425, 312, 322, 322, 322, 440, 313, 323, + 323, 323, 314, 476, 324, 324, 324, 480, 324, 440, + + 322, 324, 328, 328, 328, 330, 330, 330, 487, 330, + 442, 463, 330, 333, 333, 333, 478, 463, 328, 334, + 334, 334, 442, 334, 487, 493, 334, 424, 333, 335, + 335, 335, 336, 336, 336, 504, 336, 466, 478, 336, + 337, 337, 337, 466, 335, 338, 338, 338, 479, 338, + 481, 482, 338, 496, 493, 337, 339, 339, 339, 346, + 346, 346, 349, 349, 349, 483, 349, 470, 423, 349, + 479, 504, 339, 482, 470, 346, 352, 352, 352, 484, + 352, 481, 496, 352, 355, 355, 355, 483, 355, 511, + 505, 355, 359, 359, 359, 365, 365, 365, 368, 368, + + 368, 369, 369, 369, 370, 370, 370, 497, 359, 499, + 484, 365, 490, 368, 485, 511, 369, 488, 491, 370, + 376, 376, 376, 377, 377, 377, 505, 377, 490, 489, + 377, 365, 499, 365, 491, 376, 497, 494, 365, 378, + 378, 378, 379, 379, 379, 485, 379, 495, 488, 379, + 380, 380, 380, 494, 378, 381, 381, 381, 500, 381, + 489, 414, 381, 495, 413, 380, 387, 387, 387, 412, + 387, 508, 411, 387, 390, 390, 390, 509, 390, 501, + 512, 390, 393, 393, 393, 404, 393, 500, 502, 393, + 400, 400, 400, 405, 405, 405, 407, 407, 407, 408, + + 408, 408, 409, 409, 409, 400, 400, 508, 501, 405, + 503, 502, 407, 509, 408, 408, 512, 409, 409, 410, + 410, 410, 506, 410, 507, 513, 410, 415, 415, 415, + 416, 416, 416, 503, 516, 410, 417, 417, 417, 418, + 418, 418, 517, 415, 514, 506, 416, 507, 520, 403, + 528, 402, 417, 415, 418, 418, 419, 419, 419, 516, + 419, 513, 417, 419, 420, 420, 420, 517, 420, 528, + 514, 420, 419, 520, 428, 428, 428, 447, 447, 447, + 420, 421, 421, 421, 421, 421, 421, 421, 421, 421, + 428, 401, 421, 447, 447, 421, 421, 421, 421, 421, + + 428, 521, 362, 522, 529, 534, 458, 458, 458, 515, + 522, 421, 421, 422, 422, 422, 422, 422, 422, 422, + 422, 422, 458, 529, 422, 535, 521, 422, 422, 422, + 422, 422, 430, 430, 430, 515, 430, 538, 534, 430, + 532, 358, 458, 422, 422, 469, 469, 469, 430, 433, + 433, 433, 433, 433, 433, 433, 433, 433, 535, 532, + 433, 469, 523, 433, 433, 433, 433, 433, 518, 523, + 538, 526, 533, 539, 471, 471, 471, 519, 526, 433, + 433, 434, 434, 434, 434, 434, 434, 434, 434, 434, + 471, 533, 434, 524, 518, 434, 434, 434, 434, 434, + + 472, 472, 472, 519, 472, 525, 539, 472, 473, 473, + 473, 434, 434, 474, 474, 474, 472, 474, 524, 527, + 474, 477, 477, 477, 473, 477, 527, 530, 477, 474, + 525, 531, 536, 537, 530, 540, 541, 477, 531, 542, + 543, 544, 545, 548, 546, 549, 550, 348, 547, 345, + 551, 536, 537, 341, 540, 541, 546, 547, 550, 551, + 544, 545, 548, 553, 549, 552, 552, 552, 554, 555, + 555, 555, 542, 543, 327, 553, 321, 554, 556, 556, + 556, 552, 558, 558, 558, 555, 559, 559, 559, 561, + 561, 561, 315, 301, 556, 286, 282, 279, 558, 277, + + 275, 274, 559, 271, 266, 561, 564, 564, 564, 564, + 564, 564, 564, 565, 565, 565, 565, 565, 565, 565, + 566, 566, 566, 566, 566, 566, 566, 567, 567, 567, + 567, 567, 567, 567, 568, 568, 568, 568, 568, 568, + 568, 569, 569, 569, 569, 569, 569, 569, 570, 570, + 570, 570, 570, 570, 570, 571, 571, 571, 571, 571, + 571, 571, 572, 572, 572, 572, 572, 572, 572, 573, + 573, 573, 573, 573, 573, 573, 574, 574, 574, 574, + 574, 574, 574, 575, 575, 575, 257, 575, 576, 576, + 576, 254, 576, 577, 577, 577, 253, 577, 578, 578, + + 578, 578, 578, 252, 578, 579, 251, 579, 580, 246, + 580, 581, 241, 581, 582, 582, 582, 582, 582, 582, + 582, 583, 240, 238, 583, 584, 584, 584, 584, 584, + 584, 585, 585, 585, 585, 585, 585, 586, 586, 586, + 586, 586, 586, 587, 587, 587, 587, 587, 587, 587, + 588, 588, 588, 588, 588, 588, 588, 589, 589, 589, + 589, 589, 589, 589, 590, 590, 590, 590, 590, 590, + 590, 591, 591, 591, 591, 591, 591, 591, 592, 592, + 592, 592, 592, 592, 592, 593, 593, 593, 593, 593, + 593, 593, 237, 231, 229, 227, 226, 225, 224, 223, + + 218, 217, 216, 213, 212, 211, 209, 205, 203, 200, + 199, 198, 197, 196, 195, 192, 191, 190, 189, 188, + 187, 186, 185, 184, 181, 180, 178, 177, 176, 175, + 174, 170, 168, 167, 166, 165, 164, 163, 162, 161, + 160, 159, 158, 155, 154, 153, 152, 151, 148, 147, + 146, 145, 144, 143, 142, 139, 138, 137, 136, 135, + 129, 128, 126, 123, 122, 118, 117, 116, 114, 110, + 103, 102, 101, 100, 96, 85, 81, 77, 76, 75, + 69, 68, 66, 63, 51, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563, 563, 563, 563, 563, 563, 563, 563, 563, 563, + 563 } ; /* Table of booleans, true if rule could match eol. */ -static yyconst flex_int32_t yy_rule_can_match_eol[82] = +static yyconst flex_int32_t yy_rule_can_match_eol[93] = { 0, -0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, - 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, - 1, 0, }; +0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, + 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, + 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, }; static yy_state_type yy_last_accepting_state; static char *yy_last_accepting_cpos; @@ -980,13 +1053,13 @@ int xbt_graph_parse__flex_debug = 0; #define YY_MORE_ADJ 0 #define YY_RESTORE_YY_MORE_OFFSET char *xbt_graph_parse_text; -#line 1 "xbt/graphxml.l" -/* Validating XML processor for graphxml.dtd. - * Generated 2006/03/21 13:43:39. +/* Validating XML processor for src/xbt/graphxml.dtd. + * Generated 2010/12/01 17:15:43. * * This program was generated with the FleXML XML processor generator. - * FleXML is Copyright © 1999-2005 Kristoffer Rose. All rights reserved. - * (Id: flexml.pl,v 1.47 2006/03/21 11:12:57 legranda Exp). + * FleXML is Copyright (C) 1999-2005 Kristoffer Rose. All rights reserved. + * FleXML is Copyright (C) 2003-2006 Martin Quinson. All rights reserved. + * (Id: flexml.pl,v 1.62 2007/10/11 10:00:14 mquinson Exp). * * There are two, intertwined parts to this program, part A and part B. * @@ -994,8 +1067,8 @@ char *xbt_graph_parse_text; * ------ * * Some parts, here collectively called "Part A", are found in the - * FleXML package. They are Copyright © 1999-2005 Kristoffer Rose. - * All rights reserved. + * FleXML package. They are Copyright (C) 1999-2005 Kristoffer Rose + * and Copyright (C) 2003-2006 Martin Quinson. All rights reserved. * * You can redistribute, use, perform, display and/or modify "Part A" * provided the following two conditions hold: @@ -1026,37 +1099,70 @@ char *xbt_graph_parse_text; * by the author of or contributors to FleXML. * */ -#line 48 "xbt/graphxml.l" /* Version strings. */ const char rcs_graphxml_flexml_skeleton[] = - "$" "Id: skel,v 1.28 2006/03/21 12:04:13 legranda Exp $"; + "$" "Id: skel,v 1.40 2007/10/11 09:57:24 mquinson Exp $"; const char rcs_graphxml_flexml[] = - "$" "Id: flexml.pl,v 1.47 2006/03/21 11:12:57 legranda Exp $"; + "$" "Id: flexml.pl,v 1.62 2007/10/11 10:00:14 mquinson Exp $"; /* ANSI headers. */ -#include +#include /* for realloc() -- needed here when using flex 2.5.4 */ #include #include #include #include #include + +#if defined(_XBT_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(__TOS_WIN__) +# ifndef __STRICT_ANSI__ +# include +# include +# endif +#else +# include +#endif + +#ifndef FLEXML_INDEXSTACKSIZE +#define FLEXML_INDEXSTACKSIZE 1000 +#endif /* Generated definitions. */ #define FLEXML_yylineno +#ifndef FLEXML_BUFFERSTACKSIZE #define FLEXML_BUFFERSTACKSIZE 1000000 +#endif +#define FLEXML_NEED_BUFFERLIT /* XML processor api. */ /* FleXML-provided data. */ -const char* pcdata; -AT_graphxml_node_name A_graphxml_node_name; -AT_graphxml_edge_source A_graphxml_edge_source; -AT_graphxml_edge_isDirected A_graphxml_edge_isDirected; -AT_graphxml_edge_target A_graphxml_edge_target; -AT_graphxml_node_label A_graphxml_node_label; -AT_graphxml_edge_label A_graphxml_edge_label; -AT_graphxml_edge_name A_graphxml_edge_name; -AT_graphxml_edge_length A_graphxml_edge_length; +int graphxml_pcdata_ix; +extern char *graphxml_bufferstack; +#define graphxml_pcdata (graphxml_bufferstack + graphxml_pcdata_ix) +AT_graphxml_node_name AX_graphxml_node_name; +#define A_graphxml_node_name (graphxml_bufferstack + AX_graphxml_node_name) +AT_graphxml_edge_source AX_graphxml_edge_source; +#define A_graphxml_edge_source (graphxml_bufferstack + AX_graphxml_edge_source) +AT_graphxml_node_position_y AX_graphxml_node_position_y; +#define A_graphxml_node_position_y (graphxml_bufferstack + AX_graphxml_node_position_y) +AT_graphxml_node_position_x AX_graphxml_node_position_x; +#define A_graphxml_node_position_x (graphxml_bufferstack + AX_graphxml_node_position_x) +AT_graphxml_edge_data AX_graphxml_edge_data; +#define A_graphxml_edge_data (graphxml_bufferstack + AX_graphxml_edge_data) +AT_graphxml_edge_target AX_graphxml_edge_target; +#define A_graphxml_edge_target (graphxml_bufferstack + AX_graphxml_edge_target) +AT_graphxml_graph_isDirected AX_graphxml_graph_isDirected; +#define A_graphxml_graph_isDirected AX_graphxml_graph_isDirected +AT_graphxml_node_label AX_graphxml_node_label; +#define A_graphxml_node_label (graphxml_bufferstack + AX_graphxml_node_label) +AT_graphxml_node_data AX_graphxml_node_data; +#define A_graphxml_node_data (graphxml_bufferstack + AX_graphxml_node_data) +AT_graphxml_edge_label AX_graphxml_edge_label; +#define A_graphxml_edge_label (graphxml_bufferstack + AX_graphxml_edge_label) +AT_graphxml_edge_length AX_graphxml_edge_length; +#define A_graphxml_edge_length (graphxml_bufferstack + AX_graphxml_edge_length) +AT_graphxml_edge_name AX_graphxml_edge_name; +#define A_graphxml_edge_name (graphxml_bufferstack + AX_graphxml_edge_name) /* XML state. */ #ifdef FLEX_DEBUG @@ -1078,64 +1184,97 @@ AT_graphxml_edge_length A_graphxml_edge_length; #define FAIL return fail static int fail(const char*, ...); -const char * graphxml_parse_err_msg(void); + +enum {flexml_max_err_msg_size = 512}; +static char flexml_err_msg[flexml_max_err_msg_size]; +const char * graphxml_parse_err_msg() +{ + return flexml_err_msg; +} +static void reset_graphxml_parse_err_msg() +{ + flexml_err_msg[0] = '\0'; +} /* Cleanup */ static void cleanup(void); #define CLEANUP cleanup() /* Text buffer stack handling. */ -char bufferstack[FLEXML_BUFFERSTACKSIZE]; -static char* limit = bufferstack + FLEXML_BUFFERSTACKSIZE; -typedef struct BufferLast_s { - struct BufferLast_s *old; char* saved; char new1[1]; -} BufferLast; -#ifdef FLEXML_HasMixed -static BufferLast* last = (BufferLast*)0; -#endif -static char* next = bufferstack; +char *graphxml_bufferstack = NULL; +static int blimit = FLEXML_BUFFERSTACKSIZE; +static int bnext = 1; + +static int *indexstack = NULL; +static int ilimit = FLEXML_INDEXSTACKSIZE; +static int inext = 1; -#define BUFFERSET(P) (P = next) -#define BUFFERPUTC(C) (assert(next= blimit) { + blimit += FLEXML_BUFFERSTACKSIZE + 2; + { + char *temp = (char *) realloc(graphxml_bufferstack, blimit); + assert(temp); + graphxml_bufferstack = temp; + } + } + return 0; +} + +/* after this is called, there are at least 2 slots left in the stack */ +static int ck_ilimit() { - char *s = strchr(text,c), *e = strrchr(text,c); + if (inext >= ilimit) { + ilimit += FLEXML_INDEXSTACKSIZE + 2; + { + int *temp = (int *) realloc(indexstack, ilimit); + assert(temp); + indexstack = temp; + } + } + return 0; +} + +#ifdef FLEXML_NEED_BUFFERLIT +static void graphxml_bufferliteral(char c, int* pp, const char* text) +{ + const char *s = (c ? strchr(text,c) : text-1), *e = strrchr(text,c); assert(s <= e); BUFFERSET(*pp); while (++sold = last; - l->saved = p; - next = l->new1; - last = l; + ck_ilimit(); + indexstack[inext++] = p; + indexstack[inext++] = bnext; } -static char* popbuffer(void) +static int popbuffer(void) { - BufferLast* l = last; - assert(last != (BufferLast*)0); - last = l->old; - next = (char*)l; - return l->saved; + assert(inext >= 2); + bnext = indexstack[--inext]; + return indexstack[--inext]; } -#endif /* General internal entities are `unput' back onto the input stream... */ #define ENTITYTEXT(T) \ { char *s = (T), *e = s+strlen(s);\ while (--e >= s) { unput(*e); }} + /* Flex standard options. */ #define YY_NO_INPUT 1 /* Flex user-requested options. */ @@ -1159,14 +1298,8 @@ static char* popbuffer(void) * IMPOSSIBLE dummy to permit disabling rules; must be last */ - - - - -#line 211 "xbt/graphxml.l" /* State names. */ const char* *graphxml_statenames=NULL; -#line 1170 "xbt/graphxml.c" #define INITIAL 0 #define PROLOG 1 @@ -1199,7 +1332,14 @@ const char* *graphxml_statenames=NULL; * down here because we want the user's section 1 to have been scanned first. * The user has a chance to override it with an option. */ -#include +#if defined(_XBT_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(__TOS_WIN__) +# ifndef __STRICT_ANSI__ +# include +# include +# endif +#else +# include +#endif #endif #ifndef YY_EXTRA_TYPE @@ -1208,6 +1348,35 @@ const char* *graphxml_statenames=NULL; static int yy_init_globals (void ); +/* Accessor methods to globals. + These are made visible to non-reentrant scanners for convenience. */ + +int xbt_graph_parse_lex_destroy (void ); + +int xbt_graph_parse_get_debug (void ); + +void xbt_graph_parse_set_debug (int debug_flag ); + +YY_EXTRA_TYPE xbt_graph_parse_get_extra (void ); + +void xbt_graph_parse_set_extra (YY_EXTRA_TYPE user_defined ); + +FILE *xbt_graph_parse_get_in (void ); + +void xbt_graph_parse_set_in (FILE * in_str ); + +FILE *xbt_graph_parse_get_out (void ); + +void xbt_graph_parse_set_out (FILE * out_str ); + +int xbt_graph_parse_get_leng (void ); + +char *xbt_graph_parse_get_text (void ); + +int xbt_graph_parse_get_lineno (void ); + +void xbt_graph_parse_set_lineno (int line_number ); + /* Macros after this point can all be overridden by user definitions in * section 1. */ @@ -1248,7 +1417,12 @@ static int input (void ); /* Amount of stuff to slurp up with each read. */ #ifndef YY_READ_BUF_SIZE +#ifdef __ia64__ +/* On IA-64, the buffer size is 16k, not 8k */ +#define YY_READ_BUF_SIZE 16384 +#else #define YY_READ_BUF_SIZE 8192 +#endif /* __ia64__ */ #endif /* Copy whatever the last rule matched to the standard output. */ @@ -1256,7 +1430,7 @@ static int input (void ); /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */ -#define ECHO (void) fwrite( xbt_graph_parse_text, xbt_graph_parse_leng, 1, xbt_graph_parse_out ) +#define ECHO do { if (fwrite( xbt_graph_parse_text, xbt_graph_parse_leng, 1, xbt_graph_parse_out )) {} } while (0) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -1349,13 +1523,29 @@ YY_DECL register char *yy_cp, *yy_bp; register int yy_act; -#line 215 "xbt/graphxml.l" - - /* Bypass Flex's default INITIAL state and begin by parsing the XML prolog. */ SET(PROLOG); + reset_graphxml_parse_err_msg(); + graphxml_bufferstack = (char *) malloc(FLEXML_BUFFERSTACKSIZE); + assert(graphxml_bufferstack); + #ifdef FLEX_DEBUG + { + int i; + for (i = 0; i < blimit; i++) { + graphxml_bufferstack[i] = '\377'; + } + } + #endif + graphxml_bufferstack[0] = '\0'; + indexstack = (int *) malloc(FLEXML_INDEXSTACKSIZE * sizeof(int)); + assert(indexstack); + indexstack[0] = 0; + /* FleXML_init */ - next = bufferstack; + bnext = inext = 1; + graphxml_bufferliteral('\0', &bnext, "-1.0"); + graphxml_bufferliteral('\0', &bnext, "-1.0"); + graphxml_bufferliteral('\0', &bnext, "-1.0"); if(!graphxml_statenames) {graphxml_statenames= (const char **)calloc(IMPOSSIBLE,sizeof(char*)); graphxml_statenames[PROLOG] = NULL; graphxml_statenames[DOCTYPE] = NULL; @@ -1384,8 +1574,6 @@ YY_DECL /* COMMENTS and PIs: handled uniformly for efficiency. */ -#line 1388 "xbt/graphxml.c" - if ( !(yy_init) ) { (yy_init) = 1; @@ -1437,13 +1625,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 507 ) + if ( yy_current_state >= 564 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 1448 ); + while ( yy_base[yy_current_state] != 1586 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -1479,52 +1667,39 @@ do_action: /* This label is used only to access EOF actions. */ case 1: YY_RULE_SETUP -#line 250 "xbt/graphxml.l" ENTER(INCOMMENT); YY_BREAK case 2: YY_RULE_SETUP -#line 251 "xbt/graphxml.l" ENTER(INPI); YY_BREAK - case 3: YY_RULE_SETUP -#line 254 "xbt/graphxml.l" LEAVE; YY_BREAK case 4: -#line 256 "xbt/graphxml.l" case 5: -#line 257 "xbt/graphxml.l" case 6: /* rule 6 can match eol */ YY_RULE_SETUP -#line 257 "xbt/graphxml.l" SKIP; YY_BREAK case YY_STATE_EOF(INCOMMENT): -#line 258 "xbt/graphxml.l" FAIL("EOF in comment."); YY_BREAK - case 7: YY_RULE_SETUP -#line 261 "xbt/graphxml.l" LEAVE; YY_BREAK case 8: -#line 263 "xbt/graphxml.l" case 9: /* rule 9 can match eol */ YY_RULE_SETUP -#line 263 "xbt/graphxml.l" SKIP; YY_BREAK case YY_STATE_EOF(INPI): -#line 264 "xbt/graphxml.l" FAIL("EOF in PI (processing instruction)."); YY_BREAK @@ -1532,7 +1707,6 @@ FAIL("EOF in PI (processing instruction)."); case 10: /* rule 10 can match eol */ YY_RULE_SETUP -#line 269 "xbt/graphxml.l" SKIP; YY_BREAK /* PROLOG: determine root element and process it. */ @@ -1540,117 +1714,121 @@ SKIP; case 11: /* rule 11 can match eol */ YY_RULE_SETUP -#line 274 "xbt/graphxml.l" SET(DOCTYPE); YY_BREAK case 12: /* rule 12 can match eol */ YY_RULE_SETUP -#line 275 "xbt/graphxml.l" FAIL("Bad declaration %s.",xbt_graph_parse_text); YY_BREAK - case 13: /* rule 13 can match eol */ YY_RULE_SETUP -#line 279 "xbt/graphxml.l" SET(ROOT_graphxml_edge); YY_BREAK case 14: /* rule 14 can match eol */ YY_RULE_SETUP -#line 280 "xbt/graphxml.l" SET(ROOT_graphxml_node); YY_BREAK case 15: /* rule 15 can match eol */ YY_RULE_SETUP -#line 281 "xbt/graphxml.l" SET(ROOT_graphxml_graph); YY_BREAK case 16: /* rule 16 can match eol */ YY_RULE_SETUP -#line 282 "xbt/graphxml.l" FAIL("Bad declaration %s.",xbt_graph_parse_text); YY_BREAK case 17: YY_RULE_SETUP -#line 283 "xbt/graphxml.l" FAIL("Unexpected character `%c' in prolog.", xbt_graph_parse_text[0]); YY_BREAK case YY_STATE_EOF(PROLOG): case YY_STATE_EOF(DOCTYPE): -#line 284 "xbt/graphxml.l" FAIL("EOF in prolog."); YY_BREAK /* RULES DERIVED FROM DTD. */ /* */ +/* isDirected (true|false) "true" + * > */ case 18: /* rule 18 can match eol */ YY_RULE_SETUP -#line 291 "xbt/graphxml.l" +FAIL("Starting tag is not allowed here."); + YY_BREAK +case 19: +/* rule 19 can match eol */ +YY_RULE_SETUP { - ENTER(AL_graphxml_graph); + AX_graphxml_graph_isDirected = A_graphxml_graph_isDirected_true; + ENTER(AL_graphxml_graph); pushbuffer(0); } YY_BREAK -case 19: +case 20: +/* rule 20 can match eol */ +case 21: +/* rule 21 can match eol */ +YY_RULE_SETUP +A_graphxml_graph_isDirected = A_graphxml_graph_isDirected_true; + YY_BREAK +case 22: +/* rule 22 can match eol */ +case 23: +/* rule 23 can match eol */ +YY_RULE_SETUP +A_graphxml_graph_isDirected = A_graphxml_graph_isDirected_false; + YY_BREAK +case 24: YY_RULE_SETUP -#line 296 "xbt/graphxml.l" { - LEAVE; STag_graphxml_graph();pcdata = NULL; ENTER(S_graphxml_graph); + LEAVE; STag_graphxml_graph();graphxml_pcdata_ix = 0; ENTER(S_graphxml_graph); } YY_BREAK -case 20: +case 25: YY_RULE_SETUP -#line 299 "xbt/graphxml.l" { - LEAVE; STag_graphxml_graph(); pcdata = NULL; ETag_graphxml_graph(); + LEAVE; STag_graphxml_graph(); graphxml_pcdata_ix = 0; ETag_graphxml_graph(); popbuffer(); /* attribute */ switch (YY_START) { case ROOT_graphxml_graph: SET(EPILOG); break; } } YY_BREAK -case 21: +case 26: YY_RULE_SETUP -#line 305 "xbt/graphxml.l" FAIL("Unexpected character `%c' in attribute list of graph element.", xbt_graph_parse_text[0]); YY_BREAK -case 22: +case 27: YY_RULE_SETUP -#line 306 "xbt/graphxml.l" FAIL("Bad attribute `%s' in `graph' element start tag.",xbt_graph_parse_text); YY_BREAK case YY_STATE_EOF(AL_graphxml_graph): -#line 307 "xbt/graphxml.l" FAIL("EOF in attribute list of `graph' element."); YY_BREAK - -case 23: -/* rule 23 can match eol */ +case 28: +/* rule 28 can match eol */ YY_RULE_SETUP -#line 311 "xbt/graphxml.l" { LEAVE; ETag_graphxml_graph(); + popbuffer(); /* attribute */ switch (YY_START) { case ROOT_graphxml_graph: SET(EPILOG); break; } } YY_BREAK -case 24: -/* rule 24 can match eol */ +case 29: +/* rule 29 can match eol */ YY_RULE_SETUP -#line 318 "xbt/graphxml.l" FAIL("Unexpected end-tag `%s': `' expected.",xbt_graph_parse_text); YY_BREAK -case 25: +case 30: YY_RULE_SETUP -#line 319 "xbt/graphxml.l" FAIL("Unexpected character `%c': `' expected.",xbt_graph_parse_text[0]); YY_BREAK case YY_STATE_EOF(S_graphxml_graph_1): @@ -1658,410 +1836,383 @@ case YY_STATE_EOF(E_graphxml_graph): case YY_STATE_EOF(S_graphxml_graph_3): case YY_STATE_EOF(S_graphxml_graph_5): case YY_STATE_EOF(S_graphxml_graph): -#line 320 "xbt/graphxml.l" FAIL("Premature EOF: `' expected."); YY_BREAK /* label CDATA "" * name CDATA #REQUIRED + * data CDATA "" + * position_x CDATA "-1.0" + * position_y CDATA "-1.0" * > */ -case 26: -/* rule 26 can match eol */ +case 31: +/* rule 31 can match eol */ +YY_RULE_SETUP +FAIL("Starting tag is not allowed here."); + YY_BREAK +case 32: +/* rule 32 can match eol */ YY_RULE_SETUP -#line 327 "xbt/graphxml.l" { - A_graphxml_node_label = NULL; - A_graphxml_node_name = NULL; - ENTER(AL_graphxml_node); + AX_graphxml_node_label = 0; + AX_graphxml_node_name = 0; + AX_graphxml_node_data = 0; + AX_graphxml_node_position_x = 1; + AX_graphxml_node_position_y = 6; + ENTER(AL_graphxml_node); pushbuffer(0); } YY_BREAK -case 27: -/* rule 27 can match eol */ +case 33: +/* rule 33 can match eol */ YY_RULE_SETUP -#line 334 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_node_label); +ENTER(VALUE1); BUFFERSET(AX_graphxml_node_label); YY_BREAK -case 28: -/* rule 28 can match eol */ +case 34: +/* rule 34 can match eol */ YY_RULE_SETUP -#line 335 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_node_label); +ENTER(VALUE2); BUFFERSET(AX_graphxml_node_label); YY_BREAK -case 29: -/* rule 29 can match eol */ +case 35: +/* rule 35 can match eol */ YY_RULE_SETUP -#line 337 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_node_name); +ENTER(VALUE1); BUFFERSET(AX_graphxml_node_name); YY_BREAK -case 30: -/* rule 30 can match eol */ +case 36: +/* rule 36 can match eol */ YY_RULE_SETUP -#line 338 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_node_name); +ENTER(VALUE2); BUFFERSET(AX_graphxml_node_name); YY_BREAK -case 31: +case 37: +/* rule 37 can match eol */ +YY_RULE_SETUP +ENTER(VALUE1); BUFFERSET(AX_graphxml_node_data); + YY_BREAK +case 38: +/* rule 38 can match eol */ +YY_RULE_SETUP +ENTER(VALUE2); BUFFERSET(AX_graphxml_node_data); + YY_BREAK +case 39: +/* rule 39 can match eol */ +YY_RULE_SETUP +ENTER(VALUE1); BUFFERSET(AX_graphxml_node_position_x); + YY_BREAK +case 40: +/* rule 40 can match eol */ +YY_RULE_SETUP +ENTER(VALUE2); BUFFERSET(AX_graphxml_node_position_x); + YY_BREAK +case 41: +/* rule 41 can match eol */ +YY_RULE_SETUP +ENTER(VALUE1); BUFFERSET(AX_graphxml_node_position_y); + YY_BREAK +case 42: +/* rule 42 can match eol */ +YY_RULE_SETUP +ENTER(VALUE2); BUFFERSET(AX_graphxml_node_position_y); + YY_BREAK +case 43: YY_RULE_SETUP -#line 340 "xbt/graphxml.l" { - if (!A_graphxml_node_name) FAIL("Required attribute `name' not set for `node' element."); - LEAVE; STag_graphxml_node();pcdata = NULL; ENTER(E_graphxml_node); + if (!AX_graphxml_node_name) FAIL("Required attribute `name' not set for `node' element."); + LEAVE; STag_graphxml_node();graphxml_pcdata_ix = 0; ENTER(E_graphxml_node); } YY_BREAK -case 32: +case 44: YY_RULE_SETUP -#line 344 "xbt/graphxml.l" { - if (!A_graphxml_node_name) FAIL("Required attribute `name' not set for `node' element."); - LEAVE; STag_graphxml_node(); pcdata = NULL; ETag_graphxml_node(); + if (!AX_graphxml_node_name) FAIL("Required attribute `name' not set for `node' element."); + LEAVE; STag_graphxml_node(); graphxml_pcdata_ix = 0; ETag_graphxml_node(); popbuffer(); /* attribute */ switch (YY_START) { case S_graphxml_graph_2: case S_graphxml_graph_3: case S_graphxml_graph: SET(S_graphxml_graph_3); break; case ROOT_graphxml_node: SET(EPILOG); break; } } YY_BREAK -case 33: +case 45: YY_RULE_SETUP -#line 352 "xbt/graphxml.l" FAIL("Unexpected character `%c' in attribute list of node element.", xbt_graph_parse_text[0]); YY_BREAK -case 34: +case 46: YY_RULE_SETUP -#line 353 "xbt/graphxml.l" FAIL("Bad attribute `%s' in `node' element start tag.",xbt_graph_parse_text); YY_BREAK case YY_STATE_EOF(AL_graphxml_node): -#line 354 "xbt/graphxml.l" FAIL("EOF in attribute list of `node' element."); YY_BREAK - -case 35: -/* rule 35 can match eol */ +case 47: +/* rule 47 can match eol */ YY_RULE_SETUP -#line 358 "xbt/graphxml.l" { LEAVE; ETag_graphxml_node(); + popbuffer(); /* attribute */ switch (YY_START) { case S_graphxml_graph_2: case S_graphxml_graph_3: case S_graphxml_graph: SET(S_graphxml_graph_3); break; case ROOT_graphxml_node: SET(EPILOG); break; } } YY_BREAK -case 36: -/* rule 36 can match eol */ +case 48: +/* rule 48 can match eol */ YY_RULE_SETUP -#line 366 "xbt/graphxml.l" FAIL("Unexpected end-tag `%s': `' expected.",xbt_graph_parse_text); YY_BREAK -case 37: +case 49: YY_RULE_SETUP -#line 367 "xbt/graphxml.l" FAIL("Unexpected character `%c': `' expected.",xbt_graph_parse_text[0]); YY_BREAK case YY_STATE_EOF(E_graphxml_node): -#line 368 "xbt/graphxml.l" FAIL("Premature EOF: `' expected."); YY_BREAK /* label CDATA "" - * name CDATA #IMPLIED - * source CDATA #REQUIRED - * target CDATA #REQUIRED - * length CDATA "0.0" - * isDirected (true|false) "true" + * name CDATA #IMPLIED + * source CDATA #REQUIRED + * target CDATA #REQUIRED + * length CDATA "-1.0" + * data CDATA "" * > */ -case 38: -/* rule 38 can match eol */ +case 50: +/* rule 50 can match eol */ +YY_RULE_SETUP +FAIL("Starting tag is not allowed here."); + YY_BREAK +case 51: +/* rule 51 can match eol */ YY_RULE_SETUP -#line 379 "xbt/graphxml.l" { - A_graphxml_edge_label = NULL; - A_graphxml_edge_name = NULL; - A_graphxml_edge_source = NULL; - A_graphxml_edge_target = NULL; - A_graphxml_edge_length = "0.0"; - A_graphxml_edge_isDirected = A_graphxml_edge_isDirected_true; - ENTER(AL_graphxml_edge); + AX_graphxml_edge_label = 0; + AX_graphxml_edge_name = 0; + AX_graphxml_edge_source = 0; + AX_graphxml_edge_target = 0; + AX_graphxml_edge_length = 11; + AX_graphxml_edge_data = 0; + ENTER(AL_graphxml_edge); pushbuffer(0); } YY_BREAK -case 39: -/* rule 39 can match eol */ +case 52: +/* rule 52 can match eol */ YY_RULE_SETUP -#line 390 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_edge_label); +ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_label); YY_BREAK -case 40: -/* rule 40 can match eol */ +case 53: +/* rule 53 can match eol */ YY_RULE_SETUP -#line 391 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_edge_label); +ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_label); YY_BREAK -case 41: -/* rule 41 can match eol */ +case 54: +/* rule 54 can match eol */ YY_RULE_SETUP -#line 393 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_edge_name); +ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_name); YY_BREAK -case 42: -/* rule 42 can match eol */ +case 55: +/* rule 55 can match eol */ YY_RULE_SETUP -#line 394 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_edge_name); +ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_name); YY_BREAK -case 43: -/* rule 43 can match eol */ +case 56: +/* rule 56 can match eol */ YY_RULE_SETUP -#line 396 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_edge_source); +ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_source); YY_BREAK -case 44: -/* rule 44 can match eol */ +case 57: +/* rule 57 can match eol */ YY_RULE_SETUP -#line 397 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_edge_source); +ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_source); YY_BREAK -case 45: -/* rule 45 can match eol */ +case 58: +/* rule 58 can match eol */ YY_RULE_SETUP -#line 399 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_edge_target); +ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_target); YY_BREAK -case 46: -/* rule 46 can match eol */ +case 59: +/* rule 59 can match eol */ YY_RULE_SETUP -#line 400 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_edge_target); +ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_target); YY_BREAK -case 47: -/* rule 47 can match eol */ +case 60: +/* rule 60 can match eol */ YY_RULE_SETUP -#line 402 "xbt/graphxml.l" -ENTER(VALUE1); BUFFERSET(A_graphxml_edge_length); +ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_length); YY_BREAK -case 48: -/* rule 48 can match eol */ +case 61: +/* rule 61 can match eol */ YY_RULE_SETUP -#line 403 "xbt/graphxml.l" -ENTER(VALUE2); BUFFERSET(A_graphxml_edge_length); +ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_length); YY_BREAK -case 49: -/* rule 49 can match eol */ -#line 406 "xbt/graphxml.l" -case 50: -/* rule 50 can match eol */ +case 62: +/* rule 62 can match eol */ YY_RULE_SETUP -#line 406 "xbt/graphxml.l" -A_graphxml_edge_isDirected = A_graphxml_edge_isDirected_true; +ENTER(VALUE1); BUFFERSET(AX_graphxml_edge_data); YY_BREAK -case 51: -/* rule 51 can match eol */ -#line 408 "xbt/graphxml.l" -case 52: -/* rule 52 can match eol */ +case 63: +/* rule 63 can match eol */ YY_RULE_SETUP -#line 408 "xbt/graphxml.l" -A_graphxml_edge_isDirected = A_graphxml_edge_isDirected_false; +ENTER(VALUE2); BUFFERSET(AX_graphxml_edge_data); YY_BREAK -case 53: +case 64: YY_RULE_SETUP -#line 410 "xbt/graphxml.l" { - if (!A_graphxml_edge_source) FAIL("Required attribute `source' not set for `edge' element."); - if (!A_graphxml_edge_target) FAIL("Required attribute `target' not set for `edge' element."); - LEAVE; STag_graphxml_edge();pcdata = NULL; ENTER(E_graphxml_edge); + if (!AX_graphxml_edge_source) FAIL("Required attribute `source' not set for `edge' element."); + if (!AX_graphxml_edge_target) FAIL("Required attribute `target' not set for `edge' element."); + LEAVE; STag_graphxml_edge();graphxml_pcdata_ix = 0; ENTER(E_graphxml_edge); } YY_BREAK -case 54: +case 65: YY_RULE_SETUP -#line 415 "xbt/graphxml.l" { - if (!A_graphxml_edge_source) FAIL("Required attribute `source' not set for `edge' element."); - if (!A_graphxml_edge_target) FAIL("Required attribute `target' not set for `edge' element."); - LEAVE; STag_graphxml_edge(); pcdata = NULL; ETag_graphxml_edge(); + if (!AX_graphxml_edge_source) FAIL("Required attribute `source' not set for `edge' element."); + if (!AX_graphxml_edge_target) FAIL("Required attribute `target' not set for `edge' element."); + LEAVE; STag_graphxml_edge(); graphxml_pcdata_ix = 0; ETag_graphxml_edge(); popbuffer(); /* attribute */ switch (YY_START) { case S_graphxml_graph_1: case S_graphxml_graph_3: case S_graphxml_graph_5: case S_graphxml_graph_4: case S_graphxml_graph: SET(S_graphxml_graph_5); break; case ROOT_graphxml_edge: SET(EPILOG); break; } } YY_BREAK -case 55: +case 66: YY_RULE_SETUP -#line 424 "xbt/graphxml.l" FAIL("Unexpected character `%c' in attribute list of edge element.", xbt_graph_parse_text[0]); YY_BREAK -case 56: +case 67: YY_RULE_SETUP -#line 425 "xbt/graphxml.l" FAIL("Bad attribute `%s' in `edge' element start tag.",xbt_graph_parse_text); YY_BREAK case YY_STATE_EOF(AL_graphxml_edge): -#line 426 "xbt/graphxml.l" FAIL("EOF in attribute list of `edge' element."); YY_BREAK - -case 57: -/* rule 57 can match eol */ +case 68: +/* rule 68 can match eol */ YY_RULE_SETUP -#line 430 "xbt/graphxml.l" { LEAVE; ETag_graphxml_edge(); + popbuffer(); /* attribute */ switch (YY_START) { case S_graphxml_graph_1: case S_graphxml_graph_3: case S_graphxml_graph_5: case S_graphxml_graph_4: case S_graphxml_graph: SET(S_graphxml_graph_5); break; case ROOT_graphxml_edge: SET(EPILOG); break; } } YY_BREAK -case 58: -/* rule 58 can match eol */ +case 69: +/* rule 69 can match eol */ YY_RULE_SETUP -#line 438 "xbt/graphxml.l" FAIL("Unexpected end-tag `%s': `' expected.",xbt_graph_parse_text); YY_BREAK -case 59: +case 70: YY_RULE_SETUP -#line 439 "xbt/graphxml.l" FAIL("Unexpected character `%c': `' expected.",xbt_graph_parse_text[0]); YY_BREAK case YY_STATE_EOF(E_graphxml_edge): -#line 440 "xbt/graphxml.l" FAIL("Premature EOF: `' expected."); YY_BREAK /* EPILOG: after the root element. */ -case 60: +case 71: YY_RULE_SETUP -#line 446 "xbt/graphxml.l" {SET(PROLOG); yyless(0); CLEANUP; return -1;} YY_BREAK case YY_STATE_EOF(EPILOG): -#line 447 "xbt/graphxml.l" SUCCEED; YY_BREAK /* CHARACTER DATA. */ /* Non-defined standard entities... */ -case 61: +case 72: YY_RULE_SETUP -#line 454 "xbt/graphxml.l" BUFFERPUTC('&'); YY_BREAK -case 62: +case 73: YY_RULE_SETUP -#line 455 "xbt/graphxml.l" BUFFERPUTC('<'); YY_BREAK -case 63: +case 74: YY_RULE_SETUP -#line 456 "xbt/graphxml.l" BUFFERPUTC('>'); YY_BREAK -case 64: +case 75: YY_RULE_SETUP -#line 457 "xbt/graphxml.l" BUFFERPUTC('\''); YY_BREAK -case 65: +case 76: YY_RULE_SETUP -#line 458 "xbt/graphxml.l" BUFFERPUTC('"'); YY_BREAK /* Character entities. */ -case 66: +case 77: YY_RULE_SETUP -#line 461 "xbt/graphxml.l" BUFFERPUTC((unsigned char)atoi(xbt_graph_parse_text+2)); YY_BREAK -case 67: +case 78: YY_RULE_SETUP -#line 462 "xbt/graphxml.l" BUFFERPUTC((unsigned char)strtol(xbt_graph_parse_text+3,NULL,16)); YY_BREAK - -case 68: -/* rule 68 can match eol */ -#line 467 "xbt/graphxml.l" -case 69: -/* rule 69 can match eol */ -#line 468 "xbt/graphxml.l" -case 70: -/* rule 70 can match eol */ -#line 469 "xbt/graphxml.l" -case 71: -/* rule 71 can match eol */ +case 79: +/* rule 79 can match eol */ +case 80: +/* rule 80 can match eol */ +case 81: +/* rule 81 can match eol */ +case 82: +/* rule 82 can match eol */ YY_RULE_SETUP -#line 469 "xbt/graphxml.l" BUFFERPUTC('\n'); YY_BREAK - -case 72: +case 83: YY_RULE_SETUP -#line 473 "xbt/graphxml.l" ENTER(CDATA); YY_BREAK -case 73: +case 84: YY_RULE_SETUP -#line 474 "xbt/graphxml.l" FAIL("Unexpected `]""]>' in character data."); YY_BREAK - -case 74: +case 85: YY_RULE_SETUP -#line 478 "xbt/graphxml.l" BUFFERDONE; LEAVE; YY_BREAK case YY_STATE_EOF(VALUE1): -#line 479 "xbt/graphxml.l" FAIL("EOF in literal (\"'\" expected)."); YY_BREAK - -case 75: +case 86: YY_RULE_SETUP -#line 483 "xbt/graphxml.l" BUFFERDONE; LEAVE; YY_BREAK case YY_STATE_EOF(VALUE2): -#line 484 "xbt/graphxml.l" FAIL("EOF in literal (`\"' expected)."); YY_BREAK - -case 76: -/* rule 76 can match eol */ +case 87: +/* rule 87 can match eol */ YY_RULE_SETUP -#line 488 "xbt/graphxml.l" BUFFERPUTC(xbt_graph_parse_text[0]); YY_BREAK -case 77: +case 88: YY_RULE_SETUP -#line 489 "xbt/graphxml.l" FAIL("Spurious `%c' in character data.",xbt_graph_parse_text[0]); YY_BREAK - -case 78: +case 89: YY_RULE_SETUP -#line 493 "xbt/graphxml.l" LEAVE; YY_BREAK /* "]""]" BUFFERPUTC(xbt_graph_parse_text[0]); BUFFERPUTC(xbt_graph_parse_text[1]); */ -case 79: +case 90: YY_RULE_SETUP -#line 495 "xbt/graphxml.l" BUFFERPUTC(xbt_graph_parse_text[0]); YY_BREAK case YY_STATE_EOF(CDATA): -#line 496 "xbt/graphxml.l" FAIL("EOF in CDATA section."); YY_BREAK @@ -2069,19 +2220,16 @@ FAIL("EOF in CDATA section."); /* Ideally, this should be replaced by code in flexml.pl that generates just the states not covered by other rules. */ -case 80: -/* rule 80 can match eol */ +case 91: +/* rule 91 can match eol */ YY_RULE_SETUP -#line 503 "xbt/graphxml.l" FAIL("Syntax error on character `%c'.", xbt_graph_parse_text[0]); YY_BREAK -case 81: +case 92: YY_RULE_SETUP -#line 506 "xbt/graphxml.l" ECHO; YY_BREAK -#line 2085 "xbt/graphxml.c" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(ROOT_graphxml_graph): case YY_STATE_EOF(S_graphxml_graph_2): @@ -2318,7 +2466,7 @@ static int yy_get_next_buffer (void) /* Read in more data. */ YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), - (yy_n_chars), num_to_read ); + (yy_n_chars), (size_t) num_to_read ); YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); } @@ -2342,6 +2490,14 @@ static int yy_get_next_buffer (void) else ret_val = EOB_ACT_CONTINUE_SCAN; + if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { + /* Extend the array by 50%, plus the number we really need. */ + yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) xbt_graph_parse_realloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); + if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) + YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); + } + (yy_n_chars) += number_to_move; YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; @@ -2371,7 +2527,7 @@ static int yy_get_next_buffer (void) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 507 ) + if ( yy_current_state >= 564 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2399,11 +2555,11 @@ static int yy_get_next_buffer (void) while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 507 ) + if ( yy_current_state >= 564 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 506); + yy_is_jam = (yy_current_state == 563); return yy_is_jam ? 0 : yy_current_state; } @@ -2725,7 +2881,9 @@ static void xbt_graph_parse_ensure_buffer_stack (void) (yy_buffer_stack) = (struct yy_buffer_state**)xbt_graph_parse_alloc (num_to_alloc * sizeof(struct yy_buffer_state*) ); - + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in xbt_graph_parse_ensure_buffer_stack()" ); + memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); (yy_buffer_stack_max) = num_to_alloc; @@ -2743,6 +2901,8 @@ static void xbt_graph_parse_ensure_buffer_stack (void) ((yy_buffer_stack), num_to_alloc * sizeof(struct yy_buffer_state*) ); + if ( ! (yy_buffer_stack) ) + YY_FATAL_ERROR( "out of dynamic memory in xbt_graph_parse_ensure_buffer_stack()" ); /* zero only the new slots.*/ memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); @@ -2801,8 +2961,8 @@ YY_BUFFER_STATE xbt_graph_parse__scan_string (yyconst char * yystr ) /** Setup the input buffer state to scan the given bytes. The next call to xbt_graph_parse_lex() will * scan from a @e copy of @a bytes. - * @param bytes the byte buffer to scan - * @param len the number of bytes in the buffer pointed to by @a bytes. + * @param yybytes the byte buffer to scan + * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes. * * @return the newly allocated buffer state object. */ @@ -2852,8 +3012,7 @@ YY_BUFFER_STATE xbt_graph_parse__scan_bytes (yyconst char * yybytes, int _yyby (yy_start_stack) = (int *) xbt_graph_parse_realloc((void *) (yy_start_stack),new_size ); if ( ! (yy_start_stack) ) - YY_FATAL_ERROR( - "out of memory expanding start-condition stack" ); + YY_FATAL_ERROR( "out of memory expanding start-condition stack" ); } (yy_start_stack)[(yy_start_stack_ptr)++] = YY_START; @@ -3085,10 +3244,6 @@ void xbt_graph_parse_free (void * ptr ) #define YYTABLES_NAME "yytables" -#line 506 "xbt/graphxml.l" - - - /* Element context stack lookup. */ int graphxml_element_context(int i) { @@ -3102,19 +3257,39 @@ void print_yy_stack(char* fmt, ...) { int i = 0; va_list ap; va_start(ap, fmt); vfprintf(stderr, fmt, ap); - for (i=1; i