From 0e70194617ccd9a3f490294c80637f5669529aa6 Mon Sep 17 00:00:00 2001 From: pixel-stuck Date: Tue, 22 Feb 2022 07:08:46 -0500 Subject: [PATCH] Add support for anonymous structs/unions (#21) --- c-parse.c | 1388 ++++++++++++++++++++++++++--------------------------- c-parse.y | 13 +- 2 files changed, 697 insertions(+), 704 deletions(-) diff --git a/c-parse.c b/c-parse.c index 28c8cb0..f80d7de 100644 --- a/c-parse.c +++ b/c-parse.c @@ -1,6 +1,6 @@ -/* A Bison parser, made from c-parse.y - by Bison version A2.5 (Andrew Consortium) +/* A Bison parser, made from /home/matt/n64/gcc-papermario/c-parse.y + by Bison version A2.6 (Andrew Consortium) */ #define YYBISON 1 /* Identify Bison output. */ @@ -141,7 +141,7 @@ extern void yyprint (); -#define YYFINAL 682 +#define YYFINAL 684 #define YYFLAG -32768 #define YYNTBASE 84 @@ -209,21 +209,21 @@ static const short yyprhs[] = { 0, 680, 684, 686, 690, 695, 699, 703, 707, 709, 713, 717, 721, 726, 730, 734, 736, 737, 745, 751, 754, 755, 763, 769, 772, 773, 782, 783, 791, 794, 795, - 797, 798, 800, 802, 805, 806, 810, 813, 817, 819, - 823, 825, 827, 830, 832, 836, 841, 848, 854, 856, - 860, 862, 864, 868, 871, 874, 875, 877, 879, 882, - 883, 886, 890, 894, 897, 901, 906, 910, 913, 917, - 920, 922, 924, 927, 930, 931, 933, 936, 937, 938, - 940, 942, 945, 949, 951, 954, 956, 959, 966, 972, - 978, 981, 984, 989, 990, 995, 996, 997, 1001, 1006, - 1010, 1012, 1014, 1016, 1018, 1021, 1022, 1027, 1029, 1033, - 1034, 1035, 1043, 1049, 1052, 1053, 1054, 1055, 1068, 1069, - 1076, 1079, 1082, 1085, 1089, 1096, 1105, 1116, 1129, 1133, - 1138, 1140, 1142, 1143, 1150, 1154, 1160, 1163, 1166, 1167, - 1169, 1170, 1172, 1173, 1175, 1177, 1181, 1186, 1188, 1192, - 1193, 1196, 1199, 1200, 1205, 1208, 1209, 1211, 1213, 1217, - 1219, 1223, 1228, 1233, 1238, 1243, 1248, 1249, 1252, 1254, - 1257, 1259, 1263, 1265, 1269 + 797, 798, 800, 802, 805, 806, 810, 813, 817, 822, + 826, 828, 830, 833, 835, 839, 844, 851, 857, 859, + 863, 865, 867, 871, 874, 877, 878, 880, 882, 885, + 886, 889, 893, 897, 900, 904, 909, 913, 916, 920, + 923, 925, 927, 930, 933, 934, 936, 939, 940, 941, + 943, 945, 948, 952, 954, 957, 959, 962, 969, 975, + 981, 984, 987, 992, 993, 998, 999, 1000, 1004, 1009, + 1013, 1015, 1017, 1019, 1021, 1024, 1025, 1030, 1032, 1036, + 1037, 1038, 1046, 1052, 1055, 1056, 1057, 1058, 1071, 1072, + 1079, 1082, 1085, 1088, 1092, 1099, 1108, 1119, 1132, 1136, + 1141, 1143, 1145, 1146, 1153, 1157, 1163, 1166, 1169, 1170, + 1172, 1173, 1175, 1176, 1178, 1180, 1184, 1189, 1191, 1195, + 1196, 1199, 1202, 1203, 1208, 1211, 1212, 1214, 1216, 1220, + 1222, 1226, 1231, 1236, 1241, 1246, 1251, 1252, 1255, 1257, + 1260, 1262, 1266, 1268, 1272 }; static const short yyrhs[] = { -1, @@ -308,52 +308,53 @@ static const short yyrhs[] = { -1, 0, 0, 12, 82, 173, 181, 175, 78, 142, 0, 12, 97, 0, 0, 81, 0, 0, 81, 0, 177, 0, 177, 178, 0, 0, 177, 178, 77, 0, 177, - 77, 0, 131, 122, 179, 0, 131, 0, 185, 122, - 179, 0, 185, 0, 1, 0, 238, 178, 0, 180, - 0, 179, 81, 180, 0, 203, 204, 165, 142, 0, - 203, 204, 165, 38, 107, 142, 0, 203, 204, 38, - 107, 142, 0, 182, 0, 181, 81, 182, 0, 1, - 0, 97, 0, 97, 36, 107, 0, 131, 184, 0, - 185, 184, 0, 0, 187, 0, 7, 0, 185, 7, - 0, 0, 186, 7, 0, 59, 187, 76, 0, 50, - 186, 187, 0, 50, 186, 0, 187, 59, 226, 0, - 187, 60, 99, 83, 0, 187, 60, 83, 0, 59, - 226, 0, 60, 99, 83, 0, 60, 83, 0, 189, - 0, 206, 0, 189, 206, 0, 189, 191, 0, 0, - 188, 0, 1, 77, 0, 0, 0, 194, 0, 195, - 0, 194, 195, 0, 32, 237, 77, 0, 198, 0, - 1, 198, 0, 82, 0, 197, 78, 0, 197, 192, - 193, 121, 190, 78, 0, 197, 192, 193, 1, 78, - 0, 197, 192, 193, 188, 78, 0, 200, 205, 0, - 200, 1, 0, 15, 59, 99, 76, 0, 0, 18, - 202, 205, 17, 0, 0, 0, 203, 204, 208, 0, - 203, 204, 219, 205, 0, 203, 204, 207, 0, 208, - 0, 219, 0, 198, 0, 216, 0, 99, 77, 0, - 0, 199, 16, 209, 205, 0, 199, 0, 199, 16, - 1, 0, 0, 0, 17, 210, 59, 99, 76, 211, - 205, 0, 201, 59, 99, 76, 77, 0, 201, 1, - 0, 0, 0, 0, 19, 59, 221, 77, 212, 221, - 77, 213, 221, 76, 214, 205, 0, 0, 20, 59, - 99, 76, 215, 205, 0, 23, 77, 0, 24, 77, - 0, 25, 77, 0, 25, 99, 77, 0, 27, 220, - 59, 99, 76, 77, 0, 27, 220, 59, 99, 38, - 222, 76, 77, 0, 27, 220, 59, 99, 38, 222, - 38, 222, 76, 77, 0, 27, 220, 59, 99, 38, - 222, 38, 222, 38, 225, 76, 77, 0, 26, 97, - 77, 0, 26, 50, 99, 77, 0, 77, 0, 217, - 0, 0, 19, 59, 113, 76, 218, 205, 0, 21, - 107, 38, 0, 21, 107, 10, 107, 38, 0, 22, - 38, 0, 97, 38, 0, 0, 7, 0, 0, 99, - 0, 0, 223, 0, 224, 0, 223, 81, 224, 0, - 9, 59, 99, 76, 0, 115, 0, 225, 81, 115, - 0, 0, 227, 228, 0, 230, 76, 0, 0, 231, - 77, 229, 228, 0, 1, 76, 0, 0, 10, 0, - 231, 0, 231, 81, 10, 0, 232, 0, 231, 81, - 232, 0, 125, 122, 167, 142, 0, 125, 122, 168, - 142, 0, 125, 122, 184, 142, 0, 129, 122, 168, - 142, 0, 129, 122, 184, 142, 0, 0, 234, 235, - 0, 228, 0, 236, 76, 0, 3, 0, 236, 81, - 3, 0, 97, 0, 237, 81, 97, 0, 31, 0 + 77, 0, 131, 122, 179, 0, 131, 122, 203, 204, + 0, 185, 122, 179, 0, 185, 0, 1, 0, 238, + 178, 0, 180, 0, 179, 81, 180, 0, 203, 204, + 165, 142, 0, 203, 204, 165, 38, 107, 142, 0, + 203, 204, 38, 107, 142, 0, 182, 0, 181, 81, + 182, 0, 1, 0, 97, 0, 97, 36, 107, 0, + 131, 184, 0, 185, 184, 0, 0, 187, 0, 7, + 0, 185, 7, 0, 0, 186, 7, 0, 59, 187, + 76, 0, 50, 186, 187, 0, 50, 186, 0, 187, + 59, 226, 0, 187, 60, 99, 83, 0, 187, 60, + 83, 0, 59, 226, 0, 60, 99, 83, 0, 60, + 83, 0, 189, 0, 206, 0, 189, 206, 0, 189, + 191, 0, 0, 188, 0, 1, 77, 0, 0, 0, + 194, 0, 195, 0, 194, 195, 0, 32, 237, 77, + 0, 198, 0, 1, 198, 0, 82, 0, 197, 78, + 0, 197, 192, 193, 121, 190, 78, 0, 197, 192, + 193, 1, 78, 0, 197, 192, 193, 188, 78, 0, + 200, 205, 0, 200, 1, 0, 15, 59, 99, 76, + 0, 0, 18, 202, 205, 17, 0, 0, 0, 203, + 204, 208, 0, 203, 204, 219, 205, 0, 203, 204, + 207, 0, 208, 0, 219, 0, 198, 0, 216, 0, + 99, 77, 0, 0, 199, 16, 209, 205, 0, 199, + 0, 199, 16, 1, 0, 0, 0, 17, 210, 59, + 99, 76, 211, 205, 0, 201, 59, 99, 76, 77, + 0, 201, 1, 0, 0, 0, 0, 19, 59, 221, + 77, 212, 221, 77, 213, 221, 76, 214, 205, 0, + 0, 20, 59, 99, 76, 215, 205, 0, 23, 77, + 0, 24, 77, 0, 25, 77, 0, 25, 99, 77, + 0, 27, 220, 59, 99, 76, 77, 0, 27, 220, + 59, 99, 38, 222, 76, 77, 0, 27, 220, 59, + 99, 38, 222, 38, 222, 76, 77, 0, 27, 220, + 59, 99, 38, 222, 38, 222, 38, 225, 76, 77, + 0, 26, 97, 77, 0, 26, 50, 99, 77, 0, + 77, 0, 217, 0, 0, 19, 59, 113, 76, 218, + 205, 0, 21, 107, 38, 0, 21, 107, 10, 107, + 38, 0, 22, 38, 0, 97, 38, 0, 0, 7, + 0, 0, 99, 0, 0, 223, 0, 224, 0, 223, + 81, 224, 0, 9, 59, 99, 76, 0, 115, 0, + 225, 81, 115, 0, 0, 227, 228, 0, 230, 76, + 0, 0, 231, 77, 229, 228, 0, 1, 76, 0, + 0, 10, 0, 231, 0, 231, 81, 10, 0, 232, + 0, 231, 81, 232, 0, 125, 122, 167, 142, 0, + 125, 122, 168, 142, 0, 125, 122, 184, 142, 0, + 129, 122, 168, 142, 0, 129, 122, 184, 142, 0, + 0, 234, 235, 0, 228, 0, 236, 76, 0, 3, + 0, 236, 81, 3, 0, 97, 0, 237, 81, 97, + 0, 31, 0 }; #endif @@ -385,26 +386,26 @@ static const short yyrline[] = { 0, 1220, 1222, 1230, 1236, 1238, 1240, 1247, 1249, 1255, 1261, 1263, 1265, 1267, 1274, 1276, 1279, 1284, 1286, 1290, 1292, 1294, 1296, 1300, 1302, 1305, 1308, 1311, 1314, 1318, 1320, - 1323, 1325, 1329, 1332, 1337, 1339, 1341, 1355, 1362, 1367, - 1373, 1378, 1380, 1385, 1387, 1391, 1395, 1399, 1409, 1411, - 1416, 1421, 1424, 1428, 1431, 1435, 1438, 1441, 1444, 1448, - 1451, 1455, 1459, 1461, 1463, 1465, 1467, 1469, 1471, 1473, - 1483, 1491, 1493, 1495, 1499, 1501, 1504, 1507, 1518, 1520, - 1525, 1527, 1530, 1544, 1547, 1550, 1552, 1554, 1562, 1570, - 1581, 1586, 1589, 1603, 1612, 1616, 1620, 1624, 1630, 1634, - 1639, 1642, 1647, 1650, 1651, 1668, 1673, 1676, 1688, 1690, - 1700, 1710, 1711, 1719, 1722, 1734, 1738, 1755, 1765, 1774, - 1779, 1784, 1789, 1793, 1797, 1808, 1815, 1822, 1829, 1840, - 1846, 1849, 1854, 1877, 1911, 1936, 1967, 1982, 1993, 1997, - 2001, 2004, 2009, 2011, 2014, 2016, 2020, 2025, 2028, 2034, - 2039, 2044, 2046, 2055, 2056, 2062, 2064, 2074, 2076, 2080, - 2083, 2089, 2099, 2108, 2117, 2127, 2141, 2146, 2151, 2153, - 2162, 2165, 2170, 2173, 2177 + 1323, 1325, 1329, 1332, 1337, 1339, 1341, 1355, 1362, 1366, + 1372, 1377, 1379, 1384, 1386, 1390, 1394, 1398, 1408, 1410, + 1415, 1420, 1423, 1427, 1430, 1434, 1437, 1440, 1443, 1447, + 1450, 1454, 1458, 1460, 1462, 1464, 1466, 1468, 1470, 1472, + 1482, 1490, 1492, 1494, 1498, 1500, 1503, 1506, 1517, 1519, + 1524, 1526, 1529, 1543, 1546, 1549, 1551, 1553, 1561, 1569, + 1580, 1585, 1588, 1602, 1611, 1615, 1619, 1623, 1629, 1633, + 1638, 1641, 1646, 1649, 1650, 1667, 1672, 1675, 1687, 1689, + 1699, 1709, 1710, 1718, 1721, 1733, 1737, 1754, 1764, 1773, + 1778, 1783, 1788, 1792, 1796, 1807, 1814, 1821, 1828, 1839, + 1845, 1848, 1853, 1876, 1910, 1935, 1966, 1981, 1992, 1996, + 2000, 2003, 2008, 2010, 2013, 2015, 2019, 2024, 2027, 2033, + 2038, 2043, 2045, 2054, 2055, 2061, 2063, 2073, 2075, 2079, + 2082, 2088, 2098, 2107, 2116, 2126, 2140, 2145, 2150, 2152, + 2161, 2164, 2169, 2172, 2176 }; #endif -#if YYDEBUG != 0 +#if YYDEBUG != 0 || defined(YYERROR_VERBOSE) static const char * const yytname[] = { "$","error","$undefined.","IDENTIFIER", "TYPENAME","SCSPEC","TYPESPEC","TYPE_QUAL","CONSTANT","STRING","ELLIPSIS","SIZEOF", @@ -511,7 +512,7 @@ static const short yyr2[] = { 0, 3, 1, 3, 4, 3, 3, 3, 1, 3, 3, 3, 4, 3, 3, 1, 0, 7, 5, 2, 0, 7, 5, 2, 0, 8, 0, 7, 2, 0, 1, - 0, 1, 1, 2, 0, 3, 2, 3, 1, 3, + 0, 1, 1, 2, 0, 3, 2, 3, 4, 3, 1, 1, 2, 1, 3, 4, 6, 5, 1, 3, 1, 1, 3, 2, 2, 0, 1, 1, 2, 0, 2, 3, 3, 2, 3, 4, 3, 2, 3, 2, @@ -562,343 +563,339 @@ static const short yydefact[] = { 3, 118, 389, 0, 378, 380, 388, 0, 232, 297, 0, 108, 103, 107, 0, 167, 220, 216, 159, 221, 20, 166, 217, 219, 0, 24, 273, 270, 170, 0, 258, - 264, 317, 260, 170, 170, 307, 299, 92, 60, 59, - 51, 53, 0, 0, 78, 76, 93, 94, 283, 282, - 371, 289, 285, 287, 0, 174, 176, 86, 0, 163, - 375, 276, 276, 372, 373, 0, 390, 0, 0, 29, - 304, 104, 118, 118, 135, 0, 0, 164, 218, 0, - 247, 170, 316, 0, 237, 241, 0, 0, 300, 301, - 0, 80, 83, 286, 179, 0, 181, 228, 280, 370, - 119, 170, 170, 170, 280, 170, 170, 0, 379, 381, - 392, 305, 111, 0, 112, 0, 135, 133, 189, 187, - 186, 168, 21, 0, 25, 245, 265, 0, 170, 393, - 0, 0, 0, 316, 0, 0, 115, 317, 292, 302, - 197, 86, 0, 0, 195, 0, 194, 0, 249, 192, - 0, 0, 284, 0, 387, 0, 382, 383, 384, 284, - 385, 386, 374, 0, 0, 162, 134, 137, 136, 0, - 165, 170, 0, 266, 303, 0, 309, 117, 116, 296, - 0, 310, 294, 317, 293, 0, 0, 0, 0, 204, - 61, 0, 191, 81, 180, 226, 280, 227, 223, 225, - 0, 109, 110, 0, 268, 170, 394, 308, 0, 152, - 0, 330, 314, 0, 0, 0, 0, 0, 0, 0, - 0, 359, 351, 0, 0, 113, 118, 118, 323, 328, - 0, 0, 320, 321, 324, 352, 322, 0, 206, 0, - 202, 0, 0, 193, 0, 224, 188, 267, 0, 0, - 316, 361, 0, 0, 357, 341, 342, 343, 0, 0, - 0, 360, 0, 358, 325, 124, 0, 125, 0, 0, - 312, 317, 311, 334, 0, 126, 0, 0, 200, 0, - 196, 205, 0, 0, 0, 362, 45, 0, 0, 0, - 355, 344, 0, 349, 0, 0, 122, 208, 0, 123, - 211, 329, 316, 0, 0, 207, 0, 0, 203, 313, - 0, 315, 353, 335, 339, 0, 350, 0, 120, 0, - 121, 0, 327, 318, 316, 0, 198, 201, 331, 316, - 361, 316, 356, 363, 0, 209, 212, 319, 333, 0, - 316, 354, 0, 340, 0, 0, 364, 365, 345, 0, - 0, 199, 332, 336, 0, 363, 0, 0, 210, 213, - 361, 0, 0, 346, 366, 0, 367, 0, 0, 337, - 368, 0, 347, 316, 0, 0, 338, 348, 369, 0, - 0, 0 + 264, 317, 260, 317, 170, 170, 307, 299, 92, 60, + 59, 51, 53, 0, 0, 78, 76, 93, 94, 283, + 282, 371, 289, 285, 287, 0, 174, 176, 86, 0, + 163, 375, 276, 276, 372, 373, 0, 390, 0, 0, + 29, 304, 104, 118, 118, 135, 0, 0, 164, 218, + 0, 247, 170, 316, 259, 0, 237, 241, 0, 0, + 300, 301, 0, 80, 83, 286, 179, 0, 181, 228, + 280, 370, 119, 170, 170, 170, 280, 170, 170, 0, + 379, 381, 392, 305, 111, 0, 112, 0, 135, 133, + 189, 187, 186, 168, 21, 0, 25, 245, 265, 0, + 170, 393, 0, 0, 0, 316, 0, 0, 115, 317, + 292, 302, 197, 86, 0, 0, 195, 0, 194, 0, + 249, 192, 0, 0, 284, 0, 387, 0, 382, 383, + 384, 284, 385, 386, 374, 0, 0, 162, 134, 137, + 136, 0, 165, 170, 0, 266, 303, 0, 309, 117, + 116, 296, 0, 310, 294, 317, 293, 0, 0, 0, + 0, 204, 61, 0, 191, 81, 180, 226, 280, 227, + 223, 225, 0, 109, 110, 0, 268, 170, 394, 308, + 0, 152, 0, 330, 314, 0, 0, 0, 0, 0, + 0, 0, 0, 359, 351, 0, 0, 113, 118, 118, + 323, 328, 0, 0, 320, 321, 324, 352, 322, 0, + 206, 0, 202, 0, 0, 193, 0, 224, 188, 267, + 0, 0, 316, 361, 0, 0, 357, 341, 342, 343, + 0, 0, 0, 360, 0, 358, 325, 124, 0, 125, + 0, 0, 312, 317, 311, 334, 0, 126, 0, 0, + 200, 0, 196, 205, 0, 0, 0, 362, 45, 0, + 0, 0, 355, 344, 0, 349, 0, 0, 122, 208, + 0, 123, 211, 329, 316, 0, 0, 207, 0, 0, + 203, 313, 0, 315, 353, 335, 339, 0, 350, 0, + 120, 0, 121, 0, 327, 318, 316, 0, 198, 201, + 331, 316, 361, 316, 356, 363, 0, 209, 212, 319, + 333, 0, 316, 354, 0, 340, 0, 0, 364, 365, + 345, 0, 0, 199, 332, 336, 0, 363, 0, 0, + 210, 213, 361, 0, 0, 346, 366, 0, 367, 0, + 0, 337, 368, 0, 347, 316, 0, 0, 338, 348, + 369, 0, 0, 0 }; -static const short yydefgoto[] = { 680, - 1, 2, 3, 17, 18, 19, 231, 377, 237, 380, - 113, 310, 446, 86, 153, 280, 88, 89, 90, 91, - 92, 391, 93, 265, 264, 262, 451, 263, 94, 154, - 95, 218, 219, 220, 372, 433, 434, 20, 108, 526, - 300, 59, 373, 418, 301, 23, 99, 194, 24, 130, - 118, 46, 114, 119, 424, 47, 376, 223, 224, 26, - 203, 204, 205, 422, 470, 448, 449, 450, 489, 640, - 608, 580, 543, 577, 597, 620, 650, 600, 622, 651, - 210, 122, 496, 123, 27, 145, 147, 137, 62, 493, +static const short yydefgoto[] = { 682, + 1, 2, 3, 17, 18, 19, 231, 378, 237, 381, + 113, 310, 448, 86, 153, 280, 88, 89, 90, 91, + 92, 393, 93, 265, 264, 262, 453, 263, 94, 154, + 95, 218, 219, 220, 373, 435, 436, 20, 108, 528, + 300, 59, 374, 420, 301, 23, 99, 194, 24, 130, + 118, 46, 114, 119, 426, 47, 377, 223, 224, 26, + 203, 204, 205, 424, 472, 450, 451, 452, 491, 642, + 610, 582, 545, 579, 599, 622, 652, 602, 624, 653, + 210, 122, 498, 123, 27, 145, 147, 137, 62, 495, 240, 64, 65, 142, 330, 331, 135, 136, 101, 192, - 102, 104, 193, 435, 436, 481, 221, 337, 388, 389, - 390, 370, 253, 371, 530, 531, 532, 551, 572, 314, - 573, 439, 533, 534, 603, 550, 641, 631, 661, 674, - 632, 535, 536, 630, 537, 563, 588, 646, 647, 648, - 672, 285, 286, 302, 408, 303, 304, 305, 213, 214, - 306, 307, 431, 96 + 102, 104, 193, 437, 438, 483, 221, 338, 390, 391, + 392, 371, 253, 372, 532, 533, 534, 553, 574, 314, + 575, 441, 535, 536, 605, 552, 643, 633, 663, 676, + 634, 537, 538, 632, 539, 565, 590, 648, 649, 650, + 674, 285, 286, 302, 410, 303, 304, 305, 213, 214, + 306, 307, 433, 96 }; -static const short yypact[] = { 66, - 82, 2070, 2070, 286,-32768,-32768,-32768,-32768, 77, 84, - 103, 30, 55, 79,-32768,-32768,-32768,-32768,-32768, 60, - 113, 405, 142,-32768, 183,-32768,-32768, 2070,-32768,-32768, --32768,-32768,-32768,-32768, 163,-32768, 170,-32768, 173, 1932, - 1866, 165,-32768,-32768, 60, 35,-32768, 183, 589,-32768, - 530,-32768, 60, 142,-32768, 183,-32768,-32768, 1138,-32768, --32768, 458,-32768, 192, 267,-32768, 200,-32768,-32768,-32768, --32768,-32768,-32768, 1932, 1932, 229,-32768,-32768,-32768, 1932, --32768,-32768, 850,-32768,-32768, 1932, 206, 211,-32768, 1959, - 1986,-32768, 2136, 366, 288, 1932,-32768, 243, 161,-32768, - 271, 438, 842, 237, 150,-32768, 530, 60,-32768, 254, --32768, 1408, 361, 183,-32768,-32768, 530, 106,-32768, 183, - 732, 389, 413, 112, 1354, 1138,-32768,-32768,-32768,-32768, - 183,-32768,-32768, 318, 297,-32768, 458, 183,-32768,-32768, - 412, 306, 639, 824,-32768, 183,-32768,-32768,-32768,-32768, --32768, 315, 321, 322, 331,-32768, 352, 1932, 850,-32768, - 850,-32768, 1932, 1932, 401,-32768,-32768, 1932, 1932, 1932, - 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932, 1932,-32768, --32768, 229, 229, 1932, 1932,-32768,-32768,-32768,-32768, 161, - 1421,-32768, 442, 648,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768, 93,-32768, 394,-32768, 413,-32768,-32768, 443, - 413, 466,-32768, 907,-32768, 377, 407,-32768, 323, 59, --32768,-32768, 456, 183, 199, 283,-32768, 530, 530,-32768, - 361, 183,-32768, 1474,-32768,-32768, 361, 1932, 229, 400, - 297,-32768,-32768,-32768,-32768,-32768, 409,-32768, 416,-32768, --32768,-32768, 418, 423, 1755,-32768, 2136, 427, 432, 2136, - 2136, 1932, 479, 1932, 1932, 1725, 2193, 1903, 1130, 1357, - 960, 960, 455, 455,-32768,-32768,-32768,-32768,-32768, 450, - 211, 448, 310, 296,-32768, 628,-32768, 457,-32768, 1487, --32768, 648, 465, 842, 2013, 52, 467,-32768,-32768,-32768, - 1088,-32768, 470, 257,-32768,-32768, 154,-32768,-32768, 57, --32768,-32768,-32768, 861,-32768, 389,-32768,-32768, 389,-32768, - 512,-32768,-32768, 468,-32768, 2136,-32768, 183, 475, 473, --32768,-32768, 473, 183, 183,-32768, 526,-32768,-32768,-32768, --32768,-32768, 523, 1932, 2171, 2183,-32768,-32768, 442,-32768, --32768,-32768,-32768,-32768, 482,-32768,-32768, 209, 490,-32768, --32768, 177, 67,-32768,-32768, 1058,-32768, 576, 322,-32768, --32768,-32768, 505, 451,-32768, 1343, 57,-32768,-32768, 57, --32768, 183,-32768, 261,-32768,-32768, 229, 944, 526,-32768, - 1163,-32768, 2065,-32768,-32768, 1932,-32768,-32768,-32768, 67, - 183, 137, 242, 183,-32768, 242, 183, 628,-32768,-32768, --32768,-32768,-32768, 530,-32768, 60,-32768, 387,-32768,-32768, - 2136,-32768,-32768, 1343,-32768,-32768,-32768, 1932, 187,-32768, - 276, 433, 672, 507, 508, 762,-32768,-32768,-32768,-32768, --32768, 549, 229, 1932,-32768, 550, 2136, 514, 516,-32768, - 1932, 250, 188, 609,-32768, 1540,-32768,-32768,-32768, 216, --32768,-32768,-32768, 309, 325, 155, 387,-32768,-32768, 1163, --32768, 1642, 1932,-32768,-32768, 229,-32768,-32768,-32768,-32768, - 520,-32768,-32768,-32768,-32768, 1621, 564, 2109, 1163,-32768, --32768, 1223,-32768, 2065,-32768, 459,-32768, 459,-32768,-32768, - 524,-32768,-32768, 532,-32768, 1642,-32768,-32768, 1701, 573, - 555,-32768,-32768, 559, 561, 1932, 584, 546, 547, 1879, - 201, 619,-32768, 590, 553,-32768, 567, 794,-32768, 611, - 1026, 61,-32768,-32768,-32768,-32768,-32768, 1812,-32768, 1932, - 600, 569, 1283,-32768, 302,-32768,-32768,-32768, 1932, 591, --32768, 1932, 1932, 1565,-32768,-32768,-32768,-32768, 580, 1932, - 588,-32768, 610,-32768,-32768,-32768, 530,-32768, 60, 1106, --32768,-32768,-32768,-32768, 1932,-32768, 1283, 2091,-32768, 1283, --32768,-32768, 596, 1932, 665,-32768, 868, 630, 612, 1932, --32768,-32768, 632,-32768, 1932, 350,-32768, 227, 355,-32768, - 955,-32768,-32768, 1701, 634,-32768, 675, 1283,-32768,-32768, - 637,-32768,-32768,-32768,-32768, 2158,-32768, 39,-32768, 361, --32768, 361,-32768,-32768,-32768, 641,-32768,-32768,-32768,-32768, - 1932,-32768,-32768, 705, 642,-32768,-32768,-32768,-32768, 1283, --32768,-32768, 646,-32768, 666, 47, 643,-32768,-32768, 322, - 322,-32768,-32768,-32768, 1932, 705, 651, 705,-32768,-32768, - 1932, 653, 48,-32768,-32768, 654,-32768, 466, 655,-32768, - 288, 303,-32768,-32768, 657, 466,-32768,-32768, 288, 735, - 740,-32768 +static const short yypact[] = { 60, + 83, 2030, 2030, 208,-32768,-32768,-32768,-32768, 73, 76, + 98, 58, 70, 93,-32768,-32768,-32768,-32768,-32768, 199, + 26, 193, 247,-32768, 81,-32768,-32768, 2030,-32768,-32768, +-32768,-32768,-32768,-32768, 77,-32768, 79,-32768, 94, 1892, + 1826, 123,-32768,-32768, 199, 134,-32768, 81, 267,-32768, + 442,-32768, 199, 247,-32768, 81,-32768,-32768, 964,-32768, +-32768, 547,-32768, 111, 768,-32768, 114,-32768,-32768,-32768, +-32768,-32768,-32768, 1892, 1892, 326,-32768,-32768,-32768, 1892, +-32768,-32768, 1038,-32768,-32768, 1892, 119, 180,-32768, 1919, + 1946,-32768, 2154, 968, 195, 1892,-32768, 220, 556,-32768, + 238, 691, 615, 444, 265,-32768, 442, 199,-32768, 210, +-32768, 1361, 333, 81,-32768,-32768, 442, 163,-32768, 81, + 1346, 360, 471, 201, 1286, 964,-32768,-32768,-32768,-32768, + 81,-32768,-32768, 299, 294,-32768, 547, 81,-32768,-32768, +-32768, 303, 389, 1109,-32768, 81,-32768,-32768,-32768,-32768, +-32768, 309, 312, 316, 337,-32768, 345, 1892, 1038,-32768, + 1038,-32768, 1892, 1892, 393,-32768,-32768, 1892, 1892, 1892, + 1892, 1892, 1892, 1892, 1892, 1892, 1892, 1892, 1892,-32768, +-32768, 326, 326, 1892, 1892,-32768,-32768,-32768,-32768, 556, + 1421,-32768, 496, 219,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768, 154,-32768, 378,-32768, 471,-32768,-32768, 417, + 471, 445,-32768, 944,-32768, 373, 388,-32768, 585, 65, +-32768,-32768, 432, 81, 362, 457,-32768, 442, 442,-32768, + 333, 81,-32768, 1434,-32768,-32768, 333, 1892, 326, 400, + 294,-32768,-32768,-32768,-32768,-32768, 407,-32768, 412,-32768, +-32768,-32768, 415, 420, 1715,-32768, 2154, 429, 449, 2154, + 2154, 1892, 505, 1892, 1892, 1685, 1292, 1863, 1526, 1741, + 1005, 1005, 630, 630,-32768,-32768,-32768,-32768,-32768, 459, + 180, 462, 448, 460,-32768, 851,-32768, 470,-32768, 1487, +-32768, 219, 484, 615, 1973, 44, 486,-32768,-32768,-32768, + 1613,-32768, 508, 275,-32768,-32768, 170,-32768,-32768, 53, +-32768,-32768,-32768, 1374,-32768, 360,-32768,-32768, 360,-32768, + 558,-32768,-32768, 513,-32768, 2154,-32768, 81, 529, 519, +-32768,-32768, 519,-32768, 81, 81,-32768, 577,-32768,-32768, +-32768,-32768,-32768, 576, 1892, 2022, 2166,-32768,-32768, 496, +-32768,-32768,-32768,-32768,-32768, 541,-32768,-32768, 212, 549, +-32768,-32768, 260, 272,-32768,-32768, 598,-32768, 624, 316, +-32768,-32768,-32768, 552, 102,-32768, 1275, 53,-32768,-32768, + 53,-32768, 81,-32768, 403, 403,-32768,-32768, 326, 709, + 577,-32768, 1095,-32768, 1605,-32768,-32768, 1892,-32768,-32768, +-32768, 272, 81, 178, 450, 81,-32768, 450, 81, 851, +-32768,-32768,-32768,-32768,-32768, 442,-32768, 199,-32768, 748, +-32768,-32768, 2154,-32768,-32768, 1275,-32768,-32768,-32768, 1892, + 59,-32768, 283, 490, 629, 553, 567, 789,-32768,-32768, +-32768,-32768,-32768, 623, 326, 1892,-32768, 626, 2154, 590, + 604,-32768, 1892, 240, 206, 454,-32768, 1500,-32768,-32768, +-32768, 217,-32768,-32768,-32768, 293, 398, 159, 748,-32768, +-32768, 1095,-32768, 2096, 1892,-32768,-32768, 326,-32768,-32768, +-32768,-32768, 608,-32768,-32768,-32768,-32768, 1581, 651, 2069, + 1095,-32768,-32768, 1155,-32768, 1605,-32768, 522,-32768, 522, +-32768,-32768, 606,-32768,-32768, 612,-32768, 2096,-32768,-32768, + 1661, 653, 634,-32768,-32768, 635, 637, 1892, 661, 625, + 648, 1839, 122, 693,-32768, 663, 667,-32768, 668, 422, +-32768, 731, 882, 54,-32768,-32768,-32768,-32768,-32768, 1772, +-32768, 1892, 712, 678, 1215,-32768, 364,-32768,-32768,-32768, + 1892, 706,-32768, 1892, 1892, 2118,-32768,-32768,-32768,-32768, + 689, 1892, 690,-32768, 711,-32768,-32768,-32768, 442,-32768, + 199, 981,-32768,-32768,-32768,-32768, 1892,-32768, 1215, 2051, +-32768, 1215,-32768,-32768, 695, 1892, 756,-32768, 616, 699, + 701, 1892,-32768,-32768, 702,-32768, 1892, 410,-32768, 281, + 461,-32768, 327,-32768,-32768, 1661, 707,-32768, 749, 1215, +-32768,-32768, 708,-32768,-32768,-32768,-32768, 2136,-32768, 43, +-32768, 333,-32768, 333,-32768,-32768,-32768, 710,-32768,-32768, +-32768,-32768, 1892,-32768,-32768, 786, 724,-32768,-32768,-32768, +-32768, 1215,-32768,-32768, 725,-32768, 744, 47, 736,-32768, +-32768, 316, 316,-32768,-32768,-32768, 1892, 786, 728, 786, +-32768,-32768, 1892, 743, 52,-32768,-32768, 745,-32768, 445, + 747,-32768, 195, 252,-32768,-32768, 751, 445,-32768,-32768, + 195, 825, 826,-32768 }; static const short yypgoto[] = {-32768, --32768,-32768,-32768, 65,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768, -5,-32768, -40, 446, -137, 424,-32768,-32768, - -55,-32768, 399,-32768,-32768,-32768,-32768,-32768, 190,-32768, - -191, -207, 527,-32768,-32768, 314,-32768, 22, -98, 215, - 0, 700,-32768, 339, 7, -7, -15, 560, 11, -149, - -366, -45, -107, -52,-32768,-32768,-32768, 202, 14, 53, --32768, 464,-32768, 337,-32768, -378,-32768, -409,-32768,-32768, +-32768,-32768,-32768, 141,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768, -5,-32768, -40, 535, -153, 497,-32768,-32768, + -28,-32768, 401,-32768,-32768,-32768,-32768,-32768, 279,-32768, + -189, -213, 614,-32768,-32768, 399,-32768, -2, -94, 296, + 0, 785,-32768, 423, 7, -9, -1, 644, 22, -165, + -378, -39, -100, -57,-32768,-32768,-32768, 55, 14, 36, +-32768, 555,-32768, 424,-32768, -403,-32768, -446,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, - -38, -68, -298, -13, -30,-32768,-32768,-32768,-32768,-32768, - 528, 41,-32768, 620, 522, 391, 635, 537, 1, -79, - -11, -89, -139, 344,-32768,-32768, -180,-32768,-32768,-32768, - 403, -278,-32768, -128,-32768,-32768,-32768,-32768, -95, -286, - -495, 358,-32768, 193,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768, 214,-32768, -556, 147,-32768, 146, --32768, 531,-32768, -233,-32768,-32768,-32768, 449, -195,-32768, + -43, -55, -318, -13, -44,-32768,-32768,-32768,-32768,-32768, + 610, 40,-32768, 715, 617, 469, 723, 631, 29, -80, + 5, -89, -149, 436,-32768,-32768, -176,-32768,-32768,-32768, + 483, -285,-32768, -129,-32768,-32768,-32768,-32768, -83, -283, + -459, 437,-32768, 271,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768, 274,-32768, -577, 224,-32768, 218, +-32768, 595,-32768, -247,-32768,-32768,-32768, 520, -200,-32768, -32768,-32768,-32768, 9 }; -#define YYLAST 2245 +#define YYLAST 2218 static const short yytable[] = { 87, - 98, 21, 21, 35, 37, 39, 49, 124, 22, 22, - 28, 28, 121, 232, 54, 25, 25, 222, 148, 149, - 296, 229, 198, 320, 151, 254, 225, 21, 132, 325, - 156, 105, 55, 48, 22, 56, 28, 322, 311, 125, - 187, 25, 51, 53, 291, 384, 281, 464, 226, 141, - 284, 100, 351, 143, 209, 585, 134, 369, 48, -102, - 186, 574, 43, 402, 120, -1, 48, 29, 312, 43, - 150, 216, 131, 144, 643, 100, 634, 60, 67, 32, - 33, -2, 544, 155, 656, 668, 32, 33, 40, 14, - 207, 504, 61, 100, 211, 132, 14, 202, 423, 283, - 60, 425, 232, 105, 666, 32, 33, 623, 60, 44, - 542, 106, 197, 41, 635, 107, 405, 48, 45, 575, - 120, 48, 657, 669, 222, 400, 191, 360, 141, 638, - 120, 134, 143, 582, 642, 222, 644, 42, 252, 131, - -102, 222, 291, 349, 282, 653, 57, 332, 58, 332, - 288, 486, 144, 197, 100, 498, 316, 281, 34, 258, - 319, 259, 243, 132, 245, 36, 14, 606, 293, 100, - 609, 100, 60, 294, 463, 318, 278, 279, 677, 43, - 398, 110, 227, 60, 38, 247, 228, 249, 235, 50, - 43, 398, 107, 324, 206, 455, 456, 509, 628, 340, - 596, 43, 115, 32, 33, 206, 14, 437, 111, 112, - 189, 207, 14, 111, 112, 211, 14, 14, 43, 190, - 191, 343, 206, 103, 473, 208, 399, 25, 14, 367, - 652, 32, 33, 134, 368, 400, 191, 399, 120, 43, - 412, 120, 120, 206, 63, 14, 400, 191, 116, 355, - 560, 66, 478, 110, 68, 483, -162, 117, 452, 499, - 284, 132, -162, 43, 115, 405, 14, 139, 469, 138, - 5, 14, 7, 97, 400, 191, 60, 146, 9, 10, - 11, 157, 404, 407, 395, 604, 44, 332, 202, 396, - 14, 158, 438, 54, 13, 45, 186, 15, 428, 25, - 111, 112, 454, -162, 43, 398, 374, -162, 206, 453, - 116, 55, 212, 349, 56, 460, 206, 469, 188, 117, - 349, 362, 363, 217, 375, 495, -105, -105, -105, -105, - 158, 14, -105, 365, -105, -105, -105, 366, 438, 242, - 484, 233, 234, 140, -253, 429, 195, 248, 403, 406, - -105, 497, 475, 238, 289, 290, 476, 529, 317, 189, - 45, 217, 30, 31, -316, -316, -316, -316, 190, 191, - 465, 350, -316, -316, -316, 401, 48, 239, 675, 25, - 529, 430, 244, 676, 417, 502, 105, 132, -316, 228, - 250, 468, 128, 129, 414, 416, 251, 120, 9, 10, - 11, 503, 466, 252, -105, 107, 255, 545, 5, 6, - 7, 8, 636, 48, 637, 501, 9, 10, 11, 180, - 181, 25, 182, 183, 184, 185, 619, 120, 256, 48, - 228, 621, 13, 321, 14, 107, 132, 487, -82, 207, - 211, 5, -101, 7, 196, 525, 207, 233, 234, 9, - 10, 11, 295, 60, 5, 57, 7, 58, 133, 308, - 32, 33, 9, 10, 11, 13, 401, 401, 525, 110, - 507, 111, 112, 48, 71, 529, 671, 328, 13, 559, - 524, 52, 187, 309, 679, 527, 334, 189, -259, -259, - 232, 315, 528, 335, 538, 336, 190, 191, 338, 25, - 289, 290, 341, 524, 177, 178, 179, 342, 583, 309, - 477, 586, 589, 160, 162, 561, 344, 455, 456, 593, - 54, 659, 660, 599, 222, 347, 222, 415, 598, 381, - 348, 207, 43, 115, 605, 385, 386, 527, 55, 352, - 356, 56, 361, 611, 528, 364, 538, 378, 567, 569, - 379, 25, 382, 383, 618, 601, 257, 387, 401, 14, - 392, 260, 261, 525, 394, 397, 266, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 276, 277, 411, 116, - 120, 413, 48, 426, -295, 482, -31, 490, 117, 109, - 586, 491, -27, -27, -27, -27, 492, 508, 524, 539, - -27, -27, -27, 457, 458, 459, 546, 461, 462, 547, - -32, 43, 398, 549, 662, 110, -27, 552, -162, 553, - 586, 555, 556, 557, -162, 562, 570, 564, 297, 565, - 474, 5, 6, 7, 8, 579, 326, 299, 14, 9, - 10, 11, 5, 566, 7, 196, 581, 111, 112, 584, - 9, 10, 11, 128, 129, 13, 592, 14, 497, 9, - 10, 11, 345, 346, 594, -162, 13, 45, 595, -162, - -27, 610, 217, 505, -114, -114, -114, -114, -114, -114, - -114, 612, -114, -114, -114, -114, -114, 615, -114, -114, + 98, 21, 21, 35, 37, 39, 49, 121, 22, 22, + 28, 28, 54, 124, 132, 25, 25, 320, 51, 53, + 232, 198, 296, 325, 254, 229, 225, 21, 291, 222, + 281, 105, 322, 48, 22, 56, 28, 466, 352, 125, + 284, 25, 311, 55, 404, 148, 149, 546, 385, 209, + 386, 151, 186, 370, 576, 645, 134, 156, 48, -1, + 60, 226, 100, 141, 120, -102, 48, 187, 506, 143, + 150, 216, 131, 144, 312, 32, 33, 67, 32, 33, + 636, 132, -2, 60, 658, 668, 100, 544, 14, 670, + 207, 60, 425, 587, 211, 427, 475, 202, 584, 283, + 32, 33, 50, 105, 100, 5, 57, 7, 58, 232, + 14, 155, 577, 9, 10, 11, 40, 48, 637, 361, + 120, 48, 659, 197, 32, 33, 291, 671, 41, 13, + 120, 134, 608, 350, 252, 611, 222, 500, 243, 131, + 245, 281, 141, 29, 282, 625, -102, 222, 143, 132, + 288, 42, 144, 222, 34, 60, 488, 36, 63, 332, + 66, 334, 465, 630, 197, 100, 60, 640, 61, 316, + 318, 562, 644, 319, 646, 68, 278, 279, 417, 38, + 100, 103, 100, 655, 247, 110, 249, 258, 138, 259, + 598, 146, 242, 324, 157, 654, 5, 6, 7, 8, + 248, 43, 511, 186, 9, 10, 11, 14, 43, 400, + 106, 207, 206, 439, 107, 211, 679, 111, 112, 43, + 13, 344, 14, 206, 128, 129, 341, 25, 14, 293, + 9, 10, 11, 134, 294, 14, 457, 458, 120, 227, + 414, 120, 120, 228, 454, 368, 14, 132, 44, 356, + 369, 57, 284, 58, 471, 401, 501, 45, 480, 60, + 158, 485, 43, 400, 402, 191, 407, 109, 212, 52, + -27, -27, -27, -27, 43, 402, 191, 235, -27, -27, + -27, 107, 406, 409, 30, 31, 321, 397, 202, 14, + 606, 54, 398, 110, -27, 188, -162, 363, 364, 25, + 334, 14, -162, 471, 375, 350, 440, 110, 456, 401, + -162, 455, 350, 195, 56, 497, -162, 462, 402, 191, + 158, 407, 55, 111, 112, 111, 112, 677, 32, 33, + 402, 191, 678, 217, 238, 376, -316, -316, -316, -316, + 208, 431, 431, -162, -316, -316, -316, -162, -27, 405, + 408, 366, 440, 110, 486, 367, -162, -162, 531, 477, + -316, -162, -162, 478, 43, 115, 43, 400, 206, 504, + 206, 416, 418, 228, 239, 132, 403, 48, 467, 244, + 25, 531, 382, 432, 250, 111, 112, 251, 105, 387, + 388, 14, 5, 14, 7, 196, 419, 252, 120, 120, + 9, 10, 11, -162, 468, 43, 115, -162, 638, 547, + 639, 116, 255, 499, -101, 48, 13, 503, 233, 234, + 117, 256, 45, 25, 132, 5, 6, 7, 8, 120, + -82, 48, 14, 9, 10, 11, 295, 428, 60, 489, + 430, 207, 211, 110, 43, 115, 43, 527, 207, 13, + 206, 14, 116, 71, 206, 308, 43, 400, 459, 460, + 461, 117, 463, 464, 309, -261, -261, 315, 403, 403, + 527, 14, 509, 14, 505, 48, 531, 328, 107, 14, + 673, 561, 526, 14, 335, 476, 621, 529, 681, 336, + 228, 116, 337, 44, 530, 339, 540, 189, 570, 232, + 117, 25, 45, 499, 342, 526, 190, 191, 111, 112, + 585, 187, 45, 588, 591, 233, 234, 563, 289, 290, + 54, 595, 661, 662, 343, 600, 569, 571, 507, 111, + 112, 601, 317, 207, 348, 351, 607, 623, 222, 529, + 222, 107, 345, 56, 349, 613, 530, 133, 540, 32, + 33, 55, 353, 25, 289, 290, 620, 603, 257, 357, + 403, 362, 550, 260, 261, 527, 309, 479, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 457, 458, 120, 365, 48, 217, 160, 162, -105, -105, + -105, -105, 588, 379, -105, 380, -105, -105, -105, 384, + 526, 5, 6, 7, 8, 189, 383, 411, 389, 9, + 10, 11, -105, 394, 190, 191, 664, 32, 33, 199, + 200, 201, 588, 396, 399, 13, 413, 14, 415, 217, + -295, -114, -114, -114, -114, -114, -114, -114, 326, -114, + -114, -114, -114, -114, 484, -114, -114, -114, -114, -114, -114, -114, -114, -114, -114, -114, -114, -114, -114, -114, - -114, -114, -114, -376, -114, -114, 614, 548, 617, 626, - 627, -114, 629, 645, -114, -261, -261, 639, 649, -114, - -114, -114, 654, 658, 655, -114, -114, 664, 667, 670, - -114, 673, 230, 678, 681, -19, -19, -19, -19, 682, - 359, 587, 393, -19, -19, -19, 313, 479, -114, -114, - -114, -114, 576, -114, 126, 467, 292, 357, 110, -19, - 471, -162, 217, 246, -316, -316, 333, -162, 329, -316, - -316, 241, -316, 427, 421, 327, -316, 480, -316, -316, - -316, -316, -316, -316, -316, -316, -316, -316, -316, 447, - -316, 440, -316, 485, -316, -316, 624, 5, 6, 7, - 8, -316, 663, 665, -316, 9, 10, 11, -162, -316, - -316, -316, -162, -19, 410, -316, -316, 625, 0, 353, - -316, 13, 421, 14, 139, 0, 472, 5, 0, 7, - 97, 0, 0, 0, 0, 9, 10, 11, -316, -291, - -316, -316, 488, -316, 32, 33, 199, 200, 201, 494, - 152, 13, 69, 5, 15, 7, 97, 70, 71, 0, - 72, 9, 10, 11, 5, 6, 7, 8, 447, 0, - 568, 506, 9, 10, 11, 0, 0, 13, 73, 0, - 15, 0, 74, 75, 0, 0, 0, 447, 13, 76, - 447, 0, 77, 0, 0, 0, 0, 78, 79, 80, - 0, 0, 0, 81, 82, 0, 0, 297, 83, 298, - 5, 6, 7, 8, 554, 0, 299, 0, 9, 10, - 11, 180, 181, 0, 182, 183, 184, 185, 84, 85, - 0, -91, 0, 0, 13, 0, 14, 0, 578, 0, - 0, 447, 0, 613, 432, 0, -316, -316, -316, -316, - -316, -316, -316, 0, -316, -316, -316, -316, -316, 0, + -31, -114, -114, 492, 346, 347, -105, 493, -114, 180, + 181, -114, 182, 183, 184, 185, -114, -114, -114, 177, + 178, 179, -114, -114, 494, 510, 541, -114, 548, 549, + -32, 615, 551, 554, 5, 555, 7, 196, 557, 564, + 566, 558, 9, 10, 11, -114, -114, -114, -114, 434, + -114, -316, -316, -316, -316, -316, -316, -316, 13, -316, + -316, -316, -316, -316, 559, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, -316, - -316, -316, -316, -316, -316, 447, -316, -316, 447, 0, - 0, 110, -376, -316, -162, 0, -316, 0, 616, 0, - -162, -316, -316, -316, 0, 0, 0, -316, -316, 0, - 0, 0, -316, 0, 0, 0, 447, 175, 176, 177, - 178, 179, 0, 111, 112, 0, 0, 0, 0, 0, - -316, 0, -316, -316, 0, -316, 571, 0, -316, -316, - 0, -162, 0, -316, -316, -162, -316, 0, 447, 0, - -316, 0, -316, -316, -316, -316, -316, -316, -316, -316, - -316, -316, -316, 0, -316, 0, -316, 0, -316, -316, - 0, 5, 6, 7, 8, -316, 0, 409, -316, 9, - 10, 11, 0, -316, -316, -316, 0, 0, 0, -316, - -316, 0, 0, 0, -316, 13, 0, 14, 0, 0, - 0, 5, 6, 7, 8, 0, 0, 0, 0, 9, - 10, 11, -316, 0, -316, -316, 602, -316, -326, -326, - 0, 0, 0, -326, -326, 13, -326, 14, 0, 0, - -326, 0, -326, -326, -326, -326, -326, -326, -326, -326, - -326, -326, -326, 0, -326, 0, -326, 0, -326, -326, - 0, 0, 127, 128, 129, -326, 0, 0, -326, 9, - 10, 11, 0, -326, -326, -326, 0, 0, 0, -326, - -326, 0, 0, 441, -326, 442, 33, 14, 0, 0, - 70, 71, 0, 72, 172, 173, 174, 175, 176, 177, - 178, 179, -326, 0, -326, -326, 0, -326, 0, 0, - 0, 73, 0, 15, 0, 74, 75, 0, 0, 0, - 0, 0, 76, 0, 0, 77, 0, 0, 0, 0, - 78, 79, 80, 0, 0, 0, 81, 82, 0, 0, - 443, 83, 444, 441, 0, 442, 33, 0, 0, 0, - 70, 71, 0, 72, 0, 0, 0, 0, 0, 0, - -190, 84, 85, 0, 445, 0, 0, 0, 0, 0, - 0, 73, 0, 15, 0, 74, 75, 0, 0, 0, - 0, 0, 76, 0, 0, 77, 0, 0, 0, 0, - 78, 79, 80, 0, 0, 0, 81, 82, 0, 0, - 443, 83, 444, 441, 0, 442, 33, 0, 0, 0, - 70, 71, 0, 72, 0, 0, 0, 0, 0, 0, - -250, 84, 85, 0, 445, 0, 0, 0, 0, 0, - 0, 73, 0, 15, 0, 74, 75, 0, 0, 0, - 0, 0, 76, 0, 0, 77, 0, 0, 0, 0, - 78, 79, 80, 0, 0, 0, 81, 82, 0, 0, - 443, 83, 444, 419, 0, 69, 0, 0, 0, 0, - 70, 71, 0, 72, 236, 0, 0, -23, -23, -23, - -23, 84, 85, 0, 445, -23, -23, -23, 0, 0, - 0, 73, 0, 15, 0, 74, 75, 0, 0, 0, - 110, -23, 76, -162, 0, 77, 0, 0, 0, -162, - 78, 79, 80, 0, 0, 0, 81, 82, 0, 0, - 0, 83, 173, 174, 175, 176, 177, 178, 179, 0, - 69, 0, 111, 112, 0, 70, 71, 0, 72, 0, - 0, 84, 85, 69, 420, 0, 0, 0, 70, 71, - -162, 72, 0, 0, -162, -23, 73, 0, 15, 0, - 74, 75, 0, 0, 0, 0, 0, 76, 0, 73, - 77, 15, 0, 74, 75, 78, 79, 80, 0, 0, - 76, 81, 82, 77, 0, 0, 83, 0, 78, 79, - 80, 0, 0, 0, 81, 82, 69, 0, 0, 83, - 0, 70, 71, 0, 72, 0, 84, 85, 0, 69, - 215, 0, 0, 0, 70, 71, 0, 72, 0, 84, - 85, 0, 73, 287, 15, 0, 74, 75, 0, 0, - 0, 0, 0, 76, 0, 73, 77, 15, 0, 74, - 75, 78, 79, 80, 0, 0, 76, 81, 82, 77, - 0, 0, 83, 0, 78, 79, 80, 0, 0, 0, - 81, 82, 69, 0, 0, 83, 0, 70, 71, 0, - 72, 0, 84, 85, 0, 0, 323, 0, 0, 0, - 0, 0, 0, 0, 0, 84, 85, 0, 73, 354, - 15, 0, 74, 75, 590, 0, 0, 0, 0, 76, - 0, 0, 77, 0, 0, 0, 0, 78, 79, 80, - 0, 0, 0, 81, 82, 0, 0, 0, 83, 163, - 164, 165, 591, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 0, 84, 85, - 0, 0, 500, 442, 510, 6, 7, 8, 70, 71, - 0, 72, 9, 10, 11, 511, 0, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 13, 73, - 14, 15, 0, 74, 75, 0, 0, 0, 0, 0, - 76, 0, 0, 77, 0, 0, 0, 0, 78, 79, - 80, 14, 0, 0, 81, 82, 163, 164, 165, 83, - 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 0, 0, 0, 523, 0, 84, - 85, 0, 252, 442, 33, 0, 0, 0, 70, 71, - 0, 72, 0, 0, 0, 511, 0, 512, 513, 514, - 515, 516, 517, 518, 519, 520, 521, 522, 0, 73, + 189, -316, -316, 567, 568, 395, 572, 581, -316, 190, + 191, -316, 470, 128, 129, 583, -316, -316, -316, 9, + 10, 11, -316, -316, 586, 594, 596, -316, 139, 597, + 612, 5, 614, 7, 97, 616, 617, 423, 619, 9, + 10, 11, 628, 631, 629, -316, 641, -316, -316, 217, + -316, -316, -316, 449, 647, 13, -316, -316, 15, -316, + 651, 656, 657, -316, 666, -316, -316, -316, -316, -316, + -316, -316, -316, -316, -316, -316, 660, -316, 669, -316, + 672, -316, -316, 675, 683, 684, 423, 680, -316, 360, + 474, -316, 589, 313, 481, 578, -316, -316, -316, 126, + 292, 469, -316, -316, 140, -253, 490, -316, 358, 473, + 329, 297, 429, 496, 5, 6, 7, 8, 246, 241, + 299, 333, 9, 10, 11, -316, -291, -316, -316, 327, + -316, 482, 449, 442, 487, 508, 626, 667, 13, 627, + 14, 665, 573, 354, -316, -316, 412, 0, 0, -316, + -316, 449, -316, 0, 449, 0, -316, 0, -316, -316, + -316, -316, -316, -316, -316, -316, -316, -316, -316, 0, + -316, 0, -316, 0, -316, -316, 0, 0, 556, 0, + 0, -316, 0, 0, -316, 0, -376, 0, 0, -316, + -316, -316, 0, 0, 0, -316, -316, 0, 0, 0, + -316, 0, 580, 0, 297, 449, 298, 5, 6, 7, + 8, 0, 0, 299, 0, 9, 10, 11, -316, 0, + -316, -316, 0, -316, 0, 0, 0, 0, 127, 128, + 129, 13, 0, 14, 0, 9, 10, 11, 0, 449, + 0, 604, 449, -326, -326, 0, 0, 0, -326, -326, + 0, -326, 618, 14, 0, -326, 0, -326, -326, -326, + -326, -326, -326, -326, -326, -326, -326, -326, 0, -326, + 449, -326, 0, -326, -326, 0, 0, 0, 0, -376, + -326, 180, 181, -326, 182, 183, 184, 185, -326, -326, + -326, 0, 0, 0, -326, -326, 0, 0, 152, -326, + 69, 5, 449, 7, 97, 70, 71, 0, 72, 9, + 10, 11, 175, 176, 177, 178, 179, -326, 0, -326, + -326, 0, -326, 0, 0, 13, 73, 0, 15, 0, + 74, 75, 0, 0, 0, 0, 0, 76, 0, 0, + 77, 0, 0, 0, 0, 78, 79, 80, 0, 0, + 0, 81, 82, 0, 0, 443, 83, 444, 33, 0, + 0, 0, 70, 71, 0, 72, 0, 0, 0, 139, + 0, 0, 5, 0, 7, 97, 84, 85, 0, -91, + 9, 10, 11, 73, 0, 15, 0, 74, 75, 0, + 0, 0, 0, 0, 76, 0, 13, 77, 0, 15, + 0, 0, 78, 79, 80, 0, 0, 0, 81, 82, + 0, 0, 445, 83, 446, 443, 0, 444, 33, 0, + 0, 0, 70, 71, 0, 72, 0, 0, 0, 0, + 0, 0, -190, 84, 85, 0, 447, 0, 0, 0, + 0, 0, 0, 73, 0, 15, 0, 74, 75, 0, + 0, 0, 0, 0, 76, 0, 0, 77, 0, 0, + 0, 0, 78, 79, 80, 0, 0, 0, 81, 82, + 0, 0, 445, 83, 446, 443, 0, 444, 33, 0, + 0, 0, 70, 71, 0, 72, 0, 0, 0, 0, + 0, 0, -250, 84, 85, 0, 447, 0, 0, 0, + 0, 0, 0, 73, 0, 15, 0, 74, 75, 0, + 0, 0, 0, 0, 76, 0, 0, 77, 0, 0, + 0, 0, 78, 79, 80, 0, 0, 0, 81, 82, + 0, 0, 445, 83, 446, 421, 0, 69, 0, 0, + 0, 0, 70, 71, 0, 72, 236, 0, 0, -23, + -23, -23, -23, 84, 85, 0, 447, -23, -23, -23, + 0, 0, 0, 73, 0, 15, 0, 74, 75, 0, + 0, 0, 110, -23, 76, -162, 0, 77, 0, 0, + 0, -162, 78, 79, 80, 0, 0, 0, 81, 82, + 0, 0, 0, 83, 170, 171, 172, 173, 174, 175, + 176, 177, 178, 179, 111, 112, 230, 0, 0, -19, + -19, -19, -19, 84, 85, 0, 422, -19, -19, -19, + 0, 0, -162, 69, 0, 0, -162, -23, 70, 71, + 0, 72, 110, -19, 0, -162, 0, 5, 6, 7, + 8, -162, 0, 0, 0, 9, 10, 11, 0, 73, + 0, 15, 0, 74, 75, 0, 0, 0, 0, 0, + 76, 13, 0, 77, 0, 0, 0, 0, 78, 79, + 80, 0, 0, 0, 81, 82, 0, 0, 0, 83, + 0, 0, -162, 69, 0, 0, -162, -19, 70, 71, + 0, 72, 0, 0, 0, 0, 69, 0, 0, 84, + 85, 70, 71, 215, 72, 0, 0, 0, 0, 73, + 0, 15, 0, 74, 75, 0, 0, 0, 0, 0, + 76, 0, 73, 77, 15, 0, 74, 75, 78, 79, + 80, 0, 0, 76, 81, 82, 77, 0, 0, 83, + 0, 78, 79, 80, 0, 0, 0, 81, 82, 69, + 0, 0, 83, 0, 70, 71, 0, 72, 0, 84, + 85, 0, 69, 287, 0, 0, 0, 70, 71, 0, + 72, 0, 84, 85, 0, 73, 323, 15, 0, 74, + 75, 0, 0, 0, 0, 0, 76, 0, 73, 77, + 15, 0, 74, 75, 78, 79, 80, 0, 0, 76, + 81, 82, 77, 0, 0, 83, 0, 78, 79, 80, + 0, 0, 0, 81, 82, 0, 0, 0, 83, 0, + 0, 0, 0, 0, 0, 84, 85, 0, 0, 355, + 172, 173, 174, 175, 176, 177, 178, 179, 84, 85, + 0, 0, 502, 444, 512, 6, 7, 8, 70, 71, + 0, 72, 9, 10, 11, 513, 0, 514, 515, 516, + 517, 518, 519, 520, 521, 522, 523, 524, 13, 73, + 14, 15, 0, 74, 75, 0, 5, 6, 7, 8, + 76, 0, 0, 77, 9, 10, 11, 0, 78, 79, + 80, 0, 0, 0, 81, 82, 0, 0, 0, 83, + 13, 165, 14, 166, 167, 168, 169, 170, 171, 172, + 173, 174, 175, 176, 177, 178, 179, 525, 0, 84, + 85, 0, 252, 444, 33, 0, 0, 0, 70, 71, + 0, 72, 0, 0, 0, 513, 0, 514, 515, 516, + 517, 518, 519, 520, 521, 522, 523, 524, 0, 73, 0, 15, 0, 74, 75, 0, 0, 0, 0, 0, 76, 0, 0, 77, 0, 0, 0, 0, 78, 79, 80, 0, 0, 0, 81, 82, 0, 69, 0, 83, 0, 0, 70, 71, 0, 72, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 523, 0, 84, + 173, 174, 175, 176, 177, 178, 179, 525, 0, 84, 85, 0, 252, 73, 0, 15, 0, 74, 75, 0, 0, 0, 0, 0, 76, 0, 0, 77, 0, 0, 0, 0, 78, 79, 80, 0, 0, 0, 81, 82, 0, 0, 0, 83, 69, 5, 6, 7, 8, 70, - 71, 0, 72, 9, 10, 11, 0, 0, 0, 0, - 0, 0, 0, 84, 85, 0, 339, 0, 0, 13, + 71, 0, 72, 9, 10, 11, 173, 174, 175, 176, + 177, 178, 179, 84, 85, 0, 340, 0, 0, 13, 73, 14, 15, 0, 74, 75, 0, 0, 0, 0, 0, 76, 0, 0, 77, 0, 0, 0, 0, 78, 79, 80, 0, 0, 0, 81, 82, 0, 69, 5, @@ -910,13 +907,13 @@ static const short yytable[] = { 87, 82, 77, 0, 0, 83, 0, 78, 79, 80, 0, 0, 0, 81, 82, 69, 0, 0, 83, 0, 70, 71, 0, 72, 0, 84, 85, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 558, 0, 84, 85, 0, + 175, 176, 177, 178, 179, 560, 0, 84, 85, 0, 73, 69, 15, 0, 74, 75, 70, 71, 0, 72, 0, 76, 0, 0, 77, 0, 0, 0, 0, 78, 79, 80, 0, 0, 0, 81, 82, 73, 69, 15, 83, 74, 75, 70, 71, 0, 72, 0, 76, 0, 0, 77, 0, 0, 0, 0, 78, 79, 80, 0, - 84, 85, 81, 82, 73, 358, 15, 159, 74, 75, + 84, 85, 81, 82, 73, 359, 15, 159, 74, 75, 70, 71, 0, 72, 0, 76, 0, 0, 77, 0, 0, 0, 0, 78, 79, 80, 0, 84, 85, 81, 82, 73, 0, 15, 161, 74, 75, 0, 0, 0, @@ -925,194 +922,191 @@ static const short yytable[] = { 87, 4, 83, -118, 5, 6, 7, 8, 0, 0, 0, 0, 9, 10, 11, 0, 0, 0, 0, 0, 0, 0, 84, 85, 0, 0, 0, 12, 13, 0, 14, - 15, 165, 0, 166, 167, 168, 169, 170, 171, 172, - 173, 174, 175, 176, 177, 178, 179, 0, 540, -118, + 15, 167, 168, 169, 170, 171, 172, 173, 174, 175, + 176, 177, 178, 179, 0, 0, 0, 0, 542, -118, 0, 0, 0, 0, 0, 163, 164, 165, -118, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 163, 164, 165, 16, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, - 179, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 163, 164, 165, 607, 166, 167, 168, 169, 170, 171, + 179, 0, 0, 0, 0, 14, 0, 592, 0, 0, + 163, 164, 165, 609, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 0, 0, - 0, 541, 163, 164, 165, 633, 166, 167, 168, 169, + 0, 543, 163, 164, 165, 593, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, - 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, - 177, 178, 179, 168, 169, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179, 170, 171, 172, 173, 174, - 175, 176, 177, 178, 179 + 163, 164, 165, 635, 166, 167, 168, 169, 170, 171, + 172, 173, 174, 175, 176, 177, 178, 179, 163, 164, + 165, 0, 166, 167, 168, 169, 170, 171, 172, 173, + 174, 175, 176, 177, 178, 179, 168, 169, 170, 171, + 172, 173, 174, 175, 176, 177, 178, 179 }; static const short yycheck[] = { 40, - 41, 2, 3, 9, 10, 11, 20, 53, 2, 3, - 2, 3, 51, 121, 22, 2, 3, 113, 74, 75, - 212, 120, 102, 231, 80, 154, 116, 28, 59, 237, - 86, 45, 22, 20, 28, 22, 28, 233, 219, 53, - 96, 28, 21, 22, 194, 332, 184, 414, 117, 65, - 190, 41, 286, 65, 107, 551, 62, 1, 45, 1, - 9, 1, 3, 362, 51, 0, 53, 3, 10, 3, - 76, 112, 59, 65, 631, 65, 38, 25, 38, 3, - 4, 0, 492, 83, 38, 38, 3, 4, 59, 30, - 104, 470, 28, 83, 108, 126, 30, 103, 377, 189, - 48, 380, 210, 117, 661, 3, 4, 603, 56, 50, - 489, 77, 102, 59, 76, 81, 50, 104, 59, 59, - 107, 108, 76, 76, 220, 59, 60, 76, 144, 625, - 117, 137, 144, 543, 630, 231, 632, 59, 82, 126, - 82, 237, 292, 283, 185, 641, 5, 243, 7, 245, - 191, 438, 144, 143, 144, 454, 225, 295, 82, 159, - 229, 161, 141, 194, 143, 82, 30, 577, 76, 159, - 580, 161, 120, 81, 408, 228, 182, 183, 674, 3, - 4, 27, 77, 131, 82, 145, 81, 147, 77, 77, - 3, 4, 81, 234, 7, 59, 60, 484, 608, 255, - 567, 3, 4, 3, 4, 7, 30, 388, 59, 60, - 50, 225, 30, 59, 60, 229, 30, 30, 3, 59, - 60, 262, 7, 59, 38, 76, 50, 214, 30, 76, - 640, 3, 4, 239, 81, 59, 60, 50, 225, 3, - 369, 228, 229, 7, 82, 30, 59, 60, 50, 290, - 50, 82, 433, 27, 82, 436, 30, 59, 396, 455, - 400, 292, 36, 3, 4, 50, 30, 1, 418, 78, - 4, 30, 6, 7, 59, 60, 224, 78, 12, 13, - 14, 76, 362, 363, 76, 572, 50, 383, 294, 81, - 30, 81, 388, 301, 28, 59, 9, 31, 38, 286, - 59, 60, 401, 77, 3, 4, 314, 81, 7, 399, - 50, 301, 59, 453, 301, 405, 7, 467, 76, 59, - 460, 300, 301, 1, 314, 76, 4, 5, 6, 7, - 81, 30, 10, 77, 12, 13, 14, 81, 434, 138, - 436, 59, 60, 77, 78, 384, 76, 146, 362, 363, - 28, 50, 77, 36, 59, 60, 81, 486, 76, 50, - 59, 1, 77, 78, 4, 5, 6, 7, 59, 60, - 416, 76, 12, 13, 14, 362, 363, 81, 76, 366, - 509, 387, 77, 81, 374, 77, 400, 418, 28, 81, - 76, 5, 6, 7, 373, 374, 76, 384, 12, 13, - 14, 77, 416, 82, 82, 81, 76, 497, 4, 5, - 6, 7, 620, 400, 622, 456, 12, 13, 14, 54, - 55, 408, 57, 58, 59, 60, 77, 414, 77, 416, - 81, 77, 28, 232, 30, 81, 467, 443, 38, 453, - 454, 4, 82, 6, 7, 486, 460, 59, 60, 12, - 13, 14, 59, 401, 4, 5, 6, 7, 1, 83, - 3, 4, 12, 13, 14, 28, 453, 454, 509, 27, - 476, 59, 60, 460, 9, 604, 668, 78, 28, 520, - 486, 77, 538, 77, 676, 486, 78, 50, 77, 78, - 598, 36, 486, 78, 486, 78, 59, 60, 76, 486, - 59, 60, 76, 509, 50, 51, 52, 76, 549, 77, - 78, 552, 553, 90, 91, 521, 38, 59, 60, 560, - 528, 650, 651, 569, 620, 76, 622, 77, 567, 328, - 83, 545, 3, 4, 575, 334, 335, 538, 528, 83, - 76, 528, 76, 584, 538, 76, 538, 36, 527, 528, - 83, 538, 78, 81, 595, 569, 158, 32, 545, 30, - 38, 163, 164, 604, 83, 76, 168, 169, 170, 171, - 172, 173, 174, 175, 176, 177, 178, 179, 3, 50, - 567, 77, 569, 382, 78, 78, 38, 38, 59, 1, - 631, 78, 4, 5, 6, 7, 81, 78, 604, 36, - 12, 13, 14, 402, 403, 404, 83, 406, 407, 78, - 38, 3, 4, 59, 655, 27, 28, 59, 30, 59, - 661, 38, 77, 77, 36, 7, 16, 38, 1, 77, - 429, 4, 5, 6, 7, 36, 238, 10, 30, 12, - 13, 14, 4, 77, 6, 7, 78, 59, 60, 59, - 12, 13, 14, 6, 7, 28, 77, 30, 50, 12, - 13, 14, 264, 265, 77, 77, 28, 59, 59, 81, - 82, 76, 1, 472, 3, 4, 5, 6, 7, 8, - 9, 17, 11, 12, 13, 14, 15, 76, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 76, 33, 34, 77, 506, 77, 76, - 36, 40, 76, 9, 43, 77, 78, 77, 77, 48, - 49, 50, 77, 81, 59, 54, 55, 77, 76, 76, - 59, 77, 1, 77, 0, 4, 5, 6, 7, 0, - 295, 552, 344, 12, 13, 14, 220, 434, 77, 78, - 79, 80, 538, 82, 55, 417, 197, 294, 27, 28, - 424, 30, 1, 144, 3, 4, 245, 36, 241, 8, - 9, 137, 11, 383, 376, 239, 15, 434, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 391, - 29, 389, 31, 436, 33, 34, 604, 4, 5, 6, - 7, 40, 656, 658, 43, 12, 13, 14, 77, 48, - 49, 50, 81, 82, 366, 54, 55, 604, -1, 289, - 59, 28, 424, 30, 1, -1, 428, 4, -1, 6, - 7, -1, -1, -1, -1, 12, 13, 14, 77, 78, - 79, 80, 444, 82, 3, 4, 5, 6, 7, 451, - 1, 28, 3, 4, 31, 6, 7, 8, 9, -1, - 11, 12, 13, 14, 4, 5, 6, 7, 470, -1, - 77, 473, 12, 13, 14, -1, -1, 28, 29, -1, - 31, -1, 33, 34, -1, -1, -1, 489, 28, 40, - 492, -1, 43, -1, -1, -1, -1, 48, 49, 50, - -1, -1, -1, 54, 55, -1, -1, 1, 59, 3, - 4, 5, 6, 7, 516, -1, 10, -1, 12, 13, - 14, 54, 55, -1, 57, 58, 59, 60, 79, 80, - -1, 82, -1, -1, 28, -1, 30, -1, 540, -1, - -1, 543, -1, 76, 1, -1, 3, 4, 5, 6, - 7, 8, 9, -1, 11, 12, 13, 14, 15, -1, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 577, 33, 34, 580, -1, - -1, 27, 76, 40, 30, -1, 43, -1, 590, -1, - 36, 48, 49, 50, -1, -1, -1, 54, 55, -1, - -1, -1, 59, -1, -1, -1, 608, 48, 49, 50, - 51, 52, -1, 59, 60, -1, -1, -1, -1, -1, - 77, -1, 79, 80, -1, 82, 1, -1, 3, 4, - -1, 77, -1, 8, 9, 81, 11, -1, 640, -1, - 15, -1, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, -1, 29, -1, 31, -1, 33, 34, - -1, 4, 5, 6, 7, 40, -1, 10, 43, 12, - 13, 14, -1, 48, 49, 50, -1, -1, -1, 54, - 55, -1, -1, -1, 59, 28, -1, 30, -1, -1, - -1, 4, 5, 6, 7, -1, -1, -1, -1, 12, - 13, 14, 77, -1, 79, 80, 1, 82, 3, 4, - -1, -1, -1, 8, 9, 28, 11, 30, -1, -1, - 15, -1, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, -1, 29, -1, 31, -1, 33, 34, - -1, -1, 5, 6, 7, 40, -1, -1, 43, 12, - 13, 14, -1, 48, 49, 50, -1, -1, -1, 54, - 55, -1, -1, 1, 59, 3, 4, 30, -1, -1, - 8, 9, -1, 11, 45, 46, 47, 48, 49, 50, - 51, 52, 77, -1, 79, 80, -1, 82, -1, -1, - -1, 29, -1, 31, -1, 33, 34, -1, -1, -1, - -1, -1, 40, -1, -1, 43, -1, -1, -1, -1, - 48, 49, 50, -1, -1, -1, 54, 55, -1, -1, - 58, 59, 60, 1, -1, 3, 4, -1, -1, -1, - 8, 9, -1, 11, -1, -1, -1, -1, -1, -1, - 78, 79, 80, -1, 82, -1, -1, -1, -1, -1, - -1, 29, -1, 31, -1, 33, 34, -1, -1, -1, - -1, -1, 40, -1, -1, 43, -1, -1, -1, -1, - 48, 49, 50, -1, -1, -1, 54, 55, -1, -1, - 58, 59, 60, 1, -1, 3, 4, -1, -1, -1, - 8, 9, -1, 11, -1, -1, -1, -1, -1, -1, - 78, 79, 80, -1, 82, -1, -1, -1, -1, -1, - -1, 29, -1, 31, -1, 33, 34, -1, -1, -1, - -1, -1, 40, -1, -1, 43, -1, -1, -1, -1, - 48, 49, 50, -1, -1, -1, 54, 55, -1, -1, - 58, 59, 60, 1, -1, 3, -1, -1, -1, -1, - 8, 9, -1, 11, 1, -1, -1, 4, 5, 6, - 7, 79, 80, -1, 82, 12, 13, 14, -1, -1, - -1, 29, -1, 31, -1, 33, 34, -1, -1, -1, - 27, 28, 40, 30, -1, 43, -1, -1, -1, 36, - 48, 49, 50, -1, -1, -1, 54, 55, -1, -1, - -1, 59, 46, 47, 48, 49, 50, 51, 52, -1, - 3, -1, 59, 60, -1, 8, 9, -1, 11, -1, - -1, 79, 80, 3, 82, -1, -1, -1, 8, 9, - 77, 11, -1, -1, 81, 82, 29, -1, 31, -1, - 33, 34, -1, -1, -1, -1, -1, 40, -1, 29, - 43, 31, -1, 33, 34, 48, 49, 50, -1, -1, - 40, 54, 55, 43, -1, -1, 59, -1, 48, 49, - 50, -1, -1, -1, 54, 55, 3, -1, -1, 59, - -1, 8, 9, -1, 11, -1, 79, 80, -1, 3, - 83, -1, -1, -1, 8, 9, -1, 11, -1, 79, - 80, -1, 29, 83, 31, -1, 33, 34, -1, -1, - -1, -1, -1, 40, -1, 29, 43, 31, -1, 33, - 34, 48, 49, 50, -1, -1, 40, 54, 55, 43, - -1, -1, 59, -1, 48, 49, 50, -1, -1, -1, - 54, 55, 3, -1, -1, 59, -1, 8, 9, -1, - 11, -1, 79, 80, -1, -1, 83, -1, -1, -1, - -1, -1, -1, -1, -1, 79, 80, -1, 29, 83, - 31, -1, 33, 34, 10, -1, -1, -1, -1, 40, - -1, -1, 43, -1, -1, -1, -1, 48, 49, 50, - -1, -1, -1, 54, 55, -1, -1, -1, 59, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, -1, 79, 80, + 41, 2, 3, 9, 10, 11, 20, 51, 2, 3, + 2, 3, 22, 53, 59, 2, 3, 231, 21, 22, + 121, 102, 212, 237, 154, 120, 116, 28, 194, 113, + 184, 45, 233, 20, 28, 22, 28, 416, 286, 53, + 190, 28, 219, 22, 363, 74, 75, 494, 332, 107, + 334, 80, 9, 1, 1, 633, 62, 86, 45, 0, + 25, 117, 41, 65, 51, 1, 53, 96, 472, 65, + 76, 112, 59, 65, 10, 3, 4, 38, 3, 4, + 38, 126, 0, 48, 38, 663, 65, 491, 30, 38, + 104, 56, 378, 553, 108, 381, 38, 103, 545, 189, + 3, 4, 77, 117, 83, 4, 5, 6, 7, 210, + 30, 83, 59, 12, 13, 14, 59, 104, 76, 76, + 107, 108, 76, 102, 3, 4, 292, 76, 59, 28, + 117, 137, 579, 283, 82, 582, 220, 456, 141, 126, + 143, 295, 144, 3, 185, 605, 82, 231, 144, 194, + 191, 59, 144, 237, 82, 120, 440, 82, 82, 243, + 82, 245, 410, 610, 143, 144, 131, 627, 28, 225, + 228, 50, 632, 229, 634, 82, 182, 183, 77, 82, + 159, 59, 161, 643, 145, 27, 147, 159, 78, 161, + 569, 78, 138, 234, 76, 642, 4, 5, 6, 7, + 146, 3, 486, 9, 12, 13, 14, 30, 3, 4, + 77, 225, 7, 390, 81, 229, 676, 59, 60, 3, + 28, 262, 30, 7, 6, 7, 255, 214, 30, 76, + 12, 13, 14, 239, 81, 30, 59, 60, 225, 77, + 370, 228, 229, 81, 398, 76, 30, 292, 50, 290, + 81, 5, 402, 7, 420, 50, 457, 59, 435, 224, + 81, 438, 3, 4, 59, 60, 50, 1, 59, 77, + 4, 5, 6, 7, 3, 59, 60, 77, 12, 13, + 14, 81, 363, 364, 77, 78, 232, 76, 294, 30, + 574, 301, 81, 27, 28, 76, 30, 300, 301, 286, + 384, 30, 36, 469, 314, 455, 390, 27, 403, 50, + 30, 401, 462, 76, 301, 76, 36, 407, 59, 60, + 81, 50, 301, 59, 60, 59, 60, 76, 3, 4, + 59, 60, 81, 1, 36, 314, 4, 5, 6, 7, + 76, 385, 386, 77, 12, 13, 14, 81, 82, 363, + 364, 77, 436, 27, 438, 81, 30, 77, 488, 77, + 28, 81, 36, 81, 3, 4, 3, 4, 7, 77, + 7, 374, 375, 81, 81, 420, 363, 364, 418, 77, + 367, 511, 328, 389, 76, 59, 60, 76, 402, 335, + 336, 30, 4, 30, 6, 7, 375, 82, 385, 386, + 12, 13, 14, 77, 418, 3, 4, 81, 622, 499, + 624, 50, 76, 50, 82, 402, 28, 458, 59, 60, + 59, 77, 59, 410, 469, 4, 5, 6, 7, 416, + 38, 418, 30, 12, 13, 14, 59, 383, 403, 445, + 38, 455, 456, 27, 3, 4, 3, 488, 462, 28, + 7, 30, 50, 9, 7, 83, 3, 4, 404, 405, + 406, 59, 408, 409, 77, 77, 78, 36, 455, 456, + 511, 30, 478, 30, 77, 462, 606, 78, 81, 30, + 670, 522, 488, 30, 78, 431, 77, 488, 678, 78, + 81, 50, 78, 50, 488, 76, 488, 50, 77, 600, + 59, 488, 59, 50, 76, 511, 59, 60, 59, 60, + 551, 540, 59, 554, 555, 59, 60, 523, 59, 60, + 530, 562, 652, 653, 76, 569, 529, 530, 474, 59, + 60, 571, 76, 547, 76, 76, 577, 77, 622, 540, + 624, 81, 38, 530, 83, 586, 540, 1, 540, 3, + 4, 530, 83, 540, 59, 60, 597, 571, 158, 76, + 547, 76, 508, 163, 164, 606, 77, 78, 168, 169, + 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, + 59, 60, 569, 76, 571, 1, 90, 91, 4, 5, + 6, 7, 633, 36, 10, 83, 12, 13, 14, 81, + 606, 4, 5, 6, 7, 50, 78, 10, 32, 12, + 13, 14, 28, 38, 59, 60, 657, 3, 4, 5, + 6, 7, 663, 83, 76, 28, 3, 30, 77, 1, + 78, 3, 4, 5, 6, 7, 8, 9, 238, 11, + 12, 13, 14, 15, 78, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 38, 33, 34, 38, 264, 265, 82, 78, 40, 54, + 55, 43, 57, 58, 59, 60, 48, 49, 50, 50, + 51, 52, 54, 55, 81, 78, 36, 59, 83, 78, + 38, 76, 59, 59, 4, 59, 6, 7, 38, 7, + 38, 77, 12, 13, 14, 77, 78, 79, 80, 1, + 82, 3, 4, 5, 6, 7, 8, 9, 28, 11, + 12, 13, 14, 15, 77, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 50, 33, 34, 77, 77, 345, 16, 36, 40, 59, + 60, 43, 5, 6, 7, 78, 48, 49, 50, 12, + 13, 14, 54, 55, 59, 77, 77, 59, 1, 59, + 76, 4, 17, 6, 7, 77, 76, 377, 77, 12, + 13, 14, 76, 76, 36, 77, 77, 79, 80, 1, + 82, 3, 4, 393, 9, 28, 8, 9, 31, 11, + 77, 77, 59, 15, 77, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 81, 29, 76, 31, + 76, 33, 34, 77, 0, 0, 426, 77, 40, 295, + 430, 43, 554, 220, 436, 540, 48, 49, 50, 55, + 197, 419, 54, 55, 77, 78, 446, 59, 294, 426, + 241, 1, 384, 453, 4, 5, 6, 7, 144, 137, + 10, 245, 12, 13, 14, 77, 78, 79, 80, 239, + 82, 436, 472, 391, 438, 475, 606, 660, 28, 606, + 30, 658, 1, 289, 3, 4, 367, -1, -1, 8, + 9, 491, 11, -1, 494, -1, 15, -1, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, -1, + 29, -1, 31, -1, 33, 34, -1, -1, 518, -1, + -1, 40, -1, -1, 43, -1, 76, -1, -1, 48, + 49, 50, -1, -1, -1, 54, 55, -1, -1, -1, + 59, -1, 542, -1, 1, 545, 3, 4, 5, 6, + 7, -1, -1, 10, -1, 12, 13, 14, 77, -1, + 79, 80, -1, 82, -1, -1, -1, -1, 5, 6, + 7, 28, -1, 30, -1, 12, 13, 14, -1, 579, + -1, 1, 582, 3, 4, -1, -1, -1, 8, 9, + -1, 11, 592, 30, -1, 15, -1, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, -1, 29, + 610, 31, -1, 33, 34, -1, -1, -1, -1, 76, + 40, 54, 55, 43, 57, 58, 59, 60, 48, 49, + 50, -1, -1, -1, 54, 55, -1, -1, 1, 59, + 3, 4, 642, 6, 7, 8, 9, -1, 11, 12, + 13, 14, 48, 49, 50, 51, 52, 77, -1, 79, + 80, -1, 82, -1, -1, 28, 29, -1, 31, -1, + 33, 34, -1, -1, -1, -1, -1, 40, -1, -1, + 43, -1, -1, -1, -1, 48, 49, 50, -1, -1, + -1, 54, 55, -1, -1, 1, 59, 3, 4, -1, + -1, -1, 8, 9, -1, 11, -1, -1, -1, 1, + -1, -1, 4, -1, 6, 7, 79, 80, -1, 82, + 12, 13, 14, 29, -1, 31, -1, 33, 34, -1, + -1, -1, -1, -1, 40, -1, 28, 43, -1, 31, + -1, -1, 48, 49, 50, -1, -1, -1, 54, 55, + -1, -1, 58, 59, 60, 1, -1, 3, 4, -1, + -1, -1, 8, 9, -1, 11, -1, -1, -1, -1, + -1, -1, 78, 79, 80, -1, 82, -1, -1, -1, + -1, -1, -1, 29, -1, 31, -1, 33, 34, -1, + -1, -1, -1, -1, 40, -1, -1, 43, -1, -1, + -1, -1, 48, 49, 50, -1, -1, -1, 54, 55, + -1, -1, 58, 59, 60, 1, -1, 3, 4, -1, + -1, -1, 8, 9, -1, 11, -1, -1, -1, -1, + -1, -1, 78, 79, 80, -1, 82, -1, -1, -1, + -1, -1, -1, 29, -1, 31, -1, 33, 34, -1, + -1, -1, -1, -1, 40, -1, -1, 43, -1, -1, + -1, -1, 48, 49, 50, -1, -1, -1, 54, 55, + -1, -1, 58, 59, 60, 1, -1, 3, -1, -1, + -1, -1, 8, 9, -1, 11, 1, -1, -1, 4, + 5, 6, 7, 79, 80, -1, 82, 12, 13, 14, + -1, -1, -1, 29, -1, 31, -1, 33, 34, -1, + -1, -1, 27, 28, 40, 30, -1, 43, -1, -1, + -1, 36, 48, 49, 50, -1, -1, -1, 54, 55, + -1, -1, -1, 59, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, 59, 60, 1, -1, -1, 4, + 5, 6, 7, 79, 80, -1, 82, 12, 13, 14, + -1, -1, 77, 3, -1, -1, 81, 82, 8, 9, + -1, 11, 27, 28, -1, 30, -1, 4, 5, 6, + 7, 36, -1, -1, -1, 12, 13, 14, -1, 29, + -1, 31, -1, 33, 34, -1, -1, -1, -1, -1, + 40, 28, -1, 43, -1, -1, -1, -1, 48, 49, + 50, -1, -1, -1, 54, 55, -1, -1, -1, 59, + -1, -1, 77, 3, -1, -1, 81, 82, 8, 9, + -1, 11, -1, -1, -1, -1, 3, -1, -1, 79, + 80, 8, 9, 83, 11, -1, -1, -1, -1, 29, + -1, 31, -1, 33, 34, -1, -1, -1, -1, -1, + 40, -1, 29, 43, 31, -1, 33, 34, 48, 49, + 50, -1, -1, 40, 54, 55, 43, -1, -1, 59, + -1, 48, 49, 50, -1, -1, -1, 54, 55, 3, + -1, -1, 59, -1, 8, 9, -1, 11, -1, 79, + 80, -1, 3, 83, -1, -1, -1, 8, 9, -1, + 11, -1, 79, 80, -1, 29, 83, 31, -1, 33, + 34, -1, -1, -1, -1, -1, 40, -1, 29, 43, + 31, -1, 33, 34, 48, 49, 50, -1, -1, 40, + 54, 55, 43, -1, -1, 59, -1, 48, 49, 50, + -1, -1, -1, 54, 55, -1, -1, -1, 59, -1, + -1, -1, -1, -1, -1, 79, 80, -1, -1, 83, + 45, 46, 47, 48, 49, 50, 51, 52, 79, 80, -1, -1, 83, 3, 4, 5, 6, 7, 8, 9, -1, 11, 12, 13, 14, 15, -1, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, -1, 33, 34, -1, -1, -1, -1, -1, - 40, -1, -1, 43, -1, -1, -1, -1, 48, 49, - 50, 30, -1, -1, 54, 55, 35, 36, 37, 59, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, -1, -1, -1, 77, -1, 79, + 30, 31, -1, 33, 34, -1, 4, 5, 6, 7, + 40, -1, -1, 43, 12, 13, 14, -1, 48, 49, + 50, -1, -1, -1, 54, 55, -1, -1, -1, 59, + 28, 37, 30, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 77, -1, 79, 80, -1, 82, 3, 4, -1, -1, -1, 8, 9, -1, 11, -1, -1, -1, 15, -1, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, -1, 29, @@ -1125,8 +1119,8 @@ static const short yycheck[] = { 40, -1, -1, -1, -1, 40, -1, -1, 43, -1, -1, -1, -1, 48, 49, 50, -1, -1, -1, 54, 55, -1, -1, -1, 59, 3, 4, 5, 6, 7, 8, - 9, -1, 11, 12, 13, 14, -1, -1, -1, -1, - -1, -1, -1, 79, 80, -1, 82, -1, -1, 28, + 9, -1, 11, 12, 13, 14, 46, 47, 48, 49, + 50, 51, 52, 79, 80, -1, 82, -1, -1, 28, 29, 30, 31, -1, 33, 34, -1, -1, -1, -1, -1, 40, -1, -1, 43, -1, -1, -1, -1, 48, 49, 50, -1, -1, -1, 54, 55, -1, 3, 4, @@ -1153,21 +1147,22 @@ static const short yycheck[] = { 40, 1, 59, 3, 4, 5, 6, 7, -1, -1, -1, -1, 12, 13, 14, -1, -1, -1, -1, -1, -1, -1, 79, 80, -1, -1, -1, 27, 28, -1, 30, - 31, 37, -1, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, -1, 10, 50, + 31, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, -1, -1, -1, -1, 10, 50, -1, -1, -1, -1, -1, 35, 36, 37, 59, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 35, 36, 37, 77, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 52, -1, -1, -1, -1, 30, -1, 10, -1, -1, 35, 36, 37, 83, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, -1, -1, -1, 83, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52 + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 35, 36, + 37, -1, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52 }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ #line 3 "/usr/share/bison.simple" @@ -2834,11 +2829,10 @@ case 259: #line 1363 "c-parse.y" { if (pedantic) pedwarn ("ANSI C forbids member declarations with no members"); - shadow_tag(yyvsp[0].ttype); - yyval.ttype = NULL_TREE; ; + yyval.ttype = grokfield(yyvsp[-1].filename, yyvsp[0].lineno, NULL, current_declspecs, NULL_TREE); ; break;} case 260: -#line 1368 "c-parse.y" +#line 1367 "c-parse.y" { yyval.ttype = yyvsp[0].ttype; current_declspecs = TREE_VALUE (declspec_stack); prefix_attributes = TREE_PURPOSE (declspec_stack); @@ -2846,140 +2840,140 @@ case 260: resume_momentary (yyvsp[-1].itype); ; break;} case 261: -#line 1374 "c-parse.y" +#line 1373 "c-parse.y" { if (pedantic) pedwarn ("ANSI C forbids member declarations with no members"); shadow_tag(yyvsp[0].ttype); yyval.ttype = NULL_TREE; ; break;} case 262: -#line 1379 "c-parse.y" +#line 1378 "c-parse.y" { yyval.ttype = NULL_TREE; ; break;} case 263: -#line 1381 "c-parse.y" +#line 1380 "c-parse.y" { yyval.ttype = yyvsp[0].ttype; pedantic = yyvsp[-1].itype; ; break;} case 265: -#line 1388 "c-parse.y" +#line 1387 "c-parse.y" { yyval.ttype = chainon (yyvsp[-2].ttype, yyvsp[0].ttype); ; break;} case 266: -#line 1393 "c-parse.y" +#line 1392 "c-parse.y" { yyval.ttype = grokfield (yyvsp[-3].filename, yyvsp[-2].lineno, yyvsp[-1].ttype, current_declspecs, NULL_TREE); decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes); ; break;} case 267: -#line 1397 "c-parse.y" +#line 1396 "c-parse.y" { yyval.ttype = grokfield (yyvsp[-5].filename, yyvsp[-4].lineno, yyvsp[-3].ttype, current_declspecs, yyvsp[-1].ttype); decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes); ; break;} case 268: -#line 1400 "c-parse.y" +#line 1399 "c-parse.y" { yyval.ttype = grokfield (yyvsp[-4].filename, yyvsp[-3].lineno, NULL_TREE, current_declspecs, yyvsp[-1].ttype); decl_attributes (yyval.ttype, yyvsp[0].ttype, prefix_attributes); ; break;} case 270: -#line 1412 "c-parse.y" +#line 1411 "c-parse.y" { if (yyvsp[-2].ttype == error_mark_node) yyval.ttype = yyvsp[-2].ttype; else yyval.ttype = chainon (yyvsp[0].ttype, yyvsp[-2].ttype); ; break;} case 271: -#line 1417 "c-parse.y" +#line 1416 "c-parse.y" { yyval.ttype = error_mark_node; ; break;} case 272: -#line 1423 "c-parse.y" +#line 1422 "c-parse.y" { yyval.ttype = build_enumerator (yyvsp[0].ttype, NULL_TREE); ; break;} case 273: -#line 1425 "c-parse.y" +#line 1424 "c-parse.y" { yyval.ttype = build_enumerator (yyvsp[-2].ttype, yyvsp[0].ttype); ; break;} case 274: -#line 1430 "c-parse.y" +#line 1429 "c-parse.y" { yyval.ttype = build_tree_list (yyvsp[-1].ttype, yyvsp[0].ttype); ; break;} case 275: -#line 1432 "c-parse.y" +#line 1431 "c-parse.y" { yyval.ttype = build_tree_list (yyvsp[-1].ttype, yyvsp[0].ttype); ; break;} case 276: -#line 1437 "c-parse.y" +#line 1436 "c-parse.y" { yyval.ttype = NULL_TREE; ; break;} case 278: -#line 1443 "c-parse.y" +#line 1442 "c-parse.y" { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, NULL_TREE); ; break;} case 279: -#line 1445 "c-parse.y" +#line 1444 "c-parse.y" { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ; break;} case 280: -#line 1450 "c-parse.y" +#line 1449 "c-parse.y" { yyval.ttype = NULL_TREE; ; break;} case 281: -#line 1452 "c-parse.y" +#line 1451 "c-parse.y" { yyval.ttype = tree_cons (NULL_TREE, yyvsp[0].ttype, yyvsp[-1].ttype); ; break;} case 282: -#line 1457 "c-parse.y" +#line 1456 "c-parse.y" { yyval.ttype = yyvsp[-1].ttype; ; break;} case 283: -#line 1460 "c-parse.y" +#line 1459 "c-parse.y" { yyval.ttype = make_pointer_declarator (yyvsp[-1].ttype, yyvsp[0].ttype); ; break;} case 284: -#line 1462 "c-parse.y" +#line 1461 "c-parse.y" { yyval.ttype = make_pointer_declarator (yyvsp[0].ttype, NULL_TREE); ; break;} case 285: -#line 1464 "c-parse.y" +#line 1463 "c-parse.y" { yyval.ttype = build_nt (CALL_EXPR, yyvsp[-2].ttype, yyvsp[0].ttype, NULL_TREE); ; break;} case 286: -#line 1466 "c-parse.y" +#line 1465 "c-parse.y" { yyval.ttype = build_nt (ARRAY_REF, yyvsp[-3].ttype, yyvsp[-1].ttype); ; break;} case 287: -#line 1468 "c-parse.y" +#line 1467 "c-parse.y" { yyval.ttype = build_nt (ARRAY_REF, yyvsp[-2].ttype, NULL_TREE); ; break;} case 288: -#line 1470 "c-parse.y" +#line 1469 "c-parse.y" { yyval.ttype = build_nt (CALL_EXPR, NULL_TREE, yyvsp[0].ttype, NULL_TREE); ; break;} case 289: -#line 1472 "c-parse.y" +#line 1471 "c-parse.y" { yyval.ttype = build_nt (ARRAY_REF, NULL_TREE, yyvsp[-1].ttype); ; break;} case 290: -#line 1474 "c-parse.y" +#line 1473 "c-parse.y" { yyval.ttype = build_nt (ARRAY_REF, NULL_TREE, NULL_TREE); ; break;} case 291: -#line 1485 "c-parse.y" +#line 1484 "c-parse.y" { if (pedantic && yyvsp[0].ends_in_label) pedwarn ("ANSI C forbids label at end of compound statement"); ; break;} case 293: -#line 1494 "c-parse.y" +#line 1493 "c-parse.y" { yyval.ends_in_label = yyvsp[0].ends_in_label; ; break;} case 294: -#line 1496 "c-parse.y" +#line 1495 "c-parse.y" { yyval.ends_in_label = 0; ; break;} case 298: -#line 1508 "c-parse.y" +#line 1507 "c-parse.y" { emit_line_note (input_filename, lineno); pushlevel (0); clear_last_expr (); @@ -2988,12 +2982,12 @@ case 298: ; break;} case 300: -#line 1521 "c-parse.y" +#line 1520 "c-parse.y" { if (pedantic) pedwarn ("ANSI C forbids label declarations"); ; break;} case 303: -#line 1532 "c-parse.y" +#line 1531 "c-parse.y" { tree link; for (link = yyvsp[-1].ttype; link; link = TREE_CHAIN (link)) { @@ -3004,19 +2998,19 @@ case 303: ; break;} case 304: -#line 1546 "c-parse.y" +#line 1545 "c-parse.y" {; break;} case 306: -#line 1550 "c-parse.y" +#line 1549 "c-parse.y" { compstmt_count++; ; break;} case 307: -#line 1553 "c-parse.y" +#line 1552 "c-parse.y" { yyval.ttype = convert (void_type_node, integer_zero_node); ; break;} case 308: -#line 1555 "c-parse.y" +#line 1554 "c-parse.y" { emit_line_note (input_filename, lineno); expand_end_bindings (getdecls (), 1, 0); yyval.ttype = poplevel (1, 1, 0); @@ -3026,7 +3020,7 @@ case 308: pop_momentary (); ; break;} case 309: -#line 1563 "c-parse.y" +#line 1562 "c-parse.y" { emit_line_note (input_filename, lineno); expand_end_bindings (getdecls (), kept_level_p (), 0); yyval.ttype = poplevel (kept_level_p (), 0, 0); @@ -3036,7 +3030,7 @@ case 309: pop_momentary (); ; break;} case 310: -#line 1571 "c-parse.y" +#line 1570 "c-parse.y" { emit_line_note (input_filename, lineno); expand_end_bindings (getdecls (), kept_level_p (), 0); yyval.ttype = poplevel (kept_level_p (), 0, 0); @@ -3046,7 +3040,7 @@ case 310: pop_momentary (); ; break;} case 313: -#line 1591 "c-parse.y" +#line 1590 "c-parse.y" { emit_line_note (yyvsp[-5].filename, yyvsp[-4].lineno); c_expand_start_cond (truthvalue_conversion (yyvsp[-1].ttype), 0, compstmt_count); @@ -3056,7 +3050,7 @@ case 313: position_after_white_space (); ; break;} case 314: -#line 1605 "c-parse.y" +#line 1604 "c-parse.y" { stmt_count++; compstmt_count++; emit_line_note (yyvsp[-2].filename, yyvsp[-1].lineno); @@ -3066,43 +3060,43 @@ case 314: position_after_white_space (); ; break;} case 315: -#line 1613 "c-parse.y" +#line 1612 "c-parse.y" { expand_loop_continue_here (); ; break;} case 316: -#line 1617 "c-parse.y" +#line 1616 "c-parse.y" { yyval.filename = input_filename; ; break;} case 317: -#line 1621 "c-parse.y" +#line 1620 "c-parse.y" { yyval.lineno = lineno; ; break;} case 318: -#line 1626 "c-parse.y" +#line 1625 "c-parse.y" { ; break;} case 319: -#line 1631 "c-parse.y" +#line 1630 "c-parse.y" { ; break;} case 320: -#line 1636 "c-parse.y" +#line 1635 "c-parse.y" { yyval.ends_in_label = yyvsp[0].ends_in_label; ; break;} case 321: -#line 1641 "c-parse.y" +#line 1640 "c-parse.y" { yyval.ends_in_label = 0; ; break;} case 322: -#line 1643 "c-parse.y" +#line 1642 "c-parse.y" { yyval.ends_in_label = 1; ; break;} case 323: -#line 1649 "c-parse.y" +#line 1648 "c-parse.y" { stmt_count++; ; break;} case 325: -#line 1652 "c-parse.y" +#line 1651 "c-parse.y" { stmt_count++; emit_line_note (yyvsp[-3].filename, yyvsp[-2].lineno); /* It appears that this should not be done--that a non-lvalue array @@ -3121,19 +3115,19 @@ case 325: clear_momentary (); ; break;} case 326: -#line 1669 "c-parse.y" +#line 1668 "c-parse.y" { c_expand_start_else (); yyvsp[-1].itype = stmt_count; position_after_white_space (); ; break;} case 327: -#line 1673 "c-parse.y" +#line 1672 "c-parse.y" { c_expand_end_cond (); if (extra_warnings && stmt_count == yyvsp[-3].itype) warning ("empty body in an else-statement"); ; break;} case 328: -#line 1677 "c-parse.y" +#line 1676 "c-parse.y" { c_expand_end_cond (); /* This warning is here instead of in simple_if, because we do not want a warning if an empty if is followed by an @@ -3144,11 +3138,11 @@ case 328: "empty body in an if-statement"); ; break;} case 329: -#line 1689 "c-parse.y" +#line 1688 "c-parse.y" { c_expand_end_cond (); ; break;} case 330: -#line 1691 "c-parse.y" +#line 1690 "c-parse.y" { stmt_count++; emit_line_note (yyvsp[-2].filename, yyvsp[-1].lineno); /* The emit_nop used to come before emit_line_note, @@ -3160,7 +3154,7 @@ case 330: emit_nop (); ; break;} case 331: -#line 1701 "c-parse.y" +#line 1700 "c-parse.y" { /* Don't start the loop till we have succeeded in parsing the end test. This is to make sure that we end every loop we start. */ @@ -3171,11 +3165,11 @@ case 331: position_after_white_space (); ; break;} case 332: -#line 1710 "c-parse.y" +#line 1709 "c-parse.y" { expand_end_loop (); ; break;} case 333: -#line 1713 "c-parse.y" +#line 1712 "c-parse.y" { emit_line_note (input_filename, lineno); expand_exit_loop_if_false (NULL_PTR, truthvalue_conversion (yyvsp[-2].ttype)); @@ -3183,12 +3177,12 @@ case 333: clear_momentary (); ; break;} case 334: -#line 1720 "c-parse.y" +#line 1719 "c-parse.y" { expand_end_loop (); clear_momentary (); ; break;} case 335: -#line 1724 "c-parse.y" +#line 1723 "c-parse.y" { stmt_count++; emit_line_note (yyvsp[-5].filename, yyvsp[-4].lineno); /* See comment in `while' alternative, above. */ @@ -3201,12 +3195,12 @@ case 335: ; break;} case 336: -#line 1736 "c-parse.y" +#line 1735 "c-parse.y" { yyvsp[0].lineno = lineno; yyval.filename = input_filename; ; break;} case 337: -#line 1739 "c-parse.y" +#line 1738 "c-parse.y" { /* Start the loop. Doing this after parsing all the expressions ensures we will end the loop. */ @@ -3224,7 +3218,7 @@ case 337: position_after_white_space (); ; break;} case 338: -#line 1755 "c-parse.y" +#line 1754 "c-parse.y" { /* Emit the increment expression, with a line number. */ emit_line_note (yyvsp[-4].filename, yyvsp[-5].lineno); expand_loop_continue_here (); @@ -3237,7 +3231,7 @@ case 338: expand_end_loop (); ; break;} case 339: -#line 1766 "c-parse.y" +#line 1765 "c-parse.y" { stmt_count++; emit_line_note (yyvsp[-5].filename, yyvsp[-4].lineno); c_expand_start_case (yyvsp[-1].ttype); @@ -3247,7 +3241,7 @@ case 339: position_after_white_space (); ; break;} case 340: -#line 1774 "c-parse.y" +#line 1773 "c-parse.y" { expand_end_case (yyvsp[-3].ttype); if (yychar == CONSTANT || yychar == STRING) pop_momentary_nofree (); @@ -3255,33 +3249,33 @@ case 340: pop_momentary (); ; break;} case 341: -#line 1780 "c-parse.y" +#line 1779 "c-parse.y" { stmt_count++; emit_line_note (yyvsp[-3].filename, yyvsp[-2].lineno); if ( ! expand_exit_something ()) error ("break statement not within loop or switch"); ; break;} case 342: -#line 1785 "c-parse.y" +#line 1784 "c-parse.y" { stmt_count++; emit_line_note (yyvsp[-3].filename, yyvsp[-2].lineno); if (! expand_continue_loop (NULL_PTR)) error ("continue statement not within a loop"); ; break;} case 343: -#line 1790 "c-parse.y" +#line 1789 "c-parse.y" { stmt_count++; emit_line_note (yyvsp[-3].filename, yyvsp[-2].lineno); c_expand_return (NULL_TREE); ; break;} case 344: -#line 1794 "c-parse.y" +#line 1793 "c-parse.y" { stmt_count++; emit_line_note (yyvsp[-4].filename, yyvsp[-3].lineno); c_expand_return (yyvsp[-1].ttype); ; break;} case 345: -#line 1798 "c-parse.y" +#line 1797 "c-parse.y" { stmt_count++; emit_line_note (yyvsp[-7].filename, yyvsp[-6].lineno); STRIP_NOPS (yyvsp[-2].ttype); @@ -3293,7 +3287,7 @@ case 345: error ("argument of `asm' is not a constant string"); ; break;} case 346: -#line 1809 "c-parse.y" +#line 1808 "c-parse.y" { stmt_count++; emit_line_note (yyvsp[-9].filename, yyvsp[-8].lineno); c_expand_asm_operands (yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE, NULL_TREE, @@ -3301,7 +3295,7 @@ case 346: input_filename, lineno); ; break;} case 347: -#line 1816 "c-parse.y" +#line 1815 "c-parse.y" { stmt_count++; emit_line_note (yyvsp[-11].filename, yyvsp[-10].lineno); c_expand_asm_operands (yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, NULL_TREE, @@ -3309,7 +3303,7 @@ case 347: input_filename, lineno); ; break;} case 348: -#line 1824 "c-parse.y" +#line 1823 "c-parse.y" { stmt_count++; emit_line_note (yyvsp[-13].filename, yyvsp[-12].lineno); c_expand_asm_operands (yyvsp[-8].ttype, yyvsp[-6].ttype, yyvsp[-4].ttype, yyvsp[-2].ttype, @@ -3317,7 +3311,7 @@ case 348: input_filename, lineno); ; break;} case 349: -#line 1830 "c-parse.y" +#line 1829 "c-parse.y" { tree decl; stmt_count++; emit_line_note (yyvsp[-4].filename, yyvsp[-3].lineno); @@ -3330,7 +3324,7 @@ case 349: ; break;} case 350: -#line 1841 "c-parse.y" +#line 1840 "c-parse.y" { if (pedantic) pedwarn ("ANSI C forbids `goto *expr;'"); stmt_count++; @@ -3338,7 +3332,7 @@ case 350: expand_computed_goto (convert (ptr_type_node, yyvsp[-1].ttype)); ; break;} case 353: -#line 1856 "c-parse.y" +#line 1855 "c-parse.y" { /* The value returned by this action is */ /* 1 if everything is OK */ @@ -3361,14 +3355,14 @@ case 353: ; break;} case 354: -#line 1877 "c-parse.y" +#line 1876 "c-parse.y" { if (yyvsp[-1].itype) iterator_for_loop_end (yyvsp[-3].ttype); ; break;} case 355: -#line 1912 "c-parse.y" +#line 1911 "c-parse.y" { register tree value = check_case_value (yyvsp[-1].ttype); register tree label = build_decl (LABEL_DECL, NULL_TREE, NULL_TREE); @@ -3395,7 +3389,7 @@ case 355: position_after_white_space (); ; break;} case 356: -#line 1937 "c-parse.y" +#line 1936 "c-parse.y" { register tree value1 = check_case_value (yyvsp[-3].ttype); register tree value2 = check_case_value (yyvsp[-1].ttype); register tree label @@ -3428,7 +3422,7 @@ case 356: position_after_white_space (); ; break;} case 357: -#line 1968 "c-parse.y" +#line 1967 "c-parse.y" { tree duplicate; register tree label @@ -3445,7 +3439,7 @@ case 357: position_after_white_space (); ; break;} case 358: -#line 1983 "c-parse.y" +#line 1982 "c-parse.y" { tree label = define_label (input_filename, lineno, yyvsp[-1].ttype); stmt_count++; emit_nop (); @@ -3454,52 +3448,52 @@ case 358: position_after_white_space (); ; break;} case 359: -#line 1995 "c-parse.y" +#line 1994 "c-parse.y" { emit_line_note (input_filename, lineno); yyval.ttype = NULL_TREE; ; break;} case 360: -#line 1998 "c-parse.y" +#line 1997 "c-parse.y" { emit_line_note (input_filename, lineno); ; break;} case 361: -#line 2003 "c-parse.y" +#line 2002 "c-parse.y" { yyval.ttype = NULL_TREE; ; break;} case 363: -#line 2010 "c-parse.y" +#line 2009 "c-parse.y" { yyval.ttype = NULL_TREE; ; break;} case 366: -#line 2017 "c-parse.y" +#line 2016 "c-parse.y" { yyval.ttype = chainon (yyvsp[-2].ttype, yyvsp[0].ttype); ; break;} case 367: -#line 2022 "c-parse.y" +#line 2021 "c-parse.y" { yyval.ttype = build_tree_list (yyvsp[-3].ttype, yyvsp[-1].ttype); ; break;} case 368: -#line 2027 "c-parse.y" +#line 2026 "c-parse.y" { yyval.ttype = tree_cons (NULL_TREE, combine_strings (yyvsp[0].ttype), NULL_TREE); ; break;} case 369: -#line 2029 "c-parse.y" +#line 2028 "c-parse.y" { yyval.ttype = tree_cons (NULL_TREE, combine_strings (yyvsp[0].ttype), yyvsp[-2].ttype); ; break;} case 370: -#line 2035 "c-parse.y" +#line 2034 "c-parse.y" { pushlevel (0); clear_parm_order (); declare_parm_level (0); ; break;} case 371: -#line 2039 "c-parse.y" +#line 2038 "c-parse.y" { yyval.ttype = yyvsp[0].ttype; parmlist_tags_warning (); poplevel (0, 0, 0); ; break;} case 373: -#line 2047 "c-parse.y" +#line 2046 "c-parse.y" { tree parm; if (pedantic) pedwarn ("ANSI C forbids forward parameter declarations"); @@ -3509,19 +3503,19 @@ case 373: clear_parm_order (); ; break;} case 374: -#line 2055 "c-parse.y" +#line 2054 "c-parse.y" { yyval.ttype = yyvsp[0].ttype; ; break;} case 375: -#line 2057 "c-parse.y" +#line 2056 "c-parse.y" { yyval.ttype = tree_cons (NULL_TREE, NULL_TREE, NULL_TREE); ; break;} case 376: -#line 2063 "c-parse.y" +#line 2062 "c-parse.y" { yyval.ttype = get_parm_info (0); ; break;} case 377: -#line 2065 "c-parse.y" +#line 2064 "c-parse.y" { yyval.ttype = get_parm_info (0); /* Gcc used to allow this as an extension. However, it does not work for all targets, and thus has been disabled. @@ -3533,23 +3527,23 @@ case 377: ; break;} case 378: -#line 2075 "c-parse.y" +#line 2074 "c-parse.y" { yyval.ttype = get_parm_info (1); ; break;} case 379: -#line 2077 "c-parse.y" +#line 2076 "c-parse.y" { yyval.ttype = get_parm_info (0); ; break;} case 380: -#line 2082 "c-parse.y" +#line 2081 "c-parse.y" { push_parm_decl (yyvsp[0].ttype); ; break;} case 381: -#line 2084 "c-parse.y" +#line 2083 "c-parse.y" { push_parm_decl (yyvsp[0].ttype); ; break;} case 382: -#line 2091 "c-parse.y" +#line 2090 "c-parse.y" { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), build_tree_list (prefix_attributes, @@ -3560,7 +3554,7 @@ case 382: resume_momentary (yyvsp[-2].itype); ; break;} case 383: -#line 2100 "c-parse.y" +#line 2099 "c-parse.y" { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), build_tree_list (prefix_attributes, @@ -3571,7 +3565,7 @@ case 383: resume_momentary (yyvsp[-2].itype); ; break;} case 384: -#line 2109 "c-parse.y" +#line 2108 "c-parse.y" { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), build_tree_list (prefix_attributes, @@ -3582,7 +3576,7 @@ case 384: resume_momentary (yyvsp[-2].itype); ; break;} case 385: -#line 2118 "c-parse.y" +#line 2117 "c-parse.y" { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), build_tree_list (prefix_attributes, @@ -3593,7 +3587,7 @@ case 385: resume_momentary (yyvsp[-2].itype); ; break;} case 386: -#line 2128 "c-parse.y" +#line 2127 "c-parse.y" { yyval.ttype = build_tree_list (build_tree_list (current_declspecs, yyvsp[-1].ttype), build_tree_list (prefix_attributes, @@ -3604,19 +3598,19 @@ case 386: resume_momentary (yyvsp[-2].itype); ; break;} case 387: -#line 2142 "c-parse.y" +#line 2141 "c-parse.y" { pushlevel (0); clear_parm_order (); declare_parm_level (1); ; break;} case 388: -#line 2146 "c-parse.y" +#line 2145 "c-parse.y" { yyval.ttype = yyvsp[0].ttype; parmlist_tags_warning (); poplevel (0, 0, 0); ; break;} case 390: -#line 2154 "c-parse.y" +#line 2153 "c-parse.y" { tree t; for (t = yyvsp[-1].ttype; t; t = TREE_CHAIN (t)) if (TREE_VALUE (t) == NULL_TREE) @@ -3624,23 +3618,23 @@ case 390: yyval.ttype = tree_cons (NULL_TREE, NULL_TREE, yyvsp[-1].ttype); ; break;} case 391: -#line 2164 "c-parse.y" +#line 2163 "c-parse.y" { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ; break;} case 392: -#line 2166 "c-parse.y" +#line 2165 "c-parse.y" { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ; break;} case 393: -#line 2172 "c-parse.y" +#line 2171 "c-parse.y" { yyval.ttype = build_tree_list (NULL_TREE, yyvsp[0].ttype); ; break;} case 394: -#line 2174 "c-parse.y" +#line 2173 "c-parse.y" { yyval.ttype = chainon (yyvsp[-2].ttype, build_tree_list (NULL_TREE, yyvsp[0].ttype)); ; break;} case 395: -#line 2179 "c-parse.y" +#line 2178 "c-parse.y" { yyval.itype = pedantic; pedantic = 0; ; break;} @@ -3842,5 +3836,5 @@ yyerrhandle: yystate = yyn; goto yynewstate; } -#line 2183 "c-parse.y" +#line 2182 "c-parse.y" diff --git a/c-parse.y b/c-parse.y index 3027b61..e9208d2 100644 --- a/c-parse.y +++ b/c-parse.y @@ -1278,7 +1278,7 @@ notype_declarator: structsp: STRUCT identifier '{' - { $$ = start_struct (RECORD_TYPE, $2); + { $$ = start_struct (RECORD_TYPE, $2); /* Start scope of tag before parsing components. */ } component_decl_list '}' maybe_attribute @@ -1290,7 +1290,7 @@ structsp: | STRUCT identifier { $$ = xref_tag (RECORD_TYPE, $2); } | UNION identifier '{' - { $$ = start_struct (UNION_TYPE, $2); } + { $$ = start_struct (UNION_TYPE, $2); } component_decl_list '}' maybe_attribute { $$ = finish_struct ($4, $5, $7); } | UNION '{' component_decl_list '}' maybe_attribute @@ -1301,13 +1301,13 @@ structsp: { $$ = xref_tag (UNION_TYPE, $2); } | ENUM identifier '{' { $3 = suspend_momentary (); - $$ = start_enum ($2); } + $$ = start_enum ($2); } enumlist maybecomma_warn '}' maybe_attribute { $$ = finish_enum ($4, nreverse ($5), $8); resume_momentary ($3); } | ENUM '{' { $2 = suspend_momentary (); - $$ = start_enum (NULL_TREE); } + $$ = start_enum (NULL_TREE); } enumlist maybecomma_warn '}' maybe_attribute { $$ = finish_enum ($3, nreverse ($4), $7); resume_momentary ($2); } @@ -1359,11 +1359,10 @@ component_decl: prefix_attributes = TREE_PURPOSE (declspec_stack); declspec_stack = TREE_CHAIN (declspec_stack); resume_momentary ($2); } - | typed_typespecs + | typed_typespecs setspecs save_filename save_lineno { if (pedantic) pedwarn ("ANSI C forbids member declarations with no members"); - shadow_tag($1); - $$ = NULL_TREE; } + $$ = grokfield($3, $4, NULL, current_declspecs, NULL_TREE); } | nonempty_type_quals setspecs components { $$ = $3; current_declspecs = TREE_VALUE (declspec_stack);