diff options
Diffstat (limited to 'binutils-2.22/binutils/rcparse.c')
-rw-r--r-- | binutils-2.22/binutils/rcparse.c | 1656 |
1 files changed, 859 insertions, 797 deletions
diff --git a/binutils-2.22/binutils/rcparse.c b/binutils-2.22/binutils/rcparse.c index 5b87727..f5e2aea 100644 --- a/binutils-2.22/binutils/rcparse.c +++ b/binutils-2.22/binutils/rcparse.c @@ -268,8 +268,8 @@ /* Copy the first part of user declarations. */ #line 1 "rcparse.y" /* rcparse.y -- parser for Windows rc files - Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2007, 2008 - Free Software Foundation, Inc. + Copyright 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 2007, 2008, + 2011 Free Software Foundation, Inc. Written by Ian Lance Taylor, Cygnus Support. Extended by Kai Tietz, Onevision. @@ -368,6 +368,7 @@ typedef union YYSTYPE rc_rcdata_item *rcdata_item; rc_fixed_versioninfo *fixver; rc_ver_info *verinfo; + rc_ver_stringtable *verstringtable; rc_ver_stringinfo *verstring; rc_ver_varinfo *vervar; rc_toolbar_item *toobar_item; @@ -400,7 +401,7 @@ typedef union YYSTYPE } suni; } /* Line 193 of yacc.c. */ -#line 404 "rcparse.c" +#line 405 "rcparse.c" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -413,7 +414,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 417 "rcparse.c" +#line 418 "rcparse.c" #ifdef short # undef short @@ -628,16 +629,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 2 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 835 +#define YYLAST 810 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 112 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 99 +#define YYNNTS 102 /* YYNRULES -- Number of rules. */ -#define YYNRULES 270 +#define YYNRULES 276 /* YYNRULES -- Number of states. */ -#define YYNSTATES 515 +#define YYNSTATES 520 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -711,15 +712,15 @@ static const yytype_uint16 yyprhs[] = 614, 616, 620, 624, 628, 631, 632, 639, 640, 644, 649, 652, 654, 656, 658, 660, 662, 664, 666, 668, 670, 672, 679, 684, 693, 694, 698, 701, 708, 709, - 716, 723, 727, 731, 735, 739, 743, 744, 753, 761, - 762, 768, 769, 773, 775, 777, 779, 781, 784, 786, - 789, 790, 793, 797, 802, 806, 807, 810, 811, 814, - 816, 818, 820, 822, 824, 826, 828, 830, 832, 834, - 837, 839, 841, 843, 846, 848, 851, 853, 856, 860, - 865, 867, 871, 872, 874, 877, 879, 881, 885, 888, - 891, 895, 899, 903, 907, 911, 915, 919, 923, 926, - 928, 930, 934, 937, 941, 945, 949, 953, 957, 961, - 965 + 716, 723, 727, 731, 735, 739, 743, 744, 750, 758, + 759, 765, 766, 772, 773, 777, 779, 781, 783, 785, + 788, 790, 793, 794, 797, 801, 806, 810, 811, 814, + 815, 818, 820, 822, 824, 826, 828, 830, 832, 834, + 836, 838, 841, 843, 845, 847, 849, 851, 854, 856, + 859, 861, 864, 866, 869, 873, 878, 880, 884, 885, + 887, 890, 892, 894, 898, 901, 904, 908, 912, 916, + 920, 924, 928, 932, 936, 939, 941, 943, 947, 950, + 954, 958, 962, 966, 970, 974, 978 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -729,132 +730,134 @@ static const yytype_int16 yyrhs[] = 113, 121, -1, 113, 122, -1, 113, 162, -1, 113, 163, -1, 113, 164, -1, 113, 165, -1, 113, 170, -1, 113, 173, -1, 113, 178, -1, 113, 183, -1, - 113, 182, -1, 113, 185, -1, 113, 97, -1, 190, - 5, 193, 3, 115, 4, -1, -1, 115, 116, -1, - 117, 208, -1, 117, 208, 108, 118, -1, 92, -1, - 209, -1, 119, -1, 118, 108, 119, -1, 118, 119, + 113, 182, -1, 113, 185, -1, 113, 97, -1, 191, + 5, 194, 3, 115, 4, -1, -1, 115, 116, -1, + 117, 211, -1, 117, 211, 108, 118, -1, 92, -1, + 212, -1, 119, -1, 118, 108, 119, -1, 118, 119, -1, 6, -1, 7, -1, 8, -1, 9, -1, 10, - -1, 11, -1, 190, 12, 195, 197, -1, 190, 13, - 194, 197, -1, -1, 190, 14, 195, 126, 209, 205, - 205, 205, 123, 127, 3, 128, 4, -1, -1, 190, - 15, 195, 126, 209, 205, 205, 205, 124, 127, 3, - 128, 4, -1, -1, 190, 15, 195, 126, 209, 205, - 205, 205, 205, 125, 127, 3, 128, 4, -1, -1, - 16, 109, 206, -1, -1, 127, 17, 198, -1, 127, - 18, 190, -1, 127, 19, 202, -1, 127, 16, 206, - -1, 127, 18, 198, -1, 127, 41, 206, 108, 198, - -1, 127, 41, 206, 108, 198, 205, -1, 127, 41, - 206, 108, 198, 205, 205, -1, 127, 41, 206, 108, - 198, 205, 205, 205, -1, 127, 57, 190, -1, 127, - 55, 206, -1, 127, 54, 206, 205, -1, 127, 56, - 206, -1, -1, 128, 129, -1, -1, 20, 153, 130, + -1, 11, -1, 191, 12, 196, 198, -1, 191, 13, + 195, 198, -1, -1, 191, 14, 196, 126, 212, 208, + 208, 208, 123, 127, 3, 128, 4, -1, -1, 191, + 15, 196, 126, 212, 208, 208, 208, 124, 127, 3, + 128, 4, -1, -1, 191, 15, 196, 126, 212, 208, + 208, 208, 208, 125, 127, 3, 128, 4, -1, -1, + 16, 109, 209, -1, -1, 127, 17, 199, -1, 127, + 18, 191, -1, 127, 19, 205, -1, 127, 16, 209, + -1, 127, 18, 199, -1, 127, 41, 209, 108, 199, + -1, 127, 41, 209, 108, 199, 208, -1, 127, 41, + 209, 108, 199, 208, 208, -1, 127, 41, 209, 108, + 199, 208, 208, 208, -1, 127, 57, 191, -1, 127, + 55, 209, -1, 127, 54, 209, 208, -1, 127, 56, + 209, -1, -1, 128, 129, -1, -1, 20, 153, 130, 151, -1, -1, 21, 153, 131, 151, -1, -1, 22, 153, 132, 151, -1, -1, 38, 153, 133, 151, -1, -1, 23, 153, 134, 151, -1, -1, 24, 135, 151, - -1, 10, 153, 206, 152, 156, 205, 205, 205, 205, - 204, 155, -1, 10, 153, 206, 152, 156, 205, 205, - 205, 205, 205, 205, 155, -1, -1, 25, 153, 136, + -1, 10, 153, 209, 152, 156, 208, 208, 208, 208, + 207, 155, -1, 10, 153, 209, 152, 156, 208, 208, + 208, 208, 208, 208, 155, -1, -1, 25, 153, 136, 151, -1, -1, 26, 153, 137, 151, -1, -1, 27, 138, 151, -1, -1, 28, 153, 139, 151, -1, -1, - 39, 153, 140, 151, -1, 42, 192, 206, 205, 205, - 155, -1, 42, 192, 206, 205, 205, 205, 205, 155, - -1, 42, 192, 206, 205, 205, 205, 205, 158, 204, - 155, -1, 42, 192, 206, 205, 205, 205, 205, 158, - 205, 205, 155, -1, -1, 40, 153, 141, 151, -1, + 39, 153, 140, 151, -1, 42, 193, 209, 208, 208, + 155, -1, 42, 193, 209, 208, 208, 208, 208, 155, + -1, 42, 193, 209, 208, 208, 208, 208, 158, 207, + 155, -1, 42, 193, 209, 208, 208, 208, 208, 158, + 208, 208, 155, -1, -1, 40, 153, 141, 151, -1, -1, 29, 142, 151, -1, -1, 30, 153, 143, 151, -1, -1, 31, 153, 144, 151, -1, -1, 32, 153, 145, 151, -1, -1, 33, 153, 146, 151, -1, -1, 34, 153, 147, 151, -1, -1, 35, 148, 151, -1, - -1, 36, 153, 149, 151, -1, -1, 37, 192, 206, - 108, 206, 108, 206, 108, 206, 108, 206, 108, 150, - 202, 204, -1, 206, 205, 205, 205, 205, 155, -1, - 206, 205, 205, 205, 205, 160, 204, 155, -1, 206, - 205, 205, 205, 205, 160, 205, 205, 155, -1, 108, - 154, -1, -1, 154, 108, -1, 209, -1, 198, -1, - -1, 3, 174, 4, -1, -1, 108, 157, 202, -1, - -1, 108, 159, 202, -1, -1, 108, 161, 202, -1, - 190, 41, 194, 197, -1, 190, 42, 194, 197, -1, - 54, 206, 205, -1, 190, 57, 193, 3, 166, 4, - -1, -1, 166, 167, -1, 59, 198, 205, 168, -1, - 59, 60, -1, 61, 198, 168, 3, 166, 4, -1, + -1, 36, 153, 149, 151, -1, -1, 37, 193, 209, + 108, 209, 108, 209, 108, 209, 108, 209, 108, 150, + 205, 207, -1, 209, 208, 208, 208, 208, 155, -1, + 209, 208, 208, 208, 208, 160, 207, 155, -1, 209, + 208, 208, 208, 208, 160, 208, 208, 155, -1, 108, + 154, -1, -1, 154, 108, -1, 212, -1, 199, -1, + -1, 3, 174, 4, -1, -1, 108, 157, 205, -1, + -1, 108, 159, 205, -1, -1, 108, 161, 205, -1, + 191, 41, 195, 198, -1, 191, 42, 195, 198, -1, + 54, 209, 208, -1, 191, 57, 194, 3, 166, 4, + -1, -1, 166, 167, -1, 59, 199, 208, 168, -1, + 59, 60, -1, 61, 199, 168, 3, 166, 4, -1, -1, 168, 108, 169, -1, 168, 169, -1, 62, -1, 63, -1, 64, -1, 65, -1, 66, -1, 67, -1, - 190, 58, 193, 3, 171, 4, -1, -1, 171, 172, - -1, 59, 198, -1, 59, 198, 205, -1, 59, 198, - 205, 205, 204, -1, 59, 60, -1, 61, 198, 3, - 171, 4, -1, 61, 198, 205, 3, 171, 4, -1, - 61, 198, 205, 205, 3, 171, 4, -1, 61, 198, - 205, 205, 205, 204, 3, 171, 4, -1, 190, 68, - 195, 197, -1, -1, 175, 176, -1, -1, 177, -1, - 200, -1, 201, -1, 207, -1, 177, 108, 200, -1, - 177, 108, 201, -1, 177, 108, 207, -1, 177, 108, - -1, -1, 70, 193, 3, 179, 180, 4, -1, -1, - 180, 206, 198, -1, 180, 206, 108, 198, -1, 180, - 1, -1, 190, -1, 48, -1, 69, -1, 49, -1, + 191, 58, 194, 3, 171, 4, -1, -1, 171, 172, + -1, 59, 199, -1, 59, 199, 208, -1, 59, 199, + 208, 208, 207, -1, 59, 60, -1, 61, 199, 3, + 171, 4, -1, 61, 199, 208, 3, 171, 4, -1, + 61, 199, 208, 208, 3, 171, 4, -1, 61, 199, + 208, 208, 208, 207, 3, 171, 4, -1, 191, 68, + 196, 198, -1, -1, 175, 176, -1, -1, 177, -1, + 203, -1, 204, -1, 210, -1, 177, 108, 203, -1, + 177, 108, 204, -1, 177, 108, 210, -1, 177, 108, + -1, -1, 70, 194, 3, 179, 180, 4, -1, -1, + 180, 209, 202, -1, 180, 209, 108, 202, -1, 180, + 1, -1, 191, -1, 48, -1, 69, -1, 49, -1, 50, -1, 51, -1, 45, -1, 46, -1, 43, -1, - 44, -1, 190, 181, 193, 3, 174, 4, -1, 190, - 181, 193, 197, -1, 190, 52, 193, 206, 205, 3, - 184, 4, -1, -1, 184, 53, 190, -1, 184, 60, - -1, 190, 71, 186, 3, 187, 4, -1, -1, 186, - 72, 206, 205, 205, 205, -1, 186, 73, 206, 205, - 205, 205, -1, 186, 74, 206, -1, 186, 75, 206, - -1, 186, 76, 206, -1, 186, 77, 206, -1, 186, - 78, 206, -1, -1, 187, 79, 3, 82, 3, 188, - 4, 4, -1, 187, 80, 3, 81, 198, 189, 4, - -1, -1, 188, 81, 198, 108, 198, -1, -1, 189, - 205, 205, -1, 209, -1, 191, -1, 199, -1, 93, - -1, 209, 108, -1, 191, -1, 191, 108, -1, -1, - 193, 196, -1, 193, 55, 206, -1, 193, 54, 206, - 205, -1, 193, 56, 206, -1, -1, 194, 196, -1, - -1, 195, 196, -1, 83, -1, 84, -1, 85, -1, - 86, -1, 87, -1, 88, -1, 89, -1, 92, -1, - 93, -1, 199, -1, 198, 199, -1, 91, -1, 92, - -1, 96, -1, 200, 96, -1, 95, -1, 201, 95, - -1, 203, -1, 90, 203, -1, 202, 98, 203, -1, - 202, 98, 90, 203, -1, 94, -1, 110, 206, 111, - -1, -1, 205, -1, 108, 206, -1, 207, -1, 94, - -1, 110, 207, 111, -1, 106, 207, -1, 102, 207, - -1, 207, 103, 207, -1, 207, 104, 207, -1, 207, - 105, 207, -1, 207, 101, 207, -1, 207, 102, 207, - -1, 207, 100, 207, -1, 207, 99, 207, -1, 207, - 98, 207, -1, 108, 209, -1, 210, -1, 94, -1, - 110, 207, 111, -1, 106, 207, -1, 210, 103, 207, - -1, 210, 104, 207, -1, 210, 105, 207, -1, 210, - 101, 207, -1, 210, 102, 207, -1, 210, 100, 207, - -1, 210, 99, 207, -1, 210, 98, 207, -1 + 44, -1, 191, 181, 194, 3, 174, 4, -1, 191, + 181, 194, 198, -1, 191, 52, 194, 209, 208, 3, + 184, 4, -1, -1, 184, 53, 191, -1, 184, 60, + -1, 191, 71, 186, 3, 187, 4, -1, -1, 186, + 72, 209, 208, 208, 208, -1, 186, 73, 209, 208, + 208, 208, -1, 186, 74, 209, -1, 186, 75, 209, + -1, 186, 76, 209, -1, 186, 77, 209, -1, 186, + 78, 209, -1, -1, 187, 79, 3, 188, 4, -1, + 187, 80, 3, 81, 199, 190, 4, -1, -1, 188, + 82, 3, 189, 4, -1, -1, 189, 81, 199, 108, + 199, -1, -1, 190, 208, 208, -1, 212, -1, 192, + -1, 200, -1, 93, -1, 212, 108, -1, 192, -1, + 192, 108, -1, -1, 194, 197, -1, 194, 55, 209, + -1, 194, 54, 209, 208, -1, 194, 56, 209, -1, + -1, 195, 197, -1, -1, 196, 197, -1, 83, -1, + 84, -1, 85, -1, 86, -1, 87, -1, 88, -1, + 89, -1, 92, -1, 93, -1, 200, -1, 199, 200, + -1, 91, -1, 92, -1, 204, -1, 203, -1, 201, + -1, 202, 201, -1, 96, -1, 203, 96, -1, 95, + -1, 204, 95, -1, 206, -1, 90, 206, -1, 205, + 98, 206, -1, 205, 98, 90, 206, -1, 94, -1, + 110, 209, 111, -1, -1, 208, -1, 108, 209, -1, + 210, -1, 94, -1, 110, 210, 111, -1, 106, 210, + -1, 102, 210, -1, 210, 103, 210, -1, 210, 104, + 210, -1, 210, 105, 210, -1, 210, 101, 210, -1, + 210, 102, 210, -1, 210, 100, 210, -1, 210, 99, + 210, -1, 210, 98, 210, -1, 108, 212, -1, 213, + -1, 94, -1, 110, 210, 111, -1, 106, 210, -1, + 213, 103, 210, -1, 213, 104, 210, -1, 213, 105, + 210, -1, 213, 101, 210, -1, 213, 102, 210, -1, + 213, 100, 210, -1, 213, 99, 210, -1, 213, 98, + 210, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 177, 177, 179, 180, 181, 182, 183, 184, 185, - 186, 187, 188, 189, 190, 191, 192, 193, 199, 210, - 213, 234, 239, 251, 271, 281, 285, 290, 297, 301, - 306, 310, 314, 318, 327, 339, 353, 351, 378, 376, - 405, 403, 435, 438, 444, 446, 452, 456, 461, 465, - 469, 482, 497, 512, 527, 531, 535, 539, 545, 547, - 559, 558, 571, 570, 583, 582, 595, 594, 610, 609, - 622, 621, 635, 646, 656, 655, 668, 667, 680, 679, - 692, 691, 704, 703, 718, 723, 729, 735, 742, 741, - 757, 756, 769, 768, 781, 780, 792, 791, 804, 803, - 816, 815, 828, 827, 840, 839, 853, 851, 872, 883, - 894, 906, 917, 920, 924, 929, 939, 942, 952, 951, - 958, 957, 964, 963, 971, 983, 996, 1005, 1016, 1019, - 1036, 1040, 1044, 1052, 1055, 1059, 1066, 1070, 1074, 1078, - 1082, 1086, 1095, 1106, 1109, 1126, 1130, 1134, 1138, 1142, - 1146, 1150, 1154, 1164, 1177, 1177, 1189, 1193, 1200, 1208, - 1216, 1224, 1233, 1242, 1251, 1261, 1260, 1265, 1267, 1272, - 1277, 1285, 1289, 1294, 1299, 1304, 1309, 1314, 1319, 1324, - 1329, 1340, 1347, 1357, 1363, 1364, 1383, 1408, 1419, 1424, - 1430, 1436, 1441, 1446, 1451, 1456, 1471, 1474, 1478, 1486, - 1489, 1497, 1500, 1509, 1514, 1523, 1527, 1537, 1542, 1546, - 1557, 1563, 1569, 1574, 1579, 1590, 1595, 1607, 1612, 1624, - 1629, 1634, 1639, 1644, 1649, 1654, 1664, 1668, 1676, 1681, - 1696, 1700, 1709, 1713, 1725, 1729, 1751, 1755, 1759, 1763, - 1770, 1774, 1784, 1787, 1796, 1805, 1814, 1818, 1822, 1827, - 1832, 1837, 1842, 1847, 1852, 1857, 1862, 1867, 1878, 1887, - 1898, 1902, 1906, 1911, 1916, 1921, 1926, 1931, 1936, 1941, - 1946 + 0, 179, 179, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 191, 192, 193, 194, 195, 201, 212, + 215, 236, 241, 253, 273, 283, 287, 292, 299, 303, + 308, 312, 316, 320, 329, 341, 355, 353, 380, 378, + 407, 405, 437, 440, 446, 448, 454, 458, 463, 467, + 471, 484, 499, 514, 529, 533, 537, 541, 547, 549, + 561, 560, 573, 572, 585, 584, 597, 596, 612, 611, + 624, 623, 637, 648, 658, 657, 670, 669, 682, 681, + 694, 693, 706, 705, 720, 725, 731, 737, 744, 743, + 759, 758, 771, 770, 783, 782, 794, 793, 806, 805, + 818, 817, 830, 829, 842, 841, 855, 853, 874, 885, + 896, 908, 919, 922, 926, 931, 941, 944, 954, 953, + 960, 959, 966, 965, 973, 985, 998, 1007, 1018, 1021, + 1038, 1042, 1046, 1054, 1057, 1061, 1068, 1072, 1076, 1080, + 1084, 1088, 1097, 1108, 1111, 1128, 1132, 1136, 1140, 1144, + 1148, 1152, 1156, 1166, 1179, 1179, 1191, 1195, 1202, 1210, + 1218, 1226, 1235, 1244, 1253, 1263, 1262, 1267, 1269, 1274, + 1279, 1287, 1291, 1296, 1301, 1306, 1311, 1316, 1321, 1326, + 1331, 1342, 1349, 1359, 1365, 1366, 1385, 1410, 1421, 1426, + 1432, 1438, 1443, 1448, 1453, 1458, 1473, 1476, 1480, 1488, + 1491, 1499, 1502, 1510, 1513, 1522, 1527, 1536, 1540, 1550, + 1555, 1559, 1570, 1576, 1582, 1587, 1592, 1603, 1608, 1620, + 1625, 1637, 1642, 1647, 1652, 1657, 1662, 1667, 1677, 1681, + 1689, 1694, 1709, 1713, 1722, 1726, 1738, 1743, 1759, 1763, + 1775, 1779, 1801, 1805, 1809, 1813, 1820, 1824, 1834, 1837, + 1846, 1855, 1864, 1868, 1872, 1877, 1882, 1887, 1892, 1897, + 1902, 1907, 1912, 1917, 1928, 1937, 1948, 1952, 1956, 1961, + 1966, 1971, 1976, 1981, 1986, 1991, 1996 }; #endif @@ -893,12 +896,13 @@ static const char *const yytname[] = "menuexitems", "menuexitem", "messagetable", "optrcdata_data", "@28", "optrcdata_data_int", "rcdata_data", "stringtable", "@29", "string_data", "rcdata_id", "user", "toolbar", "toolbar_data", "versioninfo", - "fixedverinfo", "verblocks", "vervals", "vertrans", "id", "resname", - "resref", "suboptions", "memflags_move_discard", "memflags_move", - "memflag", "file_name", "res_unicode_string_concat", - "res_unicode_string", "sizedstring", "sizedunistring", "styleexpr", - "parennumber", "optcnumexpr", "cnumexpr", "numexpr", "sizednumexpr", - "cposnumexpr", "posnumexpr", "sizedposnumexpr", 0 + "fixedverinfo", "verblocks", "verstringtables", "vervals", "vertrans", + "id", "resname", "resref", "suboptions", "memflags_move_discard", + "memflags_move", "memflag", "file_name", "res_unicode_string_concat", + "res_unicode_string", "res_unicode_sizedstring", + "res_unicode_sizedstring_concat", "sizedstring", "sizedunistring", + "styleexpr", "parennumber", "optcnumexpr", "cnumexpr", "numexpr", + "sizednumexpr", "cposnumexpr", "posnumexpr", "sizedposnumexpr", 0 }; #endif @@ -945,14 +949,14 @@ static const yytype_uint8 yyr1[] = 180, 181, 181, 181, 181, 181, 181, 181, 181, 181, 181, 182, 182, 183, 184, 184, 184, 185, 186, 186, 186, 186, 186, 186, 186, 186, 187, 187, 187, 188, - 188, 189, 189, 190, 190, 191, 191, 192, 192, 192, - 193, 193, 193, 193, 193, 194, 194, 195, 195, 196, - 196, 196, 196, 196, 196, 196, 197, 197, 198, 198, - 199, 199, 200, 200, 201, 201, 202, 202, 202, 202, - 203, 203, 204, 204, 205, 206, 207, 207, 207, 207, - 207, 207, 207, 207, 207, 207, 207, 207, 208, 209, - 210, 210, 210, 210, 210, 210, 210, 210, 210, 210, - 210 + 188, 189, 189, 190, 190, 191, 191, 192, 192, 193, + 193, 193, 194, 194, 194, 194, 194, 195, 195, 196, + 196, 197, 197, 197, 197, 197, 197, 197, 198, 198, + 199, 199, 200, 200, 201, 201, 202, 202, 203, 203, + 204, 204, 205, 205, 205, 205, 206, 206, 207, 207, + 208, 209, 210, 210, 210, 210, 210, 210, 210, 210, + 210, 210, 210, 210, 211, 212, 213, 213, 213, 213, + 213, 213, 213, 213, 213, 213, 213 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -977,15 +981,15 @@ static const yytype_uint8 yyr2[] = 1, 3, 3, 3, 2, 0, 6, 0, 3, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 6, 4, 8, 0, 3, 2, 6, 0, 6, - 6, 3, 3, 3, 3, 3, 0, 8, 7, 0, - 5, 0, 3, 1, 1, 1, 1, 2, 1, 2, - 0, 2, 3, 4, 3, 0, 2, 0, 2, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, - 1, 1, 1, 2, 1, 2, 1, 2, 3, 4, - 1, 3, 0, 1, 2, 1, 1, 3, 2, 2, - 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, - 1, 3, 2, 3, 3, 3, 3, 3, 3, 3, - 3 + 6, 3, 3, 3, 3, 3, 0, 5, 7, 0, + 5, 0, 5, 0, 3, 1, 1, 1, 1, 2, + 1, 2, 0, 2, 3, 4, 3, 0, 2, 0, + 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 2, 1, 1, 1, 1, 1, 2, 1, 2, + 1, 2, 1, 2, 3, 4, 1, 3, 0, 1, + 2, 1, 1, 3, 2, 2, 3, 3, 3, 3, + 3, 3, 3, 3, 2, 1, 1, 3, 2, 3, + 3, 3, 3, 3, 3, 3, 3 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -993,328 +997,326 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 2, 0, 1, 0, 210, 230, 231, 206, 260, 17, + 2, 0, 1, 0, 212, 232, 233, 208, 266, 17, 0, 0, 3, 4, 5, 6, 7, 8, 9, 10, - 11, 12, 13, 15, 14, 16, 0, 204, 205, 203, - 259, 246, 0, 0, 0, 0, 245, 0, 262, 0, - 210, 217, 215, 217, 217, 215, 215, 179, 180, 177, - 178, 172, 174, 175, 176, 210, 210, 210, 217, 173, - 188, 210, 171, 0, 0, 0, 0, 0, 0, 0, - 0, 249, 248, 0, 0, 126, 0, 0, 0, 0, - 0, 0, 0, 0, 165, 0, 0, 0, 219, 220, - 221, 222, 223, 224, 225, 211, 261, 0, 0, 0, + 11, 12, 13, 15, 14, 16, 0, 206, 207, 205, + 265, 252, 0, 0, 0, 0, 251, 0, 268, 0, + 212, 219, 217, 219, 219, 217, 217, 179, 180, 177, + 178, 172, 174, 175, 176, 212, 212, 212, 219, 173, + 188, 212, 171, 0, 0, 0, 0, 0, 0, 0, + 0, 255, 254, 0, 0, 126, 0, 0, 0, 0, + 0, 0, 0, 0, 165, 0, 0, 0, 221, 222, + 223, 224, 225, 226, 227, 213, 267, 0, 0, 0, 42, 42, 0, 0, 0, 0, 0, 0, 0, 0, - 270, 269, 268, 266, 267, 263, 264, 265, 247, 244, - 257, 256, 255, 253, 254, 250, 251, 252, 167, 0, - 212, 214, 19, 226, 227, 218, 34, 216, 35, 0, + 276, 275, 274, 272, 273, 269, 270, 271, 253, 250, + 263, 262, 261, 259, 260, 256, 257, 258, 167, 0, + 214, 216, 19, 228, 229, 220, 34, 218, 35, 0, 0, 0, 124, 125, 0, 128, 143, 153, 196, 0, - 0, 0, 0, 0, 0, 0, 154, 182, 0, 213, + 0, 0, 0, 0, 0, 0, 154, 182, 0, 215, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 191, 192, 193, 194, 195, 0, 156, 170, 166, 0, 18, 23, 20, 0, 24, 43, 0, 0, 184, 127, 0, 0, 129, 142, 0, 0, 144, 187, 0, 0, - 0, 0, 181, 234, 232, 155, 157, 158, 159, 160, - 0, 168, 228, 0, 21, 0, 0, 0, 131, 0, - 133, 148, 145, 0, 0, 0, 0, 0, 164, 233, - 235, 169, 229, 258, 0, 36, 38, 183, 0, 186, - 133, 0, 146, 143, 0, 0, 0, 189, 190, 161, - 162, 163, 28, 29, 30, 31, 32, 33, 22, 25, - 44, 44, 40, 185, 130, 128, 136, 137, 138, 139, - 140, 141, 0, 135, 242, 0, 143, 0, 199, 201, - 0, 27, 0, 0, 44, 0, 134, 147, 243, 149, - 0, 143, 242, 0, 0, 26, 58, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 58, 0, 132, 150, - 0, 0, 0, 0, 198, 0, 0, 48, 45, 46, - 49, 205, 0, 240, 0, 47, 236, 0, 0, 55, - 57, 54, 0, 58, 151, 143, 197, 0, 202, 37, - 112, 112, 112, 112, 112, 70, 112, 112, 78, 112, - 90, 112, 112, 112, 112, 112, 102, 112, 0, 112, - 112, 112, 0, 59, 237, 0, 0, 0, 56, 39, - 0, 0, 0, 0, 0, 115, 114, 60, 62, 64, - 68, 0, 74, 76, 0, 80, 0, 92, 94, 96, - 98, 100, 0, 104, 208, 0, 0, 66, 82, 88, - 0, 241, 0, 238, 50, 41, 152, 200, 0, 113, - 0, 0, 0, 0, 71, 0, 0, 0, 79, 0, - 91, 0, 0, 0, 0, 0, 103, 0, 209, 0, - 207, 0, 0, 0, 0, 239, 51, 0, 0, 61, - 63, 65, 69, 0, 75, 77, 81, 93, 95, 97, - 99, 101, 105, 0, 67, 83, 89, 0, 52, 111, - 118, 0, 0, 0, 116, 53, 0, 0, 0, 0, - 154, 84, 0, 119, 0, 116, 0, 0, 116, 0, - 122, 108, 242, 0, 117, 120, 85, 242, 242, 0, - 116, 243, 0, 0, 116, 243, 116, 243, 123, 109, - 116, 0, 121, 86, 116, 72, 116, 110, 0, 87, - 73, 106, 0, 242, 107 + 0, 0, 181, 240, 238, 155, 157, 158, 159, 160, + 0, 236, 168, 235, 234, 0, 21, 0, 0, 0, + 131, 0, 230, 133, 148, 145, 0, 199, 0, 0, + 0, 164, 239, 241, 169, 237, 264, 0, 36, 38, + 183, 0, 186, 231, 133, 0, 146, 143, 0, 0, + 0, 189, 190, 161, 162, 163, 28, 29, 30, 31, + 32, 33, 22, 25, 44, 44, 40, 185, 130, 128, + 136, 137, 138, 139, 140, 141, 0, 135, 248, 0, + 143, 0, 197, 0, 203, 0, 27, 0, 0, 44, + 0, 134, 147, 249, 149, 0, 143, 248, 201, 0, + 26, 58, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 58, 0, 132, 150, 0, 0, 0, 198, 0, + 0, 48, 45, 46, 49, 207, 0, 246, 0, 47, + 242, 0, 0, 55, 57, 54, 0, 58, 151, 143, + 200, 0, 204, 37, 112, 112, 112, 112, 112, 70, + 112, 112, 78, 112, 90, 112, 112, 112, 112, 112, + 102, 112, 0, 112, 112, 112, 0, 59, 243, 0, + 0, 0, 56, 39, 0, 0, 0, 0, 0, 115, + 114, 60, 62, 64, 68, 0, 74, 76, 0, 80, + 0, 92, 94, 96, 98, 100, 0, 104, 210, 0, + 0, 66, 82, 88, 0, 247, 0, 244, 50, 41, + 152, 0, 0, 113, 0, 0, 0, 0, 71, 0, + 0, 0, 79, 0, 91, 0, 0, 0, 0, 0, + 103, 0, 211, 0, 209, 0, 0, 0, 0, 245, + 51, 202, 0, 0, 61, 63, 65, 69, 0, 75, + 77, 81, 93, 95, 97, 99, 101, 105, 0, 67, + 83, 89, 0, 52, 111, 118, 0, 0, 0, 116, + 53, 0, 0, 0, 0, 154, 84, 0, 119, 0, + 116, 0, 0, 116, 0, 122, 108, 248, 0, 117, + 120, 85, 248, 248, 0, 116, 249, 0, 0, 116, + 249, 116, 249, 123, 109, 116, 0, 121, 86, 116, + 72, 116, 110, 0, 87, 73, 106, 0, 248, 107 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 1, 12, 160, 182, 183, 258, 259, 13, 14, - 15, 260, 261, 284, 140, 282, 316, 363, 410, 411, - 412, 431, 413, 381, 416, 417, 384, 419, 432, 433, - 386, 421, 422, 423, 424, 425, 392, 427, 512, 414, - 438, 373, 374, 471, 461, 466, 487, 493, 482, 489, - 16, 17, 18, 19, 165, 192, 241, 273, 20, 166, + -1, 1, 12, 160, 182, 183, 262, 263, 13, 14, + 15, 264, 265, 289, 140, 287, 320, 367, 414, 415, + 416, 435, 417, 385, 420, 421, 388, 423, 436, 437, + 390, 425, 426, 427, 428, 429, 396, 431, 517, 418, + 443, 377, 378, 476, 466, 471, 492, 498, 487, 494, + 16, 17, 18, 19, 165, 192, 245, 277, 20, 166, 196, 21, 175, 176, 205, 206, 22, 128, 158, 61, - 23, 24, 217, 25, 108, 167, 293, 294, 26, 27, - 395, 37, 99, 98, 95, 136, 375, 212, 207, 208, - 325, 326, 287, 288, 415, 36, 214, 376, 30 + 23, 24, 219, 25, 108, 167, 249, 317, 299, 26, + 27, 399, 37, 99, 98, 95, 136, 379, 222, 211, + 212, 213, 214, 329, 330, 292, 293, 419, 36, 216, + 380, 30 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -309 +#define YYPACT_NINF -283 static const yytype_int16 yypact[] = { - -309, 68, -309, 338, -309, -309, -309, -309, -309, -309, - 338, 338, -309, -309, -309, -309, -309, -309, -309, -309, - -309, -309, -309, -309, -309, -309, 458, -309, -309, -309, - 605, -309, 338, 338, 338, -92, 642, 230, -309, 534, - -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, - -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, - -309, -309, -309, 338, 338, 338, 338, 338, 338, 338, - 338, -309, -309, 695, 338, -309, 338, 338, 338, 338, - 338, 338, 338, 338, -309, 338, 338, 338, -309, -309, - -309, -309, -309, -309, -309, -309, -309, 329, 724, 724, - 242, 242, 724, 724, 499, 434, 457, 724, 192, 250, - 392, 718, 318, 174, 174, -309, -309, -309, -309, -309, - 392, 718, 318, 174, 174, -309, -309, -309, -309, -92, - -309, -309, -309, -309, -309, -309, -309, -309, -309, -81, - 263, 263, -309, -309, -92, -309, -309, -309, -309, 338, - 338, 338, 338, 338, 338, 338, -309, -309, 6, -309, - 13, 338, -92, -92, 48, 8, 105, 35, -92, -92, - -309, -309, -309, -309, -309, 53, 373, -309, -309, -38, - -309, -309, -309, -48, -309, -309, -92, -92, -309, -309, - -36, 7, -309, -309, 80, 7, -309, -309, 60, 103, - -92, -92, -309, -309, -309, -309, 17, 38, 47, 642, - 7, 7, -309, 263, 65, -92, -92, -1, -309, 163, - 7, -309, 163, 12, 74, 94, -92, -92, 373, -309, - -309, 7, -309, -309, 818, -309, -92, -309, 253, -309, - -309, 184, -92, -309, 5, 177, 7, -309, -309, 38, - 47, 642, -309, -309, -309, -309, -309, -309, 25, -309, - -309, -309, -309, -309, 155, -309, -309, -309, -309, -309, - -309, -309, 768, -309, -92, 120, -309, 10, -309, 7, - 818, -309, 556, 562, -309, 137, -309, -309, -309, -309, - 141, -309, -92, 21, 2, -309, -309, 338, 7, 253, - -46, 338, 338, 338, 338, 253, -309, 573, -309, -309, - 153, 188, 172, 7, -309, -92, 655, -309, 7, -309, - 7, 40, 27, -309, 338, 99, -309, 93, -92, -309, - -309, -309, 692, -309, -309, -309, -309, 168, -309, -309, - 258, 258, 258, 258, 258, -309, 258, 258, -309, 258, - -309, 258, 258, 258, 258, 258, -309, 258, 253, 258, - 258, 258, 253, -309, -309, 95, 98, 7, -309, -309, - 729, 173, 7, 338, 102, 7, -309, -309, -309, -309, - -309, 338, -309, -309, 338, -309, 338, -309, -309, -309, - -309, -309, 338, -309, 117, 338, 123, -309, -309, -309, - 338, -309, 27, -309, 163, -309, -309, 7, 128, -309, - 338, 338, 338, 338, -309, -92, 338, 338, -309, 338, - -309, 338, 338, 338, 338, 338, -309, 338, -309, 131, - -309, 338, 338, 338, -92, -309, -92, 258, 132, -309, - -309, -309, -309, -92, -309, -309, -309, -309, -309, -309, - -309, -309, -309, 338, -309, -309, -309, -92, -92, -309, - -309, -92, -92, 149, 18, -309, -46, -92, -92, 338, - -309, -309, -92, 99, -92, 19, 154, 203, 20, -92, - -309, -309, -92, 338, -309, -309, -309, -92, -92, -46, - 225, -92, 165, -46, 225, -92, 225, -92, 99, -309, - 225, 338, 99, -309, 225, -309, 225, -309, 182, -309, - -309, -309, -46, -71, -309 + -283, 34, -283, 191, -283, -283, -283, -283, -283, -283, + 191, 191, -283, -283, -283, -283, -283, -283, -283, -283, + -283, -283, -283, -283, -283, -283, 463, -283, -283, -283, + 589, -283, 191, 191, 191, -61, 626, 264, -283, 437, + -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, + -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, + -283, -283, -283, 191, 191, 191, 191, 191, 191, 191, + 191, -283, -283, 526, 191, -283, 191, 191, 191, 191, + 191, 191, 191, 191, -283, 191, 191, 191, -283, -283, + -283, -283, -283, -283, -283, -283, -283, 279, 694, 694, + 137, 137, 694, 694, 491, 404, 441, 694, 166, 253, + 699, 379, 301, 109, 109, -283, -283, -283, -283, -283, + 699, 379, 301, 109, 109, -283, -283, -283, -283, -61, + -283, -283, -283, -283, -283, -283, -283, -283, -283, -42, + 218, 218, -283, -283, -61, -283, -283, -283, -283, 191, + 191, 191, 191, 191, 191, 191, -283, -283, 0, -283, + -1, 191, -61, -61, 67, 76, 170, 17, -61, -61, + -283, -283, -283, -283, -283, 99, 325, -283, -283, 111, + -283, -283, -283, 37, -283, -283, -61, -61, -283, -283, + -40, -2, -283, -283, 94, -2, -283, -283, 162, 165, + -61, -61, -283, -283, -283, -283, 73, 98, 106, 626, + 88, -283, 88, 98, 106, 218, 100, -61, -61, 32, + -283, -53, -283, -2, -283, -53, 16, -283, 134, -61, + -61, 325, -283, -283, 88, -283, -283, 552, -283, -61, + -283, 265, -283, -283, -283, 53, -61, -283, 13, 18, + -2, -283, -283, 98, 106, 626, -283, -283, -283, -283, + -283, -283, 3, -283, -283, -283, -283, -283, -22, -283, + -283, -283, -283, -283, -283, -283, 743, -283, -61, 186, + -283, 14, -283, 243, -2, 552, -283, 259, 548, -283, + 193, -283, -283, -283, -283, 194, -283, -61, -283, 33, + -283, -283, 191, -2, 265, 70, 191, 191, 191, 191, + 265, -283, 565, -283, -283, 198, 247, 31, -283, -61, + 639, -283, -2, -283, -2, 203, 65, -283, 191, 163, + -283, 160, -61, -283, -283, -283, 676, -283, -283, -283, + -283, -2, -283, -283, 288, 288, 288, 288, 288, -283, + 288, 288, -283, 288, -283, 288, 288, 288, 288, 288, + -283, 288, 265, 288, 288, 288, 265, -283, -283, 168, + 83, -2, -283, -283, 713, 199, 180, 191, 173, -2, + -283, -283, -283, -283, -283, 191, -283, -283, 191, -283, + 191, -283, -283, -283, -283, -283, 191, -283, 179, 191, + 182, -283, -283, -283, 191, -283, 65, -283, -53, -283, + -283, -2, 184, -283, 191, 191, 191, 191, -283, -61, + 191, 191, -283, 191, -283, 191, 191, 191, 191, 191, + -283, 191, -283, 188, -283, 191, 191, 191, -61, -283, + -61, -2, 288, 202, -283, -283, -283, -283, -61, -283, + -283, -283, -283, -283, -283, -283, -283, -283, 191, -283, + -283, -283, -61, -61, -283, -283, -61, -61, 215, 15, + -283, 70, -61, -61, 191, -283, -283, -61, 163, -61, + 21, 222, 269, 28, -61, -283, -283, -61, 191, -283, + -283, -283, -61, -61, 70, 324, -61, 235, 70, 324, + -61, 324, -61, 163, -283, 324, 191, 163, -283, 324, + -283, 324, -283, 236, -283, -283, -283, 70, 81, -283 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -309, -309, -309, -309, -309, -309, -309, -240, -309, -309, - -309, -309, -309, -309, 144, -235, -295, -309, -309, -309, - -309, -309, -309, -309, -309, -309, -309, -309, -309, -309, - -309, -309, -309, -309, -309, -309, -309, -309, -309, 239, - -309, 431, -156, -100, -309, -309, -309, -309, -309, -309, - -309, -309, -309, -309, 26, -309, 56, 39, -309, -196, - -309, -309, -173, -309, -309, -309, -309, -309, -309, -309, - -309, -309, -309, -309, -309, -309, -309, -309, -25, -265, - -55, 232, 0, 333, 432, 375, -129, 4, 82, 84, - -237, -308, -283, -33, -3, 9, -309, 3, -309 + -283, -283, -283, -283, -283, -283, -283, -235, -283, -283, + -283, -283, -283, -283, 254, -240, -242, -283, -283, -283, + -283, -283, -283, -283, -283, -283, -283, -283, -283, -283, + -283, -283, -283, -283, -283, -283, -283, -283, -283, 219, + -283, 411, -82, -71, -283, -283, -283, -283, -283, -283, + -283, -283, -283, -283, 92, -283, 126, 96, -283, -104, + -283, -283, -99, -283, -283, -283, -283, -283, -283, -283, + -283, -283, -283, -283, -283, -283, -283, -283, -283, -24, + -232, 19, 209, 276, 240, 690, 489, -137, 7, -166, + 177, -150, -144, -117, -228, -282, -30, -3, -4, -283, + 22, -283 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -229 +#define YYTABLE_NINF -231 static const yytype_int16 yytable[] = { - 35, 62, 75, 237, 29, 28, 314, 177, 276, 311, - 178, 332, 189, 291, 364, 243, 74, 180, 281, 38, - 39, 470, 470, 470, 218, 312, 283, 366, 161, 29, - 28, 252, 253, 254, 255, 256, 257, 74, 370, 197, - 295, 71, 72, 73, 322, 102, 103, 275, 323, 307, - 211, 188, 238, 5, 6, 5, 6, 202, 403, 239, - 213, 219, 220, 224, 324, 222, 223, 190, 2, 191, - 210, 119, 110, 111, 112, 113, 114, 115, 116, 117, - 290, 231, 129, 130, 131, 120, 121, 122, 123, 124, - 125, 126, 127, 394, 435, 310, 159, 394, 5, 6, - 31, 144, 313, 5, 6, 181, 225, 8, 32, 193, - 74, 164, 33, 74, 198, 199, 34, 279, 74, 10, - 74, 323, 3, 11, 289, 228, 74, 480, 485, 186, - 187, -228, -228, 280, 229, 200, 201, 324, 4, 371, - 221, 308, 230, 162, 163, 309, 168, 169, 170, 171, - 172, 173, 174, 215, 216, 179, 245, 334, 185, 5, - 6, 7, 8, 184, 194, 9, 195, 226, 227, 318, - 320, 5, 6, 234, 10, 246, 336, 406, 11, 194, - 278, 195, 235, 236, 337, 209, 240, 265, 402, 242, - 244, 335, 323, 247, 248, 148, 190, 366, 191, 490, - 194, 367, 195, 262, 494, 496, 401, 484, 324, 274, - 409, 277, 194, 263, 195, 232, 233, 266, 267, 268, - 269, 270, 271, 232, 232, 428, 232, 232, 470, 473, - 514, 430, 194, 84, 195, 232, 437, 251, 404, 453, - 460, 29, 28, 407, 292, 141, 266, 267, 268, 269, - 270, 271, 498, 156, 5, 6, 502, 469, 139, 5, - 6, 315, 483, 272, 149, 150, 151, 152, 153, 154, - 155, 74, 97, 501, 319, 513, 372, 81, 82, 83, - 331, 459, 338, 232, 85, 86, 87, 104, 105, 106, - 511, 285, 272, 109, 317, 368, 264, 477, 327, 328, - 329, 330, 29, 321, 85, 86, 87, 400, 29, 28, - 249, 286, 250, 88, 89, 90, 91, 92, 93, 94, - 0, 365, 232, 0, 232, 88, 89, 90, 91, 92, - 93, 94, 132, 88, 89, 90, 91, 92, 93, 94, - 0, 232, 133, 134, 5, 6, 7, 8, 0, 5, - 6, 0, 8, 0, 0, 0, 0, 8, 0, 10, - 0, 396, 28, 11, 10, 396, 28, 0, 11, 10, - 408, 436, 0, 11, 0, 481, 100, 101, 486, 232, - 0, 0, 443, 85, 86, 87, 0, 0, 0, 0, - 499, 107, 429, 0, 503, 0, 505, 434, 0, 0, - 507, 457, 0, 458, 509, 0, 510, 0, 232, 0, - 462, 232, 88, 89, 90, 91, 92, 93, 94, 79, - 80, 81, 82, 83, 464, 465, 0, 0, 467, 468, - 0, 472, 31, 0, 474, 475, 0, 145, 0, 478, - 32, 479, 0, 0, 33, 0, 488, 0, 34, 491, - 463, 0, 0, 0, 495, 497, 0, 0, 500, 0, - 146, 0, 504, 40, 506, 0, 476, 31, 203, 204, - 41, 42, 43, 44, 138, 32, 0, 142, 143, 33, - 492, 0, 147, 34, 157, 0, 0, 0, 85, 86, - 87, 77, 78, 79, 80, 81, 82, 83, 508, 45, - 46, 47, 48, 49, 50, 0, 51, 52, 53, 54, - 55, 85, 86, 87, 0, 56, 57, 88, 89, 90, - 91, 92, 93, 94, 0, 0, 58, 59, 0, 60, - 135, 137, 135, 135, 137, 137, 0, 0, 0, 135, - 88, 89, 90, 91, 92, 93, 94, 0, 0, 5, - 6, 7, 8, 85, 86, 87, 0, 0, 0, 296, - 0, 0, 0, 0, 10, 306, 0, 0, 11, 0, - 0, 0, 297, 298, 299, 300, 333, 0, 297, 298, - 299, 300, 88, 89, 90, 91, 92, 93, 94, 297, - 298, 299, 300, 31, 0, 0, 0, 301, 0, 0, - 0, 32, 0, 301, 0, 33, 0, 0, 0, 34, - 302, 303, 304, 305, 301, 0, 302, 303, 304, 305, - 0, 0, 0, 418, 0, 420, 0, 302, 303, 304, - 305, 426, 76, 77, 78, 79, 80, 81, 82, 83, - 0, 0, 0, 0, 0, 96, 0, 0, 0, 439, - 440, 441, 442, 0, 0, 444, 445, 0, 446, 339, - 447, 448, 449, 450, 451, 340, 452, 0, 0, 0, - 454, 455, 456, 0, 0, 341, 342, 343, 344, 345, + 35, 177, 62, 180, 178, 75, 38, 39, 28, 256, + 257, 258, 259, 260, 261, 316, 280, 296, 475, 247, + 220, 197, 282, 29, 475, 288, 207, 286, 71, 72, + 73, 475, 208, 28, 2, 340, 240, 318, 5, 6, + 270, 271, 272, 273, 274, 275, 235, 74, 29, 312, + 300, 5, 6, 221, 223, 74, 269, 225, 226, 110, + 111, 112, 113, 114, 115, 116, 117, 161, 235, 336, + 188, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 189, 253, 129, 130, 131, 241, 276, 254, 3, 5, + 6, 181, 242, 8, 31, 374, 198, 199, 368, 159, + 283, 144, 32, 202, 4, 10, 33, 5, 6, 11, + 34, 285, 341, 284, 164, 270, 271, 272, 273, 274, + 275, 74, 74, 74, 74, 5, 6, 7, 8, 485, + 398, 9, 186, 187, 398, 190, 490, 191, 200, 201, + 10, 74, 407, 279, 11, 215, 168, 169, 170, 171, + 172, 173, 174, 139, 224, 179, 217, 218, 185, 327, + 326, 276, 162, 163, 327, 227, 322, 324, 228, 148, + 229, 230, 209, 406, 193, 328, 295, 327, 439, 370, + 328, 231, 184, 203, 204, 5, 6, 238, 239, 74, + 294, 244, 315, 328, 232, 246, 248, 313, 314, 251, + 252, 233, 338, 410, 376, 495, 203, 204, 237, 266, + 499, 501, 81, 82, 83, 250, 278, 267, 281, 210, + 88, 89, 90, 91, 92, 93, 94, 255, 243, 194, + 243, 195, 243, 243, 408, 375, 519, 236, 149, 150, + 151, 152, 153, 154, 155, 194, 298, 195, 28, 97, + 339, 297, 190, 194, 191, 195, 156, 194, 194, 195, + 195, 370, 301, 29, 104, 105, 106, 84, 371, 319, + 109, 5, 6, 489, 441, 302, 303, 304, 305, 405, + 323, 413, 132, 100, 101, 31, 335, 432, 411, 342, + 434, 243, 442, 32, -230, -230, 458, 33, 107, 321, + 306, 34, 372, 331, 332, 333, 334, 85, 86, 87, + 465, 325, 8, 307, 308, 309, 310, 28, 85, 86, + 87, 102, 103, 474, 10, 369, 29, 475, 11, 243, + 488, 243, 29, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 506, 516, 133, 134, 88, 89, 90, + 91, 92, 93, 94, 478, 141, 5, 6, 7, 8, + 464, 290, 88, 89, 90, 91, 92, 93, 94, 28, + 268, 10, 291, 28, 412, 11, 482, 503, 440, 5, + 6, 507, 8, 243, 400, 404, 243, 234, 400, 448, + 0, 0, 0, 0, 10, 0, 433, 0, 11, 0, + 518, 438, 79, 80, 81, 82, 83, 145, 462, 486, + 463, 0, 491, 0, 0, 243, 0, 0, 467, 31, + 203, 204, 0, 0, 504, 0, 0, 32, 508, 0, + 510, 33, 469, 470, 512, 34, 472, 473, 514, 477, + 515, 0, 479, 480, 146, 0, 0, 483, 243, 484, + 0, 0, 0, 0, 493, 468, 0, 496, 85, 86, + 87, 0, 500, 502, 0, 0, 505, 0, 40, 0, + 509, 481, 511, 0, 0, 41, 42, 43, 44, 78, + 79, 80, 81, 82, 83, 497, 0, 88, 89, 90, + 91, 92, 93, 94, 0, 85, 86, 87, 0, 0, + 0, 0, 0, 513, 45, 46, 47, 48, 49, 50, + 0, 51, 52, 53, 54, 55, 0, 0, 0, 0, + 56, 57, 0, 0, 88, 89, 90, 91, 92, 93, + 94, 58, 59, 0, 60, 76, 77, 78, 79, 80, + 81, 82, 83, 0, 0, 85, 86, 87, 96, 0, + 0, 311, 0, 0, 5, 6, 7, 8, 256, 257, + 258, 259, 260, 261, 302, 303, 304, 305, 337, 10, + 0, 0, 0, 11, 88, 89, 90, 91, 92, 93, + 94, 302, 303, 304, 305, 31, 0, 0, 138, 306, + 0, 142, 143, 32, 0, 0, 147, 33, 157, 0, + 0, 34, 307, 308, 309, 310, 306, 422, 0, 424, + 0, 0, 0, 0, 0, 430, 0, 0, 0, 307, + 308, 309, 310, 0, 76, 77, 78, 79, 80, 81, + 82, 83, 0, 444, 445, 446, 447, 118, 0, 449, + 450, 0, 451, 343, 452, 453, 454, 455, 456, 344, + 457, 0, 0, 0, 459, 460, 461, 0, 0, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, - 356, 357, 358, 359, 360, 361, 369, 362, 0, 0, - 0, 0, 340, 63, 64, 65, 66, 67, 68, 69, - 70, 0, 341, 342, 343, 344, 345, 346, 347, 348, + 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, + 373, 366, 0, 0, 0, 0, 344, 63, 64, 65, + 66, 67, 68, 69, 70, 0, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, - 359, 360, 361, 405, 362, 0, 0, 0, 0, 340, - 76, 77, 78, 79, 80, 81, 82, 83, 0, 341, - 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, + 359, 360, 361, 362, 363, 364, 365, 409, 366, 0, + 0, 0, 0, 344, 76, 77, 78, 79, 80, 81, + 82, 83, 0, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, - 0, 362, 377, 378, 379, 380, 0, 382, 383, 0, - 385, 0, 387, 388, 389, 390, 391, 0, 393, 0, - 397, 398, 399, 76, 77, 78, 79, 80, 81, 82, - 83, 0, 0, 0, 0, 0, 118, 88, 89, 90, - 91, 92, 93, 94, 0, 0, 133, 134, 78, 79, - 80, 81, 82, 83, 252, 253, 254, 255, 256, 257, - 266, 267, 268, 269, 270, 271 + 362, 363, 364, 365, 0, 366, 381, 382, 383, 384, + 0, 386, 387, 0, 389, 0, 391, 392, 393, 394, + 395, 0, 397, 0, 401, 402, 403, 88, 89, 90, + 91, 92, 93, 94, 0, 0, 133, 134, 135, 137, + 135, 135, 137, 137, 0, 0, 0, 135, 77, 78, + 79, 80, 81, 82, 83, 270, 271, 272, 273, 274, + 275 }; static const yytype_int16 yycheck[] = { - 3, 26, 35, 4, 1, 1, 4, 1, 3, 292, - 4, 306, 4, 3, 322, 3, 108, 4, 258, 10, - 11, 3, 3, 3, 60, 4, 261, 98, 109, 26, - 26, 6, 7, 8, 9, 10, 11, 108, 333, 4, - 280, 32, 33, 34, 90, 45, 46, 243, 94, 284, - 179, 3, 53, 91, 92, 91, 92, 4, 366, 60, - 108, 190, 191, 3, 110, 194, 195, 59, 0, 61, - 108, 74, 63, 64, 65, 66, 67, 68, 69, 70, - 276, 210, 85, 86, 87, 76, 77, 78, 79, 80, - 81, 82, 83, 358, 402, 291, 129, 362, 91, 92, - 94, 104, 81, 91, 92, 92, 3, 94, 102, 4, - 108, 144, 106, 108, 79, 80, 110, 246, 108, 106, - 108, 94, 54, 110, 4, 108, 108, 108, 108, 162, - 163, 91, 92, 108, 96, 168, 169, 110, 70, 335, - 60, 4, 95, 140, 141, 4, 149, 150, 151, 152, - 153, 154, 155, 186, 187, 158, 82, 4, 161, 91, - 92, 93, 94, 160, 59, 97, 61, 200, 201, 298, - 299, 91, 92, 108, 106, 81, 4, 4, 110, 59, - 3, 61, 215, 216, 313, 176, 219, 3, 90, 222, - 223, 3, 94, 226, 227, 3, 59, 98, 61, 482, - 59, 108, 61, 236, 487, 488, 111, 4, 110, 242, - 108, 244, 59, 238, 61, 211, 213, 62, 63, 64, - 65, 66, 67, 219, 220, 108, 222, 223, 3, 466, - 513, 108, 59, 3, 61, 231, 108, 228, 367, 108, - 108, 238, 238, 372, 277, 101, 62, 63, 64, 65, - 66, 67, 489, 3, 91, 92, 493, 108, 16, 91, - 92, 294, 108, 108, 72, 73, 74, 75, 76, 77, - 78, 108, 40, 108, 299, 512, 108, 103, 104, 105, - 305, 437, 315, 279, 54, 55, 56, 55, 56, 57, - 108, 265, 108, 61, 297, 328, 240, 470, 301, 302, - 303, 304, 299, 299, 54, 55, 56, 362, 305, 305, - 228, 272, 228, 83, 84, 85, 86, 87, 88, 89, - -1, 324, 318, -1, 320, 83, 84, 85, 86, 87, - 88, 89, 3, 83, 84, 85, 86, 87, 88, 89, - -1, 337, 92, 93, 91, 92, 93, 94, -1, 91, - 92, -1, 94, -1, -1, -1, -1, 94, -1, 106, - -1, 358, 358, 110, 106, 362, 362, -1, 110, 106, - 373, 404, -1, 110, -1, 475, 43, 44, 478, 375, - -1, -1, 415, 54, 55, 56, -1, -1, -1, -1, - 490, 58, 395, -1, 494, -1, 496, 400, -1, -1, - 500, 434, -1, 436, 504, -1, 506, -1, 404, -1, - 443, 407, 83, 84, 85, 86, 87, 88, 89, 101, - 102, 103, 104, 105, 457, 458, -1, -1, 461, 462, - -1, 464, 94, -1, 467, 468, -1, 3, -1, 472, - 102, 474, -1, -1, 106, -1, 479, -1, 110, 482, - 453, -1, -1, -1, 487, 488, -1, -1, 491, -1, - 3, -1, 495, 5, 497, -1, 469, 94, 95, 96, - 12, 13, 14, 15, 99, 102, -1, 102, 103, 106, - 483, -1, 107, 110, 109, -1, -1, -1, 54, 55, - 56, 99, 100, 101, 102, 103, 104, 105, 501, 41, - 42, 43, 44, 45, 46, -1, 48, 49, 50, 51, - 52, 54, 55, 56, -1, 57, 58, 83, 84, 85, - 86, 87, 88, 89, -1, -1, 68, 69, -1, 71, - 98, 99, 100, 101, 102, 103, -1, -1, -1, 107, - 83, 84, 85, 86, 87, 88, 89, -1, -1, 91, - 92, 93, 94, 54, 55, 56, -1, -1, -1, 3, - -1, -1, -1, -1, 106, 3, -1, -1, 110, -1, - -1, -1, 16, 17, 18, 19, 3, -1, 16, 17, - 18, 19, 83, 84, 85, 86, 87, 88, 89, 16, - 17, 18, 19, 94, -1, -1, -1, 41, -1, -1, - -1, 102, -1, 41, -1, 106, -1, -1, -1, 110, - 54, 55, 56, 57, 41, -1, 54, 55, 56, 57, - -1, -1, -1, 384, -1, 386, -1, 54, 55, 56, - 57, 392, 98, 99, 100, 101, 102, 103, 104, 105, - -1, -1, -1, -1, -1, 111, -1, -1, -1, 410, - 411, 412, 413, -1, -1, 416, 417, -1, 419, 4, - 421, 422, 423, 424, 425, 10, 427, -1, -1, -1, - 431, 432, 433, -1, -1, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 4, 42, -1, -1, - -1, -1, 10, 98, 99, 100, 101, 102, 103, 104, - 105, -1, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 4, 42, -1, -1, -1, -1, 10, - 98, 99, 100, 101, 102, 103, 104, 105, -1, 20, + 3, 1, 26, 4, 4, 35, 10, 11, 1, 6, + 7, 8, 9, 10, 11, 297, 3, 3, 3, 3, + 60, 4, 4, 1, 3, 265, 176, 262, 32, 33, + 34, 3, 176, 26, 0, 4, 4, 4, 91, 92, + 62, 63, 64, 65, 66, 67, 212, 108, 26, 289, + 285, 91, 92, 190, 191, 108, 3, 194, 195, 63, + 64, 65, 66, 67, 68, 69, 70, 109, 234, 311, + 3, 74, 76, 77, 78, 79, 80, 81, 82, 83, + 4, 231, 85, 86, 87, 53, 108, 231, 54, 91, + 92, 92, 60, 94, 94, 337, 79, 80, 326, 129, + 82, 104, 102, 4, 70, 106, 106, 91, 92, 110, + 110, 108, 81, 250, 144, 62, 63, 64, 65, 66, + 67, 108, 108, 108, 108, 91, 92, 93, 94, 108, + 362, 97, 162, 163, 366, 59, 108, 61, 168, 169, + 106, 108, 370, 247, 110, 108, 149, 150, 151, 152, + 153, 154, 155, 16, 60, 158, 186, 187, 161, 94, + 90, 108, 140, 141, 94, 3, 303, 304, 3, 3, + 200, 201, 176, 90, 4, 110, 280, 94, 406, 98, + 110, 108, 160, 95, 96, 91, 92, 217, 218, 108, + 4, 221, 296, 110, 96, 225, 226, 4, 4, 229, + 230, 95, 4, 4, 341, 487, 95, 96, 108, 239, + 492, 493, 103, 104, 105, 81, 246, 241, 248, 108, + 83, 84, 85, 86, 87, 88, 89, 231, 221, 59, + 223, 61, 225, 226, 371, 339, 518, 215, 72, 73, + 74, 75, 76, 77, 78, 59, 3, 61, 241, 40, + 3, 281, 59, 59, 61, 61, 3, 59, 59, 61, + 61, 98, 3, 241, 55, 56, 57, 3, 108, 299, + 61, 91, 92, 4, 411, 16, 17, 18, 19, 111, + 304, 108, 3, 43, 44, 94, 310, 108, 108, 319, + 108, 284, 108, 102, 91, 92, 108, 106, 58, 302, + 41, 110, 332, 306, 307, 308, 309, 54, 55, 56, + 108, 304, 94, 54, 55, 56, 57, 310, 54, 55, + 56, 45, 46, 108, 106, 328, 304, 3, 110, 322, + 108, 324, 310, 54, 55, 56, 83, 84, 85, 86, + 87, 88, 89, 108, 108, 92, 93, 83, 84, 85, + 86, 87, 88, 89, 471, 101, 91, 92, 93, 94, + 442, 269, 83, 84, 85, 86, 87, 88, 89, 362, + 244, 106, 276, 366, 377, 110, 475, 494, 408, 91, + 92, 498, 94, 376, 362, 366, 379, 210, 366, 419, + -1, -1, -1, -1, 106, -1, 399, -1, 110, -1, + 517, 404, 101, 102, 103, 104, 105, 3, 438, 480, + 440, -1, 483, -1, -1, 408, -1, -1, 448, 94, + 95, 96, -1, -1, 495, -1, -1, 102, 499, -1, + 501, 106, 462, 463, 505, 110, 466, 467, 509, 469, + 511, -1, 472, 473, 3, -1, -1, 477, 441, 479, + -1, -1, -1, -1, 484, 458, -1, 487, 54, 55, + 56, -1, 492, 493, -1, -1, 496, -1, 5, -1, + 500, 474, 502, -1, -1, 12, 13, 14, 15, 100, + 101, 102, 103, 104, 105, 488, -1, 83, 84, 85, + 86, 87, 88, 89, -1, 54, 55, 56, -1, -1, + -1, -1, -1, 506, 41, 42, 43, 44, 45, 46, + -1, 48, 49, 50, 51, 52, -1, -1, -1, -1, + 57, 58, -1, -1, 83, 84, 85, 86, 87, 88, + 89, 68, 69, -1, 71, 98, 99, 100, 101, 102, + 103, 104, 105, -1, -1, 54, 55, 56, 111, -1, + -1, 3, -1, -1, 91, 92, 93, 94, 6, 7, + 8, 9, 10, 11, 16, 17, 18, 19, 3, 106, + -1, -1, -1, 110, 83, 84, 85, 86, 87, 88, + 89, 16, 17, 18, 19, 94, -1, -1, 99, 41, + -1, 102, 103, 102, -1, -1, 107, 106, 109, -1, + -1, 110, 54, 55, 56, 57, 41, 388, -1, 390, + -1, -1, -1, -1, -1, 396, -1, -1, -1, 54, + 55, 56, 57, -1, 98, 99, 100, 101, 102, 103, + 104, 105, -1, 414, 415, 416, 417, 111, -1, 420, + 421, -1, 423, 4, 425, 426, 427, 428, 429, 10, + 431, -1, -1, -1, 435, 436, 437, -1, -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - -1, 42, 341, 342, 343, 344, -1, 346, 347, -1, - 349, -1, 351, 352, 353, 354, 355, -1, 357, -1, - 359, 360, 361, 98, 99, 100, 101, 102, 103, 104, - 105, -1, -1, -1, -1, -1, 111, 83, 84, 85, - 86, 87, 88, 89, -1, -1, 92, 93, 100, 101, - 102, 103, 104, 105, 6, 7, 8, 9, 10, 11, - 62, 63, 64, 65, 66, 67 + 4, 42, -1, -1, -1, -1, 10, 98, 99, 100, + 101, 102, 103, 104, 105, -1, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 4, 42, -1, + -1, -1, -1, 10, 98, 99, 100, 101, 102, 103, + 104, 105, -1, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, -1, 42, 345, 346, 347, 348, + -1, 350, 351, -1, 353, -1, 355, 356, 357, 358, + 359, -1, 361, -1, 363, 364, 365, 83, 84, 85, + 86, 87, 88, 89, -1, -1, 92, 93, 98, 99, + 100, 101, 102, 103, -1, -1, -1, 107, 99, 100, + 101, 102, 103, 104, 105, 62, 63, 64, 65, 66, + 67 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -1323,56 +1325,56 @@ static const yytype_uint8 yystos[] = { 0, 113, 0, 54, 70, 91, 92, 93, 94, 97, 106, 110, 114, 120, 121, 122, 162, 163, 164, 165, - 170, 173, 178, 182, 183, 185, 190, 191, 199, 209, - 210, 94, 102, 106, 110, 206, 207, 193, 207, 207, + 170, 173, 178, 182, 183, 185, 191, 192, 200, 212, + 213, 94, 102, 106, 110, 209, 210, 194, 210, 210, 5, 12, 13, 14, 15, 41, 42, 43, 44, 45, 46, 48, 49, 50, 51, 52, 57, 58, 68, 69, - 71, 181, 190, 98, 99, 100, 101, 102, 103, 104, - 105, 207, 207, 207, 108, 205, 98, 99, 100, 101, + 71, 181, 191, 98, 99, 100, 101, 102, 103, 104, + 105, 210, 210, 210, 108, 208, 98, 99, 100, 101, 102, 103, 104, 105, 3, 54, 55, 56, 83, 84, - 85, 86, 87, 88, 89, 196, 111, 193, 195, 194, - 195, 195, 194, 194, 193, 193, 193, 195, 186, 193, - 207, 207, 207, 207, 207, 207, 207, 207, 111, 206, - 207, 207, 207, 207, 207, 207, 207, 207, 179, 206, - 206, 206, 3, 92, 93, 196, 197, 196, 197, 16, - 126, 126, 197, 197, 206, 3, 3, 197, 3, 72, - 73, 74, 75, 76, 77, 78, 3, 197, 180, 205, - 115, 109, 209, 209, 205, 166, 171, 187, 206, 206, - 206, 206, 206, 206, 206, 174, 175, 1, 4, 206, - 4, 92, 116, 117, 209, 206, 205, 205, 3, 4, + 85, 86, 87, 88, 89, 197, 111, 194, 196, 195, + 196, 196, 195, 195, 194, 194, 194, 196, 186, 194, + 210, 210, 210, 210, 210, 210, 210, 210, 111, 209, + 210, 210, 210, 210, 210, 210, 210, 210, 179, 209, + 209, 209, 3, 92, 93, 197, 198, 197, 198, 16, + 126, 126, 198, 198, 209, 3, 3, 198, 3, 72, + 73, 74, 75, 76, 77, 78, 3, 198, 180, 208, + 115, 109, 212, 212, 208, 166, 171, 187, 209, 209, + 209, 209, 209, 209, 209, 174, 175, 1, 4, 209, + 4, 92, 116, 117, 212, 209, 208, 208, 3, 4, 59, 61, 167, 4, 59, 61, 172, 4, 79, 80, - 205, 205, 4, 95, 96, 176, 177, 200, 201, 207, - 108, 198, 199, 108, 208, 205, 205, 184, 60, 198, - 198, 60, 198, 198, 3, 3, 205, 205, 108, 96, - 95, 198, 199, 209, 108, 205, 205, 4, 53, 60, - 205, 168, 205, 3, 205, 82, 81, 205, 205, 200, - 201, 207, 6, 7, 8, 9, 10, 11, 118, 119, - 123, 124, 205, 190, 168, 3, 62, 63, 64, 65, - 66, 67, 108, 169, 205, 171, 3, 205, 3, 198, - 108, 119, 127, 127, 125, 166, 169, 204, 205, 4, - 171, 3, 205, 188, 189, 119, 3, 16, 17, 18, - 19, 41, 54, 55, 56, 57, 3, 127, 4, 4, - 171, 204, 4, 81, 4, 205, 128, 206, 198, 190, - 198, 199, 90, 94, 110, 202, 203, 206, 206, 206, - 206, 190, 128, 3, 4, 3, 4, 198, 205, 4, - 10, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 42, 129, 203, 206, 98, 108, 205, 4, - 128, 171, 108, 153, 154, 198, 209, 153, 153, 153, - 153, 135, 153, 153, 138, 153, 142, 153, 153, 153, - 153, 153, 148, 153, 191, 192, 209, 153, 153, 153, - 192, 111, 90, 203, 198, 4, 4, 198, 206, 108, - 130, 131, 132, 134, 151, 206, 136, 137, 151, 139, - 151, 143, 144, 145, 146, 147, 151, 149, 108, 206, - 108, 133, 140, 141, 206, 203, 205, 108, 152, 151, - 151, 151, 151, 205, 151, 151, 151, 151, 151, 151, - 151, 151, 151, 108, 151, 151, 151, 205, 205, 154, - 108, 156, 205, 206, 205, 205, 157, 205, 205, 108, - 3, 155, 205, 202, 205, 205, 206, 174, 205, 205, - 108, 155, 160, 108, 4, 108, 155, 158, 205, 161, - 204, 205, 206, 159, 204, 205, 204, 205, 202, 155, - 205, 108, 202, 155, 205, 155, 205, 155, 206, 155, - 155, 108, 150, 202, 204 + 208, 208, 4, 95, 96, 176, 177, 203, 204, 210, + 108, 201, 202, 203, 204, 108, 211, 208, 208, 184, + 60, 199, 200, 199, 60, 199, 199, 3, 3, 208, + 208, 108, 96, 95, 202, 201, 212, 108, 208, 208, + 4, 53, 60, 200, 208, 168, 208, 3, 208, 188, + 81, 208, 208, 203, 204, 210, 6, 7, 8, 9, + 10, 11, 118, 119, 123, 124, 208, 191, 168, 3, + 62, 63, 64, 65, 66, 67, 108, 169, 208, 171, + 3, 208, 4, 82, 199, 108, 119, 127, 127, 125, + 166, 169, 207, 208, 4, 171, 3, 208, 3, 190, + 119, 3, 16, 17, 18, 19, 41, 54, 55, 56, + 57, 3, 127, 4, 4, 171, 207, 189, 4, 208, + 128, 209, 199, 191, 199, 200, 90, 94, 110, 205, + 206, 209, 209, 209, 209, 191, 128, 3, 4, 3, + 4, 81, 208, 4, 10, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 42, 129, 206, 209, + 98, 108, 208, 4, 128, 171, 199, 153, 154, 199, + 212, 153, 153, 153, 153, 135, 153, 153, 138, 153, + 142, 153, 153, 153, 153, 153, 148, 153, 192, 193, + 212, 153, 153, 153, 193, 111, 90, 206, 199, 4, + 4, 108, 209, 108, 130, 131, 132, 134, 151, 209, + 136, 137, 151, 139, 151, 143, 144, 145, 146, 147, + 151, 149, 108, 209, 108, 133, 140, 141, 209, 206, + 208, 199, 108, 152, 151, 151, 151, 151, 208, 151, + 151, 151, 151, 151, 151, 151, 151, 151, 108, 151, + 151, 151, 208, 208, 154, 108, 156, 208, 209, 208, + 208, 157, 208, 208, 108, 3, 155, 208, 205, 208, + 208, 209, 174, 208, 208, 108, 155, 160, 108, 4, + 108, 155, 158, 208, 161, 207, 208, 209, 159, 207, + 208, 207, 208, 205, 155, 208, 108, 205, 155, 208, + 155, 208, 155, 209, 155, 155, 108, 150, 205, 207 }; #define yyerrok (yyerrstatus = 0) @@ -2187,7 +2189,7 @@ yyreduce: switch (yyn) { case 18: -#line 200 "rcparse.y" +#line 202 "rcparse.y" { define_accelerator ((yyvsp[(1) - (6)].id), &(yyvsp[(3) - (6)].res_info), (yyvsp[(5) - (6)].pacc)); if (yychar != YYEMPTY) @@ -2197,14 +2199,14 @@ yyreduce: break; case 19: -#line 210 "rcparse.y" +#line 212 "rcparse.y" { (yyval.pacc) = NULL; } break; case 20: -#line 214 "rcparse.y" +#line 216 "rcparse.y" { rc_accelerator *a; @@ -2225,7 +2227,7 @@ yyreduce: break; case 21: -#line 235 "rcparse.y" +#line 237 "rcparse.y" { (yyval.acc) = (yyvsp[(1) - (2)].acc); (yyval.acc).id = (yyvsp[(2) - (2)].il); @@ -2233,7 +2235,7 @@ yyreduce: break; case 22: -#line 240 "rcparse.y" +#line 242 "rcparse.y" { (yyval.acc) = (yyvsp[(1) - (4)].acc); (yyval.acc).id = (yyvsp[(2) - (4)].il); @@ -2245,7 +2247,7 @@ yyreduce: break; case 23: -#line 252 "rcparse.y" +#line 254 "rcparse.y" { const char *s = (yyvsp[(1) - (1)].s); char ch; @@ -2268,7 +2270,7 @@ yyreduce: break; case 24: -#line 272 "rcparse.y" +#line 274 "rcparse.y" { (yyval.acc).next = NULL; (yyval.acc).flags = 0; @@ -2278,35 +2280,35 @@ yyreduce: break; case 25: -#line 282 "rcparse.y" +#line 284 "rcparse.y" { (yyval.is) = (yyvsp[(1) - (1)].is); } break; case 26: -#line 286 "rcparse.y" +#line 288 "rcparse.y" { (yyval.is) = (yyvsp[(1) - (3)].is) | (yyvsp[(3) - (3)].is); } break; case 27: -#line 291 "rcparse.y" +#line 293 "rcparse.y" { (yyval.is) = (yyvsp[(1) - (2)].is) | (yyvsp[(2) - (2)].is); } break; case 28: -#line 298 "rcparse.y" +#line 300 "rcparse.y" { (yyval.is) = ACC_VIRTKEY; } break; case 29: -#line 302 "rcparse.y" +#line 304 "rcparse.y" { /* This is just the absence of VIRTKEY. */ (yyval.is) = 0; @@ -2314,35 +2316,35 @@ yyreduce: break; case 30: -#line 307 "rcparse.y" +#line 309 "rcparse.y" { (yyval.is) = ACC_NOINVERT; } break; case 31: -#line 311 "rcparse.y" +#line 313 "rcparse.y" { (yyval.is) = ACC_SHIFT; } break; case 32: -#line 315 "rcparse.y" +#line 317 "rcparse.y" { (yyval.is) = ACC_CONTROL; } break; case 33: -#line 319 "rcparse.y" +#line 321 "rcparse.y" { (yyval.is) = ACC_ALT; } break; case 34: -#line 328 "rcparse.y" +#line 330 "rcparse.y" { define_bitmap ((yyvsp[(1) - (4)].id), &(yyvsp[(3) - (4)].res_info), (yyvsp[(4) - (4)].s)); if (yychar != YYEMPTY) @@ -2352,7 +2354,7 @@ yyreduce: break; case 35: -#line 340 "rcparse.y" +#line 342 "rcparse.y" { define_cursor ((yyvsp[(1) - (4)].id), &(yyvsp[(3) - (4)].res_info), (yyvsp[(4) - (4)].s)); if (yychar != YYEMPTY) @@ -2362,7 +2364,7 @@ yyreduce: break; case 36: -#line 353 "rcparse.y" +#line 355 "rcparse.y" { memset (&dialog, 0, sizeof dialog); dialog.x = (yyvsp[(5) - (8)].il); @@ -2382,7 +2384,7 @@ yyreduce: break; case 37: -#line 370 "rcparse.y" +#line 372 "rcparse.y" { define_dialog ((yyvsp[(1) - (13)].id), &sub_res_info, &dialog); if (yychar != YYEMPTY) @@ -2392,7 +2394,7 @@ yyreduce: break; case 38: -#line 378 "rcparse.y" +#line 380 "rcparse.y" { memset (&dialog, 0, sizeof dialog); dialog.x = (yyvsp[(5) - (8)].il); @@ -2414,7 +2416,7 @@ yyreduce: break; case 39: -#line 397 "rcparse.y" +#line 399 "rcparse.y" { define_dialog ((yyvsp[(1) - (13)].id), &sub_res_info, &dialog); if (yychar != YYEMPTY) @@ -2424,7 +2426,7 @@ yyreduce: break; case 40: -#line 405 "rcparse.y" +#line 407 "rcparse.y" { memset (&dialog, 0, sizeof dialog); dialog.x = (yyvsp[(5) - (9)].il); @@ -2447,7 +2449,7 @@ yyreduce: break; case 41: -#line 425 "rcparse.y" +#line 427 "rcparse.y" { define_dialog ((yyvsp[(1) - (14)].id), &sub_res_info, &dialog); if (yychar != YYEMPTY) @@ -2457,21 +2459,21 @@ yyreduce: break; case 42: -#line 435 "rcparse.y" +#line 437 "rcparse.y" { (yyval.il) = 0; } break; case 43: -#line 439 "rcparse.y" +#line 441 "rcparse.y" { (yyval.il) = (yyvsp[(3) - (3)].il); } break; case 45: -#line 447 "rcparse.y" +#line 449 "rcparse.y" { dialog.style |= WS_CAPTION; style |= WS_CAPTION; @@ -2480,35 +2482,35 @@ yyreduce: break; case 46: -#line 453 "rcparse.y" +#line 455 "rcparse.y" { dialog.class = (yyvsp[(3) - (3)].id); } break; case 47: -#line 458 "rcparse.y" +#line 460 "rcparse.y" { dialog.style = style; } break; case 48: -#line 462 "rcparse.y" +#line 464 "rcparse.y" { dialog.exstyle = (yyvsp[(3) - (3)].il); } break; case 49: -#line 466 "rcparse.y" +#line 468 "rcparse.y" { res_unistring_to_id (& dialog.class, (yyvsp[(3) - (3)].uni)); } break; case 50: -#line 470 "rcparse.y" +#line 472 "rcparse.y" { dialog.style |= DS_SETFONT; style |= DS_SETFONT; @@ -2524,7 +2526,7 @@ yyreduce: break; case 51: -#line 483 "rcparse.y" +#line 485 "rcparse.y" { dialog.style |= DS_SETFONT; style |= DS_SETFONT; @@ -2542,7 +2544,7 @@ yyreduce: break; case 52: -#line 498 "rcparse.y" +#line 500 "rcparse.y" { dialog.style |= DS_SETFONT; style |= DS_SETFONT; @@ -2560,7 +2562,7 @@ yyreduce: break; case 53: -#line 513 "rcparse.y" +#line 515 "rcparse.y" { dialog.style |= DS_SETFONT; style |= DS_SETFONT; @@ -2578,35 +2580,35 @@ yyreduce: break; case 54: -#line 528 "rcparse.y" +#line 530 "rcparse.y" { dialog.menu = (yyvsp[(3) - (3)].id); } break; case 55: -#line 532 "rcparse.y" +#line 534 "rcparse.y" { sub_res_info.characteristics = (yyvsp[(3) - (3)].il); } break; case 56: -#line 536 "rcparse.y" +#line 538 "rcparse.y" { sub_res_info.language = (yyvsp[(3) - (4)].il) | ((yyvsp[(4) - (4)].il) << SUBLANG_SHIFT); } break; case 57: -#line 540 "rcparse.y" +#line 542 "rcparse.y" { sub_res_info.version = (yyvsp[(3) - (3)].il); } break; case 59: -#line 548 "rcparse.y" +#line 550 "rcparse.y" { rc_dialog_control **pp; @@ -2617,7 +2619,7 @@ yyreduce: break; case 60: -#line 559 "rcparse.y" +#line 561 "rcparse.y" { default_style = BS_AUTO3STATE | WS_TABSTOP; base_style = BS_AUTO3STATE; @@ -2628,14 +2630,14 @@ yyreduce: break; case 61: -#line 567 "rcparse.y" +#line 569 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 62: -#line 571 "rcparse.y" +#line 573 "rcparse.y" { default_style = BS_AUTOCHECKBOX | WS_TABSTOP; base_style = BS_AUTOCHECKBOX; @@ -2646,14 +2648,14 @@ yyreduce: break; case 63: -#line 579 "rcparse.y" +#line 581 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 64: -#line 583 "rcparse.y" +#line 585 "rcparse.y" { default_style = BS_AUTORADIOBUTTON | WS_TABSTOP; base_style = BS_AUTORADIOBUTTON; @@ -2664,14 +2666,14 @@ yyreduce: break; case 65: -#line 591 "rcparse.y" +#line 593 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 66: -#line 595 "rcparse.y" +#line 597 "rcparse.y" { default_style = ES_LEFT | WS_BORDER | WS_TABSTOP; base_style = ES_LEFT | WS_BORDER | WS_TABSTOP; @@ -2682,7 +2684,7 @@ yyreduce: break; case 67: -#line 603 "rcparse.y" +#line 605 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); if (dialog.ex == NULL) @@ -2692,7 +2694,7 @@ yyreduce: break; case 68: -#line 610 "rcparse.y" +#line 612 "rcparse.y" { default_style = BS_CHECKBOX | WS_TABSTOP; base_style = BS_CHECKBOX | WS_TABSTOP; @@ -2703,14 +2705,14 @@ yyreduce: break; case 69: -#line 618 "rcparse.y" +#line 620 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 70: -#line 622 "rcparse.y" +#line 624 "rcparse.y" { /* This is as per MSDN documentation. With some (???) versions of MS rc.exe their is no default style. */ @@ -2723,14 +2725,14 @@ yyreduce: break; case 71: -#line 632 "rcparse.y" +#line 634 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(3) - (3)].dialog_control); } break; case 72: -#line 637 "rcparse.y" +#line 639 "rcparse.y" { (yyval.dialog_control) = define_control ((yyvsp[(2) - (11)].id), (yyvsp[(3) - (11)].il), (yyvsp[(6) - (11)].il), (yyvsp[(7) - (11)].il), (yyvsp[(8) - (11)].il), (yyvsp[(9) - (11)].il), (yyvsp[(4) - (11)].id), style, (yyvsp[(10) - (11)].il)); if ((yyvsp[(11) - (11)].rcdata_item) != NULL) @@ -2743,7 +2745,7 @@ yyreduce: break; case 73: -#line 648 "rcparse.y" +#line 650 "rcparse.y" { (yyval.dialog_control) = define_control ((yyvsp[(2) - (12)].id), (yyvsp[(3) - (12)].il), (yyvsp[(6) - (12)].il), (yyvsp[(7) - (12)].il), (yyvsp[(8) - (12)].il), (yyvsp[(9) - (12)].il), (yyvsp[(4) - (12)].id), style, (yyvsp[(10) - (12)].il)); if (dialog.ex == NULL) @@ -2754,7 +2756,7 @@ yyreduce: break; case 74: -#line 656 "rcparse.y" +#line 658 "rcparse.y" { default_style = SS_CENTER | WS_GROUP; base_style = SS_CENTER; @@ -2765,14 +2767,14 @@ yyreduce: break; case 75: -#line 664 "rcparse.y" +#line 666 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 76: -#line 668 "rcparse.y" +#line 670 "rcparse.y" { default_style = BS_DEFPUSHBUTTON | WS_TABSTOP; base_style = BS_DEFPUSHBUTTON | WS_TABSTOP; @@ -2783,14 +2785,14 @@ yyreduce: break; case 77: -#line 676 "rcparse.y" +#line 678 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 78: -#line 680 "rcparse.y" +#line 682 "rcparse.y" { default_style = ES_LEFT | WS_BORDER | WS_TABSTOP; base_style = ES_LEFT | WS_BORDER | WS_TABSTOP; @@ -2801,14 +2803,14 @@ yyreduce: break; case 79: -#line 688 "rcparse.y" +#line 690 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(3) - (3)].dialog_control); } break; case 80: -#line 692 "rcparse.y" +#line 694 "rcparse.y" { default_style = BS_GROUPBOX; base_style = BS_GROUPBOX; @@ -2819,14 +2821,14 @@ yyreduce: break; case 81: -#line 700 "rcparse.y" +#line 702 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 82: -#line 704 "rcparse.y" +#line 706 "rcparse.y" { default_style = ES_LEFT | WS_BORDER | WS_TABSTOP; base_style = ES_LEFT | WS_BORDER | WS_TABSTOP; @@ -2837,7 +2839,7 @@ yyreduce: break; case 83: -#line 712 "rcparse.y" +#line 714 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); if (dialog.ex == NULL) @@ -2847,7 +2849,7 @@ yyreduce: break; case 84: -#line 719 "rcparse.y" +#line 721 "rcparse.y" { (yyval.dialog_control) = define_icon_control ((yyvsp[(2) - (6)].id), (yyvsp[(3) - (6)].il), (yyvsp[(4) - (6)].il), (yyvsp[(5) - (6)].il), 0, 0, 0, (yyvsp[(6) - (6)].rcdata_item), dialog.ex); @@ -2855,7 +2857,7 @@ yyreduce: break; case 85: -#line 725 "rcparse.y" +#line 727 "rcparse.y" { (yyval.dialog_control) = define_icon_control ((yyvsp[(2) - (8)].id), (yyvsp[(3) - (8)].il), (yyvsp[(4) - (8)].il), (yyvsp[(5) - (8)].il), 0, 0, 0, (yyvsp[(8) - (8)].rcdata_item), dialog.ex); @@ -2863,7 +2865,7 @@ yyreduce: break; case 86: -#line 731 "rcparse.y" +#line 733 "rcparse.y" { (yyval.dialog_control) = define_icon_control ((yyvsp[(2) - (10)].id), (yyvsp[(3) - (10)].il), (yyvsp[(4) - (10)].il), (yyvsp[(5) - (10)].il), style, (yyvsp[(9) - (10)].il), 0, (yyvsp[(10) - (10)].rcdata_item), dialog.ex); @@ -2871,7 +2873,7 @@ yyreduce: break; case 87: -#line 737 "rcparse.y" +#line 739 "rcparse.y" { (yyval.dialog_control) = define_icon_control ((yyvsp[(2) - (11)].id), (yyvsp[(3) - (11)].il), (yyvsp[(4) - (11)].il), (yyvsp[(5) - (11)].il), style, (yyvsp[(9) - (11)].il), (yyvsp[(10) - (11)].il), (yyvsp[(11) - (11)].rcdata_item), dialog.ex); @@ -2879,7 +2881,7 @@ yyreduce: break; case 88: -#line 742 "rcparse.y" +#line 744 "rcparse.y" { default_style = ES_LEFT | WS_BORDER | WS_TABSTOP; base_style = ES_LEFT | WS_BORDER | WS_TABSTOP; @@ -2890,7 +2892,7 @@ yyreduce: break; case 89: -#line 750 "rcparse.y" +#line 752 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); if (dialog.ex == NULL) @@ -2900,7 +2902,7 @@ yyreduce: break; case 90: -#line 757 "rcparse.y" +#line 759 "rcparse.y" { default_style = LBS_NOTIFY | WS_BORDER; base_style = LBS_NOTIFY | WS_BORDER; @@ -2911,14 +2913,14 @@ yyreduce: break; case 91: -#line 765 "rcparse.y" +#line 767 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(3) - (3)].dialog_control); } break; case 92: -#line 769 "rcparse.y" +#line 771 "rcparse.y" { default_style = SS_LEFT | WS_GROUP; base_style = SS_LEFT; @@ -2929,14 +2931,14 @@ yyreduce: break; case 93: -#line 777 "rcparse.y" +#line 779 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 94: -#line 781 "rcparse.y" +#line 783 "rcparse.y" { default_style = BS_PUSHBOX | WS_TABSTOP; base_style = BS_PUSHBOX; @@ -2946,14 +2948,14 @@ yyreduce: break; case 95: -#line 788 "rcparse.y" +#line 790 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 96: -#line 792 "rcparse.y" +#line 794 "rcparse.y" { default_style = BS_PUSHBUTTON | WS_TABSTOP; base_style = BS_PUSHBUTTON | WS_TABSTOP; @@ -2964,14 +2966,14 @@ yyreduce: break; case 97: -#line 800 "rcparse.y" +#line 802 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 98: -#line 804 "rcparse.y" +#line 806 "rcparse.y" { default_style = BS_RADIOBUTTON | WS_TABSTOP; base_style = BS_RADIOBUTTON; @@ -2982,14 +2984,14 @@ yyreduce: break; case 99: -#line 812 "rcparse.y" +#line 814 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 100: -#line 816 "rcparse.y" +#line 818 "rcparse.y" { default_style = SS_RIGHT | WS_GROUP; base_style = SS_RIGHT; @@ -3000,14 +3002,14 @@ yyreduce: break; case 101: -#line 824 "rcparse.y" +#line 826 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 102: -#line 828 "rcparse.y" +#line 830 "rcparse.y" { default_style = SBS_HORZ; base_style = 0; @@ -3018,14 +3020,14 @@ yyreduce: break; case 103: -#line 836 "rcparse.y" +#line 838 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(3) - (3)].dialog_control); } break; case 104: -#line 840 "rcparse.y" +#line 842 "rcparse.y" { default_style = BS_3STATE | WS_TABSTOP; base_style = BS_3STATE; @@ -3036,19 +3038,19 @@ yyreduce: break; case 105: -#line 848 "rcparse.y" +#line 850 "rcparse.y" { (yyval.dialog_control) = (yyvsp[(4) - (4)].dialog_control); } break; case 106: -#line 853 "rcparse.y" +#line 855 "rcparse.y" { style = WS_CHILD | WS_VISIBLE; } break; case 107: -#line 855 "rcparse.y" +#line 857 "rcparse.y" { rc_res_id cid; cid.named = 0; @@ -3059,7 +3061,7 @@ yyreduce: break; case 108: -#line 873 "rcparse.y" +#line 875 "rcparse.y" { (yyval.dialog_control) = define_control (res_text_field, (yyvsp[(1) - (6)].il), (yyvsp[(2) - (6)].il), (yyvsp[(3) - (6)].il), (yyvsp[(4) - (6)].il), (yyvsp[(5) - (6)].il), class, default_style | WS_CHILD | WS_VISIBLE, 0); @@ -3073,7 +3075,7 @@ yyreduce: break; case 109: -#line 885 "rcparse.y" +#line 887 "rcparse.y" { (yyval.dialog_control) = define_control (res_text_field, (yyvsp[(1) - (8)].il), (yyvsp[(2) - (8)].il), (yyvsp[(3) - (8)].il), (yyvsp[(4) - (8)].il), (yyvsp[(5) - (8)].il), class, style, (yyvsp[(7) - (8)].il)); if ((yyvsp[(8) - (8)].rcdata_item) != NULL) @@ -3086,7 +3088,7 @@ yyreduce: break; case 110: -#line 896 "rcparse.y" +#line 898 "rcparse.y" { (yyval.dialog_control) = define_control (res_text_field, (yyvsp[(1) - (9)].il), (yyvsp[(2) - (9)].il), (yyvsp[(3) - (9)].il), (yyvsp[(4) - (9)].il), (yyvsp[(5) - (9)].il), class, style, (yyvsp[(7) - (9)].il)); if (dialog.ex == NULL) @@ -3097,7 +3099,7 @@ yyreduce: break; case 111: -#line 907 "rcparse.y" +#line 909 "rcparse.y" { if ((yyvsp[(2) - (2)].id).named) res_unistring_to_id (&(yyval.id), (yyvsp[(2) - (2)].id).u.n.name); @@ -3107,19 +3109,19 @@ yyreduce: break; case 112: -#line 917 "rcparse.y" +#line 919 "rcparse.y" { res_string_to_id (&(yyval.id), ""); } break; case 113: -#line 920 "rcparse.y" +#line 922 "rcparse.y" { (yyval.id)=(yyvsp[(1) - (2)].id); } break; case 114: -#line 925 "rcparse.y" +#line 927 "rcparse.y" { (yyval.id).named = 0; (yyval.id).u.id = (yyvsp[(1) - (1)].il); @@ -3127,7 +3129,7 @@ yyreduce: break; case 115: -#line 930 "rcparse.y" +#line 932 "rcparse.y" { (yyval.id).named = 1; (yyval.id).u.n.name = (yyvsp[(1) - (1)].uni); @@ -3136,36 +3138,36 @@ yyreduce: break; case 116: -#line 939 "rcparse.y" +#line 941 "rcparse.y" { (yyval.rcdata_item) = NULL; } break; case 117: -#line 943 "rcparse.y" +#line 945 "rcparse.y" { (yyval.rcdata_item) = (yyvsp[(2) - (3)].rcdata).first; } break; case 118: -#line 952 "rcparse.y" +#line 954 "rcparse.y" { style = WS_CHILD | WS_VISIBLE; } break; case 120: -#line 958 "rcparse.y" +#line 960 "rcparse.y" { style = SS_ICON | WS_CHILD | WS_VISIBLE; } break; case 122: -#line 964 "rcparse.y" +#line 966 "rcparse.y" { style = base_style | WS_CHILD | WS_VISIBLE; } break; case 124: -#line 972 "rcparse.y" +#line 974 "rcparse.y" { define_font ((yyvsp[(1) - (4)].id), &(yyvsp[(3) - (4)].res_info), (yyvsp[(4) - (4)].s)); if (yychar != YYEMPTY) @@ -3175,7 +3177,7 @@ yyreduce: break; case 125: -#line 984 "rcparse.y" +#line 986 "rcparse.y" { define_icon ((yyvsp[(1) - (4)].id), &(yyvsp[(3) - (4)].res_info), (yyvsp[(4) - (4)].s)); if (yychar != YYEMPTY) @@ -3185,14 +3187,14 @@ yyreduce: break; case 126: -#line 997 "rcparse.y" +#line 999 "rcparse.y" { language = (yyvsp[(2) - (3)].il) | ((yyvsp[(3) - (3)].il) << SUBLANG_SHIFT); } break; case 127: -#line 1006 "rcparse.y" +#line 1008 "rcparse.y" { define_menu ((yyvsp[(1) - (6)].id), &(yyvsp[(3) - (6)].res_info), (yyvsp[(5) - (6)].menuitem)); if (yychar != YYEMPTY) @@ -3202,14 +3204,14 @@ yyreduce: break; case 128: -#line 1016 "rcparse.y" +#line 1018 "rcparse.y" { (yyval.menuitem) = NULL; } break; case 129: -#line 1020 "rcparse.y" +#line 1022 "rcparse.y" { if ((yyvsp[(1) - (2)].menuitem) == NULL) (yyval.menuitem) = (yyvsp[(2) - (2)].menuitem); @@ -3226,91 +3228,91 @@ yyreduce: break; case 130: -#line 1037 "rcparse.y" +#line 1039 "rcparse.y" { (yyval.menuitem) = define_menuitem ((yyvsp[(2) - (4)].uni), (yyvsp[(3) - (4)].il), (yyvsp[(4) - (4)].is), 0, 0, NULL); } break; case 131: -#line 1041 "rcparse.y" +#line 1043 "rcparse.y" { (yyval.menuitem) = define_menuitem (NULL, 0, 0, 0, 0, NULL); } break; case 132: -#line 1045 "rcparse.y" +#line 1047 "rcparse.y" { (yyval.menuitem) = define_menuitem ((yyvsp[(2) - (6)].uni), 0, (yyvsp[(3) - (6)].is), 0, 0, (yyvsp[(5) - (6)].menuitem)); } break; case 133: -#line 1052 "rcparse.y" +#line 1054 "rcparse.y" { (yyval.is) = 0; } break; case 134: -#line 1056 "rcparse.y" +#line 1058 "rcparse.y" { (yyval.is) = (yyvsp[(1) - (3)].is) | (yyvsp[(3) - (3)].is); } break; case 135: -#line 1060 "rcparse.y" +#line 1062 "rcparse.y" { (yyval.is) = (yyvsp[(1) - (2)].is) | (yyvsp[(2) - (2)].is); } break; case 136: -#line 1067 "rcparse.y" +#line 1069 "rcparse.y" { (yyval.is) = MENUITEM_CHECKED; } break; case 137: -#line 1071 "rcparse.y" +#line 1073 "rcparse.y" { (yyval.is) = MENUITEM_GRAYED; } break; case 138: -#line 1075 "rcparse.y" +#line 1077 "rcparse.y" { (yyval.is) = MENUITEM_HELP; } break; case 139: -#line 1079 "rcparse.y" +#line 1081 "rcparse.y" { (yyval.is) = MENUITEM_INACTIVE; } break; case 140: -#line 1083 "rcparse.y" +#line 1085 "rcparse.y" { (yyval.is) = MENUITEM_MENUBARBREAK; } break; case 141: -#line 1087 "rcparse.y" +#line 1089 "rcparse.y" { (yyval.is) = MENUITEM_MENUBREAK; } break; case 142: -#line 1096 "rcparse.y" +#line 1098 "rcparse.y" { define_menu ((yyvsp[(1) - (6)].id), &(yyvsp[(3) - (6)].res_info), (yyvsp[(5) - (6)].menuitem)); if (yychar != YYEMPTY) @@ -3320,14 +3322,14 @@ yyreduce: break; case 143: -#line 1106 "rcparse.y" +#line 1108 "rcparse.y" { (yyval.menuitem) = NULL; } break; case 144: -#line 1110 "rcparse.y" +#line 1112 "rcparse.y" { if ((yyvsp[(1) - (2)].menuitem) == NULL) (yyval.menuitem) = (yyvsp[(2) - (2)].menuitem); @@ -3344,63 +3346,63 @@ yyreduce: break; case 145: -#line 1127 "rcparse.y" +#line 1129 "rcparse.y" { (yyval.menuitem) = define_menuitem ((yyvsp[(2) - (2)].uni), 0, 0, 0, 0, NULL); } break; case 146: -#line 1131 "rcparse.y" +#line 1133 "rcparse.y" { (yyval.menuitem) = define_menuitem ((yyvsp[(2) - (3)].uni), (yyvsp[(3) - (3)].il), 0, 0, 0, NULL); } break; case 147: -#line 1135 "rcparse.y" +#line 1137 "rcparse.y" { (yyval.menuitem) = define_menuitem ((yyvsp[(2) - (5)].uni), (yyvsp[(3) - (5)].il), (yyvsp[(4) - (5)].il), (yyvsp[(5) - (5)].il), 0, NULL); } break; case 148: -#line 1139 "rcparse.y" +#line 1141 "rcparse.y" { (yyval.menuitem) = define_menuitem (NULL, 0, 0, 0, 0, NULL); } break; case 149: -#line 1143 "rcparse.y" +#line 1145 "rcparse.y" { (yyval.menuitem) = define_menuitem ((yyvsp[(2) - (5)].uni), 0, 0, 0, 0, (yyvsp[(4) - (5)].menuitem)); } break; case 150: -#line 1147 "rcparse.y" +#line 1149 "rcparse.y" { (yyval.menuitem) = define_menuitem ((yyvsp[(2) - (6)].uni), (yyvsp[(3) - (6)].il), 0, 0, 0, (yyvsp[(5) - (6)].menuitem)); } break; case 151: -#line 1151 "rcparse.y" +#line 1153 "rcparse.y" { (yyval.menuitem) = define_menuitem ((yyvsp[(2) - (7)].uni), (yyvsp[(3) - (7)].il), (yyvsp[(4) - (7)].il), 0, 0, (yyvsp[(6) - (7)].menuitem)); } break; case 152: -#line 1156 "rcparse.y" +#line 1158 "rcparse.y" { (yyval.menuitem) = define_menuitem ((yyvsp[(2) - (9)].uni), (yyvsp[(3) - (9)].il), (yyvsp[(4) - (9)].il), (yyvsp[(5) - (9)].il), (yyvsp[(6) - (9)].il), (yyvsp[(8) - (9)].menuitem)); } break; case 153: -#line 1165 "rcparse.y" +#line 1167 "rcparse.y" { define_messagetable ((yyvsp[(1) - (4)].id), &(yyvsp[(3) - (4)].res_info), (yyvsp[(4) - (4)].s)); if (yychar != YYEMPTY) @@ -3410,14 +3412,14 @@ yyreduce: break; case 154: -#line 1177 "rcparse.y" +#line 1179 "rcparse.y" { rcparse_rcdata (); } break; case 155: -#line 1181 "rcparse.y" +#line 1183 "rcparse.y" { rcparse_normal (); (yyval.rcdata) = (yyvsp[(2) - (2)].rcdata); @@ -3425,7 +3427,7 @@ yyreduce: break; case 156: -#line 1189 "rcparse.y" +#line 1191 "rcparse.y" { (yyval.rcdata).first = NULL; (yyval.rcdata).last = NULL; @@ -3433,14 +3435,14 @@ yyreduce: break; case 157: -#line 1194 "rcparse.y" +#line 1196 "rcparse.y" { (yyval.rcdata) = (yyvsp[(1) - (1)].rcdata); } break; case 158: -#line 1201 "rcparse.y" +#line 1203 "rcparse.y" { rc_rcdata_item *ri; @@ -3451,7 +3453,7 @@ yyreduce: break; case 159: -#line 1209 "rcparse.y" +#line 1211 "rcparse.y" { rc_rcdata_item *ri; @@ -3462,7 +3464,7 @@ yyreduce: break; case 160: -#line 1217 "rcparse.y" +#line 1219 "rcparse.y" { rc_rcdata_item *ri; @@ -3473,7 +3475,7 @@ yyreduce: break; case 161: -#line 1225 "rcparse.y" +#line 1227 "rcparse.y" { rc_rcdata_item *ri; @@ -3485,7 +3487,7 @@ yyreduce: break; case 162: -#line 1234 "rcparse.y" +#line 1236 "rcparse.y" { rc_rcdata_item *ri; @@ -3497,7 +3499,7 @@ yyreduce: break; case 163: -#line 1243 "rcparse.y" +#line 1245 "rcparse.y" { rc_rcdata_item *ri; @@ -3509,35 +3511,40 @@ yyreduce: break; case 164: -#line 1252 "rcparse.y" +#line 1254 "rcparse.y" { (yyval.rcdata)=(yyvsp[(1) - (2)].rcdata); } break; case 165: -#line 1261 "rcparse.y" - { sub_res_info = (yyvsp[(2) - (3)].res_info); } +#line 1263 "rcparse.y" + { sub_res_info = (yyvsp[(2) - (3)].res_info); rcparse_rcdata (); } + break; + + case 166: +#line 1264 "rcparse.y" + { rcparse_normal (); } break; case 168: -#line 1268 "rcparse.y" +#line 1270 "rcparse.y" { - define_stringtable (&sub_res_info, (yyvsp[(2) - (3)].il), (yyvsp[(3) - (3)].uni)); + define_stringtable (&sub_res_info, (yyvsp[(2) - (3)].il), (yyvsp[(3) - (3)].suni).s, (yyvsp[(3) - (3)].suni).length); rcparse_discard_strings (); } break; case 169: -#line 1273 "rcparse.y" +#line 1275 "rcparse.y" { - define_stringtable (&sub_res_info, (yyvsp[(2) - (4)].il), (yyvsp[(4) - (4)].uni)); + define_stringtable (&sub_res_info, (yyvsp[(2) - (4)].il), (yyvsp[(4) - (4)].suni).s, (yyvsp[(4) - (4)].suni).length); rcparse_discard_strings (); } break; case 170: -#line 1278 "rcparse.y" +#line 1280 "rcparse.y" { rcparse_warning (_("invalid stringtable resource.")); abort (); @@ -3545,14 +3552,14 @@ yyreduce: break; case 171: -#line 1286 "rcparse.y" +#line 1288 "rcparse.y" { (yyval.id)=(yyvsp[(1) - (1)].id); } break; case 172: -#line 1290 "rcparse.y" +#line 1292 "rcparse.y" { (yyval.id).named = 0; (yyval.id).u.id = 23; @@ -3560,7 +3567,7 @@ yyreduce: break; case 173: -#line 1295 "rcparse.y" +#line 1297 "rcparse.y" { (yyval.id).named = 0; (yyval.id).u.id = RT_RCDATA; @@ -3568,7 +3575,7 @@ yyreduce: break; case 174: -#line 1300 "rcparse.y" +#line 1302 "rcparse.y" { (yyval.id).named = 0; (yyval.id).u.id = RT_MANIFEST; @@ -3576,7 +3583,7 @@ yyreduce: break; case 175: -#line 1305 "rcparse.y" +#line 1307 "rcparse.y" { (yyval.id).named = 0; (yyval.id).u.id = RT_PLUGPLAY; @@ -3584,7 +3591,7 @@ yyreduce: break; case 176: -#line 1310 "rcparse.y" +#line 1312 "rcparse.y" { (yyval.id).named = 0; (yyval.id).u.id = RT_VXD; @@ -3592,7 +3599,7 @@ yyreduce: break; case 177: -#line 1315 "rcparse.y" +#line 1317 "rcparse.y" { (yyval.id).named = 0; (yyval.id).u.id = RT_DLGINCLUDE; @@ -3600,7 +3607,7 @@ yyreduce: break; case 178: -#line 1320 "rcparse.y" +#line 1322 "rcparse.y" { (yyval.id).named = 0; (yyval.id).u.id = RT_DLGINIT; @@ -3608,7 +3615,7 @@ yyreduce: break; case 179: -#line 1325 "rcparse.y" +#line 1327 "rcparse.y" { (yyval.id).named = 0; (yyval.id).u.id = RT_ANICURSOR; @@ -3616,7 +3623,7 @@ yyreduce: break; case 180: -#line 1330 "rcparse.y" +#line 1332 "rcparse.y" { (yyval.id).named = 0; (yyval.id).u.id = RT_ANIICON; @@ -3624,7 +3631,7 @@ yyreduce: break; case 181: -#line 1341 "rcparse.y" +#line 1343 "rcparse.y" { define_user_data ((yyvsp[(1) - (6)].id), (yyvsp[(2) - (6)].id), &(yyvsp[(3) - (6)].res_info), (yyvsp[(5) - (6)].rcdata).first); if (yychar != YYEMPTY) @@ -3634,7 +3641,7 @@ yyreduce: break; case 182: -#line 1348 "rcparse.y" +#line 1350 "rcparse.y" { define_user_file ((yyvsp[(1) - (4)].id), (yyvsp[(2) - (4)].id), &(yyvsp[(3) - (4)].res_info), (yyvsp[(4) - (4)].s)); if (yychar != YYEMPTY) @@ -3644,19 +3651,19 @@ yyreduce: break; case 183: -#line 1358 "rcparse.y" +#line 1360 "rcparse.y" { define_toolbar ((yyvsp[(1) - (8)].id), &(yyvsp[(3) - (8)].res_info), (yyvsp[(4) - (8)].il), (yyvsp[(5) - (8)].il), (yyvsp[(7) - (8)].toobar_item)); } break; case 184: -#line 1363 "rcparse.y" +#line 1365 "rcparse.y" { (yyval.toobar_item)= NULL; } break; case 185: -#line 1365 "rcparse.y" +#line 1367 "rcparse.y" { rc_toolbar_item *c,*n; c = (yyvsp[(1) - (3)].toobar_item); @@ -3678,7 +3685,7 @@ yyreduce: break; case 186: -#line 1384 "rcparse.y" +#line 1386 "rcparse.y" { rc_toolbar_item *c,*n; c = (yyvsp[(1) - (2)].toobar_item); @@ -3701,7 +3708,7 @@ yyreduce: break; case 187: -#line 1409 "rcparse.y" +#line 1411 "rcparse.y" { define_versioninfo ((yyvsp[(1) - (6)].id), language, (yyvsp[(3) - (6)].fixver), (yyvsp[(5) - (6)].verinfo)); if (yychar != YYEMPTY) @@ -3711,7 +3718,7 @@ yyreduce: break; case 188: -#line 1419 "rcparse.y" +#line 1421 "rcparse.y" { (yyval.fixver) = ((rc_fixed_versioninfo *) res_alloc (sizeof (rc_fixed_versioninfo))); @@ -3720,7 +3727,7 @@ yyreduce: break; case 189: -#line 1425 "rcparse.y" +#line 1427 "rcparse.y" { (yyvsp[(1) - (6)].fixver)->file_version_ms = ((yyvsp[(3) - (6)].il) << 16) | (yyvsp[(4) - (6)].il); (yyvsp[(1) - (6)].fixver)->file_version_ls = ((yyvsp[(5) - (6)].il) << 16) | (yyvsp[(6) - (6)].il); @@ -3729,7 +3736,7 @@ yyreduce: break; case 190: -#line 1431 "rcparse.y" +#line 1433 "rcparse.y" { (yyvsp[(1) - (6)].fixver)->product_version_ms = ((yyvsp[(3) - (6)].il) << 16) | (yyvsp[(4) - (6)].il); (yyvsp[(1) - (6)].fixver)->product_version_ls = ((yyvsp[(5) - (6)].il) << 16) | (yyvsp[(6) - (6)].il); @@ -3738,7 +3745,7 @@ yyreduce: break; case 191: -#line 1437 "rcparse.y" +#line 1439 "rcparse.y" { (yyvsp[(1) - (3)].fixver)->file_flags_mask = (yyvsp[(3) - (3)].il); (yyval.fixver) = (yyvsp[(1) - (3)].fixver); @@ -3746,7 +3753,7 @@ yyreduce: break; case 192: -#line 1442 "rcparse.y" +#line 1444 "rcparse.y" { (yyvsp[(1) - (3)].fixver)->file_flags = (yyvsp[(3) - (3)].il); (yyval.fixver) = (yyvsp[(1) - (3)].fixver); @@ -3754,7 +3761,7 @@ yyreduce: break; case 193: -#line 1447 "rcparse.y" +#line 1449 "rcparse.y" { (yyvsp[(1) - (3)].fixver)->file_os = (yyvsp[(3) - (3)].il); (yyval.fixver) = (yyvsp[(1) - (3)].fixver); @@ -3762,7 +3769,7 @@ yyreduce: break; case 194: -#line 1452 "rcparse.y" +#line 1454 "rcparse.y" { (yyvsp[(1) - (3)].fixver)->file_type = (yyvsp[(3) - (3)].il); (yyval.fixver) = (yyvsp[(1) - (3)].fixver); @@ -3770,7 +3777,7 @@ yyreduce: break; case 195: -#line 1457 "rcparse.y" +#line 1459 "rcparse.y" { (yyvsp[(1) - (3)].fixver)->file_subtype = (yyvsp[(3) - (3)].il); (yyval.fixver) = (yyvsp[(1) - (3)].fixver); @@ -3778,109 +3785,123 @@ yyreduce: break; case 196: -#line 1471 "rcparse.y" +#line 1473 "rcparse.y" { (yyval.verinfo) = NULL; } break; case 197: -#line 1475 "rcparse.y" +#line 1477 "rcparse.y" { - (yyval.verinfo) = append_ver_stringfileinfo ((yyvsp[(1) - (8)].verinfo), (yyvsp[(4) - (8)].s), (yyvsp[(6) - (8)].verstring)); + (yyval.verinfo) = append_ver_stringfileinfo ((yyvsp[(1) - (5)].verinfo), (yyvsp[(4) - (5)].verstringtable)); } break; case 198: -#line 1479 "rcparse.y" +#line 1481 "rcparse.y" { (yyval.verinfo) = append_ver_varfileinfo ((yyvsp[(1) - (7)].verinfo), (yyvsp[(5) - (7)].uni), (yyvsp[(6) - (7)].vervar)); } break; case 199: -#line 1486 "rcparse.y" +#line 1488 "rcparse.y" { - (yyval.verstring) = NULL; + (yyval.verstringtable) = NULL; } break; case 200: -#line 1490 "rcparse.y" +#line 1492 "rcparse.y" { - (yyval.verstring) = append_verval ((yyvsp[(1) - (5)].verstring), (yyvsp[(3) - (5)].uni), (yyvsp[(5) - (5)].uni)); + (yyval.verstringtable) = append_ver_stringtable ((yyvsp[(1) - (5)].verstringtable), (yyvsp[(2) - (5)].s), (yyvsp[(4) - (5)].verstring)); } break; case 201: -#line 1497 "rcparse.y" +#line 1499 "rcparse.y" { - (yyval.vervar) = NULL; + (yyval.verstring) = NULL; } break; case 202: -#line 1501 "rcparse.y" +#line 1503 "rcparse.y" { - (yyval.vervar) = append_vertrans ((yyvsp[(1) - (3)].vervar), (yyvsp[(2) - (3)].il), (yyvsp[(3) - (3)].il)); + (yyval.verstring) = append_verval ((yyvsp[(1) - (5)].verstring), (yyvsp[(3) - (5)].uni), (yyvsp[(5) - (5)].uni)); } break; case 203: #line 1510 "rcparse.y" { - (yyval.id).named = 0; - (yyval.id).u.id = (yyvsp[(1) - (1)].il); + (yyval.vervar) = NULL; } break; case 204: -#line 1515 "rcparse.y" +#line 1514 "rcparse.y" { - res_unistring_to_id (&(yyval.id), (yyvsp[(1) - (1)].uni)); + (yyval.vervar) = append_vertrans ((yyvsp[(1) - (3)].vervar), (yyvsp[(2) - (3)].il), (yyvsp[(3) - (3)].il)); } break; case 205: -#line 1524 "rcparse.y" +#line 1523 "rcparse.y" { - (yyval.uni) = (yyvsp[(1) - (1)].uni); + (yyval.id).named = 0; + (yyval.id).u.id = (yyvsp[(1) - (1)].il); } break; case 206: #line 1528 "rcparse.y" { + res_unistring_to_id (&(yyval.id), (yyvsp[(1) - (1)].uni)); + } + break; + + case 207: +#line 1537 "rcparse.y" + { + (yyval.uni) = (yyvsp[(1) - (1)].uni); + } + break; + + case 208: +#line 1541 "rcparse.y" + { unichar *h = NULL; unicode_from_ascii ((rc_uint_type *) NULL, &h, (yyvsp[(1) - (1)].s)); (yyval.uni) = h; } break; - case 207: -#line 1538 "rcparse.y" + case 209: +#line 1551 "rcparse.y" { (yyval.id).named = 0; (yyval.id).u.id = (yyvsp[(1) - (2)].il); } break; - case 208: -#line 1543 "rcparse.y" + case 210: +#line 1556 "rcparse.y" { res_unistring_to_id (&(yyval.id), (yyvsp[(1) - (1)].uni)); } break; - case 209: -#line 1547 "rcparse.y" + case 211: +#line 1560 "rcparse.y" { res_unistring_to_id (&(yyval.id), (yyvsp[(1) - (2)].uni)); } break; - case 210: -#line 1557 "rcparse.y" + case 212: +#line 1570 "rcparse.y" { memset (&(yyval.res_info), 0, sizeof (rc_res_res_info)); (yyval.res_info).language = language; @@ -3889,8 +3910,8 @@ yyreduce: } break; - case 211: -#line 1564 "rcparse.y" + case 213: +#line 1577 "rcparse.y" { (yyval.res_info) = (yyvsp[(1) - (2)].res_info); (yyval.res_info).memflags |= (yyvsp[(2) - (2)].memflags).on; @@ -3898,32 +3919,32 @@ yyreduce: } break; - case 212: -#line 1570 "rcparse.y" + case 214: +#line 1583 "rcparse.y" { (yyval.res_info) = (yyvsp[(1) - (3)].res_info); (yyval.res_info).characteristics = (yyvsp[(3) - (3)].il); } break; - case 213: -#line 1575 "rcparse.y" + case 215: +#line 1588 "rcparse.y" { (yyval.res_info) = (yyvsp[(1) - (4)].res_info); (yyval.res_info).language = (yyvsp[(3) - (4)].il) | ((yyvsp[(4) - (4)].il) << SUBLANG_SHIFT); } break; - case 214: -#line 1580 "rcparse.y" + case 216: +#line 1593 "rcparse.y" { (yyval.res_info) = (yyvsp[(1) - (3)].res_info); (yyval.res_info).version = (yyvsp[(3) - (3)].il); } break; - case 215: -#line 1590 "rcparse.y" + case 217: +#line 1603 "rcparse.y" { memset (&(yyval.res_info), 0, sizeof (rc_res_res_info)); (yyval.res_info).language = language; @@ -3931,8 +3952,8 @@ yyreduce: } break; - case 216: -#line 1596 "rcparse.y" + case 218: +#line 1609 "rcparse.y" { (yyval.res_info) = (yyvsp[(1) - (2)].res_info); (yyval.res_info).memflags |= (yyvsp[(2) - (2)].memflags).on; @@ -3940,8 +3961,8 @@ yyreduce: } break; - case 217: -#line 1607 "rcparse.y" + case 219: +#line 1620 "rcparse.y" { memset (&(yyval.res_info), 0, sizeof (rc_res_res_info)); (yyval.res_info).language = language; @@ -3949,8 +3970,8 @@ yyreduce: } break; - case 218: -#line 1613 "rcparse.y" + case 220: +#line 1626 "rcparse.y" { (yyval.res_info) = (yyvsp[(1) - (2)].res_info); (yyval.res_info).memflags |= (yyvsp[(2) - (2)].memflags).on; @@ -3958,85 +3979,85 @@ yyreduce: } break; - case 219: -#line 1625 "rcparse.y" + case 221: +#line 1638 "rcparse.y" { (yyval.memflags).on = MEMFLAG_MOVEABLE; (yyval.memflags).off = 0; } break; - case 220: -#line 1630 "rcparse.y" + case 222: +#line 1643 "rcparse.y" { (yyval.memflags).on = 0; (yyval.memflags).off = MEMFLAG_MOVEABLE; } break; - case 221: -#line 1635 "rcparse.y" + case 223: +#line 1648 "rcparse.y" { (yyval.memflags).on = MEMFLAG_PURE; (yyval.memflags).off = 0; } break; - case 222: -#line 1640 "rcparse.y" + case 224: +#line 1653 "rcparse.y" { (yyval.memflags).on = 0; (yyval.memflags).off = MEMFLAG_PURE; } break; - case 223: -#line 1645 "rcparse.y" + case 225: +#line 1658 "rcparse.y" { (yyval.memflags).on = MEMFLAG_PRELOAD; (yyval.memflags).off = 0; } break; - case 224: -#line 1650 "rcparse.y" + case 226: +#line 1663 "rcparse.y" { (yyval.memflags).on = 0; (yyval.memflags).off = MEMFLAG_PRELOAD; } break; - case 225: -#line 1655 "rcparse.y" + case 227: +#line 1668 "rcparse.y" { (yyval.memflags).on = MEMFLAG_DISCARDABLE; (yyval.memflags).off = 0; } break; - case 226: -#line 1665 "rcparse.y" + case 228: +#line 1678 "rcparse.y" { (yyval.s) = (yyvsp[(1) - (1)].s); } break; - case 227: -#line 1669 "rcparse.y" + case 229: +#line 1682 "rcparse.y" { (yyval.s) = (yyvsp[(1) - (1)].s); } break; - case 228: -#line 1677 "rcparse.y" + case 230: +#line 1690 "rcparse.y" { (yyval.uni) = (yyvsp[(1) - (1)].uni); } break; - case 229: -#line 1682 "rcparse.y" + case 231: +#line 1695 "rcparse.y" { rc_uint_type l1 = unichar_len ((yyvsp[(1) - (2)].uni)); rc_uint_type l2 = unichar_len ((yyvsp[(2) - (2)].uni)); @@ -4050,15 +4071,15 @@ yyreduce: } break; - case 230: -#line 1697 "rcparse.y" + case 232: +#line 1710 "rcparse.y" { (yyval.uni) = unichar_dup ((yyvsp[(1) - (1)].uni)); } break; - case 231: -#line 1701 "rcparse.y" + case 233: +#line 1714 "rcparse.y" { unichar *h = NULL; unicode_from_ascii ((rc_uint_type *) NULL, &h, (yyvsp[(1) - (1)].s)); @@ -4066,15 +4087,56 @@ yyreduce: } break; - case 232: -#line 1710 "rcparse.y" + case 234: +#line 1723 "rcparse.y" + { + (yyval.suni) = (yyvsp[(1) - (1)].suni); + } + break; + + case 235: +#line 1727 "rcparse.y" + { + unichar *h = NULL; + rc_uint_type l = 0; + unicode_from_ascii_len (&l, &h, (yyvsp[(1) - (1)].ss).s, (yyvsp[(1) - (1)].ss).length); + (yyval.suni).s = h; + (yyval.suni).length = l; + } + break; + + case 236: +#line 1739 "rcparse.y" + { + (yyval.suni) = (yyvsp[(1) - (1)].suni); + } + break; + + case 237: +#line 1744 "rcparse.y" + { + rc_uint_type l1 = (yyvsp[(1) - (2)].suni).length; + rc_uint_type l2 = (yyvsp[(2) - (2)].suni).length; + unichar *h = (unichar *) res_alloc ((l1 + l2 + 1) * sizeof (unichar)); + if (l1 != 0) + memcpy (h, (yyvsp[(1) - (2)].suni).s, l1 * sizeof (unichar)); + if (l2 != 0) + memcpy (h + l1, (yyvsp[(2) - (2)].suni).s, l2 * sizeof (unichar)); + h[l1 + l2] = 0; + (yyval.suni).length = l1 + l2; + (yyval.suni).s = h; + } + break; + + case 238: +#line 1760 "rcparse.y" { (yyval.ss) = (yyvsp[(1) - (1)].ss); } break; - case 233: -#line 1714 "rcparse.y" + case 239: +#line 1764 "rcparse.y" { rc_uint_type l = (yyvsp[(1) - (2)].ss).length + (yyvsp[(2) - (2)].ss).length; char *h = (char *) res_alloc (l); @@ -4085,15 +4147,15 @@ yyreduce: } break; - case 234: -#line 1726 "rcparse.y" + case 240: +#line 1776 "rcparse.y" { (yyval.suni) = (yyvsp[(1) - (1)].suni); } break; - case 235: -#line 1730 "rcparse.y" + case 241: +#line 1780 "rcparse.y" { rc_uint_type l = (yyvsp[(1) - (2)].suni).length + (yyvsp[(2) - (2)].suni).length; unichar *h = (unichar *) res_alloc (l * sizeof (unichar)); @@ -4104,264 +4166,264 @@ yyreduce: } break; - case 236: -#line 1752 "rcparse.y" + case 242: +#line 1802 "rcparse.y" { style |= (yyvsp[(1) - (1)].il); } break; - case 237: -#line 1756 "rcparse.y" + case 243: +#line 1806 "rcparse.y" { style &=~ (yyvsp[(2) - (2)].il); } break; - case 238: -#line 1760 "rcparse.y" + case 244: +#line 1810 "rcparse.y" { style |= (yyvsp[(3) - (3)].il); } break; - case 239: -#line 1764 "rcparse.y" + case 245: +#line 1814 "rcparse.y" { style &=~ (yyvsp[(4) - (4)].il); } break; - case 240: -#line 1771 "rcparse.y" + case 246: +#line 1821 "rcparse.y" { (yyval.il) = (yyvsp[(1) - (1)].i).val; } break; - case 241: -#line 1775 "rcparse.y" + case 247: +#line 1825 "rcparse.y" { (yyval.il) = (yyvsp[(2) - (3)].il); } break; - case 242: -#line 1784 "rcparse.y" + case 248: +#line 1834 "rcparse.y" { (yyval.il) = 0; } break; - case 243: -#line 1788 "rcparse.y" + case 249: +#line 1838 "rcparse.y" { (yyval.il) = (yyvsp[(1) - (1)].il); } break; - case 244: -#line 1797 "rcparse.y" + case 250: +#line 1847 "rcparse.y" { (yyval.il) = (yyvsp[(2) - (2)].il); } break; - case 245: -#line 1806 "rcparse.y" + case 251: +#line 1856 "rcparse.y" { (yyval.il) = (yyvsp[(1) - (1)].i).val; } break; - case 246: -#line 1815 "rcparse.y" + case 252: +#line 1865 "rcparse.y" { (yyval.i) = (yyvsp[(1) - (1)].i); } break; - case 247: -#line 1819 "rcparse.y" + case 253: +#line 1869 "rcparse.y" { (yyval.i) = (yyvsp[(2) - (3)].i); } break; - case 248: -#line 1823 "rcparse.y" + case 254: +#line 1873 "rcparse.y" { (yyval.i).val = ~ (yyvsp[(2) - (2)].i).val; (yyval.i).dword = (yyvsp[(2) - (2)].i).dword; } break; - case 249: -#line 1828 "rcparse.y" + case 255: +#line 1878 "rcparse.y" { (yyval.i).val = - (yyvsp[(2) - (2)].i).val; (yyval.i).dword = (yyvsp[(2) - (2)].i).dword; } break; - case 250: -#line 1833 "rcparse.y" + case 256: +#line 1883 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val * (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 251: -#line 1838 "rcparse.y" + case 257: +#line 1888 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val / (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 252: -#line 1843 "rcparse.y" + case 258: +#line 1893 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val % (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 253: -#line 1848 "rcparse.y" + case 259: +#line 1898 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val + (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 254: -#line 1853 "rcparse.y" + case 260: +#line 1903 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val - (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 255: -#line 1858 "rcparse.y" + case 261: +#line 1908 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val & (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 256: -#line 1863 "rcparse.y" + case 262: +#line 1913 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val ^ (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 257: -#line 1868 "rcparse.y" + case 263: +#line 1918 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val | (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 258: -#line 1879 "rcparse.y" + case 264: +#line 1929 "rcparse.y" { (yyval.il) = (yyvsp[(2) - (2)].il); } break; - case 259: -#line 1888 "rcparse.y" + case 265: +#line 1938 "rcparse.y" { (yyval.il) = (yyvsp[(1) - (1)].i).val; } break; - case 260: -#line 1899 "rcparse.y" + case 266: +#line 1949 "rcparse.y" { (yyval.i) = (yyvsp[(1) - (1)].i); } break; - case 261: -#line 1903 "rcparse.y" + case 267: +#line 1953 "rcparse.y" { (yyval.i) = (yyvsp[(2) - (3)].i); } break; - case 262: -#line 1907 "rcparse.y" + case 268: +#line 1957 "rcparse.y" { (yyval.i).val = ~ (yyvsp[(2) - (2)].i).val; (yyval.i).dword = (yyvsp[(2) - (2)].i).dword; } break; - case 263: -#line 1912 "rcparse.y" + case 269: +#line 1962 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val * (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 264: -#line 1917 "rcparse.y" + case 270: +#line 1967 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val / (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 265: -#line 1922 "rcparse.y" + case 271: +#line 1972 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val % (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 266: -#line 1927 "rcparse.y" + case 272: +#line 1977 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val + (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 267: -#line 1932 "rcparse.y" + case 273: +#line 1982 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val - (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 268: -#line 1937 "rcparse.y" + case 274: +#line 1987 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val & (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 269: -#line 1942 "rcparse.y" + case 275: +#line 1992 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val ^ (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; } break; - case 270: -#line 1947 "rcparse.y" + case 276: +#line 1997 "rcparse.y" { (yyval.i).val = (yyvsp[(1) - (3)].i).val | (yyvsp[(3) - (3)].i).val; (yyval.i).dword = (yyvsp[(1) - (3)].i).dword || (yyvsp[(3) - (3)].i).dword; @@ -4370,7 +4432,7 @@ yyreduce: /* Line 1267 of yacc.c. */ -#line 4374 "rcparse.c" +#line 4436 "rcparse.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -4584,7 +4646,7 @@ yyreturn: } -#line 1953 "rcparse.y" +#line 2003 "rcparse.y" /* Set the language from the command line. */ |