Changeset 8a95629
- Timestamp:
- Jun 10, 2015, 2:26:44 PM (8 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, string, with_gc
- Children:
- b1d6dd5, b5c5684
- Parents:
- 0b2961f
- Location:
- src
- Files:
-
- 2 deleted
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/parser.cc
r0b2961f r8a95629 71 71 #define YYDEBUG_LEXER_TEXT (yylval) // lexer loads this up each time 72 72 #define YYDEBUG 1 // get the pretty debugging code to compile 73 extern char *yytext; 73 74 74 75 #undef __GNUC_MINOR__ … … 88 89 89 90 /* Line 268 of yacc.c */ 90 #line 9 1"Parser/parser.cc"91 #line 92 "Parser/parser.cc" 91 92 92 93 /* Enabling traces. */ … … 323 324 324 325 /* Line 293 of yacc.c */ 325 #line 10 7"parser.yy"326 #line 108 "parser.yy" 326 327 327 328 Token tok; … … 338 339 339 340 /* Line 293 of yacc.c */ 340 #line 34 1"Parser/parser.cc"341 #line 342 "Parser/parser.cc" 341 342 } YYSTYPE; 342 343 # define YYSTYPE_IS_TRIVIAL 1 … … 350 351 351 352 /* Line 343 of yacc.c */ 352 #line 35 3"Parser/parser.cc"353 #line 354 "Parser/parser.cc" 353 354 354 355 #ifdef short … … 990 991 static const yytype_uint16 yyrline[] = 991 992 { 992 0, 28 1, 281, 287, 297, 298, 299, 303, 304, 305,993 3 09, 310, 314, 318, 319, 323, 324, 330, 332, 334,994 33 6, 338, 340, 345, 346, 352, 354, 356, 357, 359,995 36 0, 362, 365, 370, 371, 377, 378, 379, 384, 386,996 39 1, 392, 396, 398, 400, 402, 404, 409, 410, 412,997 41 4, 416, 418, 420, 426, 428, 430, 432, 434, 436,998 43 8, 440, 445, 446, 447, 448, 452, 453, 455, 460,999 46 1, 463, 465, 470, 471, 473, 478, 479, 481, 486,1000 48 7, 489, 491, 493, 498, 499, 501, 506, 507, 512,1001 51 3, 518, 519, 524, 525, 530, 531, 536, 537, 539,1002 54 1, 546, 551, 552, 554, 556, 562, 563, 569, 571,1003 57 3, 575, 580, 581, 586, 587, 588, 589, 590, 591,1004 59 2, 593, 594, 595, 599, 600, 606, 607, 613, 614,1005 61 5, 616, 617, 618, 619, 620, 624, 629, 631, 641,1006 64 2, 647, 649, 651, 653, 657, 658, 663, 668, 671,1007 67 3, 675, 681, 683, 691, 692, 694, 698, 699, 704,1008 70 5, 710, 711, 715, 720, 721, 725, 727, 733, 734,1009 73 8, 740, 742, 744, 750, 751, 755, 756, 760, 762,1010 76 4, 769, 771, 776, 778, 782, 786, 790, 794, 798,1011 80 0, 802, 807, 809, 811, 820, 823, 825, 830, 832,1012 83 7, 850, 851, 856, 858, 863, 867, 869, 871, 873,1013 87 7, 879, 883, 884, 888, 892, 893, 899, 901, 905,1014 90 6, 911, 913, 917, 918, 922, 924, 928, 929, 933,1015 93 4, 938, 939, 955, 956, 957, 958, 959, 963, 968,1016 97 5, 985, 990, 995, 1003, 1008, 1013, 1018, 1023, 1031,1017 103 6, 1049, 1055, 1062, 1064, 1071, 1076, 1081, 1093, 1098,1018 110 3, 1108, 1113, 1121, 1126, 1134, 1135, 1136, 1137, 1143,1019 114 8, 1156, 1157, 1158, 1159, 1163, 1164, 1165, 1166, 1171,1020 117 2, 1182, 1183, 1188, 1189, 1194, 1196, 1198, 1200, 1202,1021 120 5, 1204, 1216, 1217, 1219, 1229, 1230, 1235, 1239, 1241,1022 124 3, 1245, 1247, 1250, 1255, 1257, 1259, 1261, 1263, 1265,1023 126 7, 1269, 1271, 1273, 1275, 1277, 1283, 1284, 1286, 1288,1024 129 0, 1295, 1296, 1302, 1303, 1305, 1307, 1312, 1314, 1316,1025 131 8, 1323, 1324, 1326, 1328, 1333, 1334, 1336, 1341, 1342,1026 134 4, 1346, 1351, 1353, 1355, 1360, 1361, 1365, 1367, 1369,1027 137 1, 1373, 1375, 1377, 1379, 1382, 1387, 1389, 1394, 1396,1028 140 1, 1402, 1404, 1405, 1410, 1411, 1413, 1415, 1420, 1422,1029 142 8, 1429, 1431, 1434, 1437, 1442, 1443, 1448, 1453, 1457,1030 14 59, 1461, 1466, 1468, 1474, 1475, 1483, 1484, 1488, 1489,1031 149 0, 1492, 1494, 1502, 1503, 1505, 1507, 1512, 1513, 1519,1032 152 0, 1524, 1525, 1530, 1531, 1532, 1534, 1543, 1544, 1546,1033 15 49, 1551, 1555, 1556, 1557, 1559, 1561, 1565, 1570, 1578,1034 15 79, 1588, 1590, 1595, 1596, 1597, 1601, 1602, 1603, 1607,1035 160 8, 1609, 1613, 1614, 1615, 1620, 1621, 1622, 1623, 1629,1036 163 0, 1634, 1635, 1639, 1640, 1641, 1642, 1657, 1658, 1663,1037 166 4, 1668, 1670, 1674, 1676, 1678, 1702, 1703, 1705, 1707,1038 171 2, 1714, 1716, 1721, 1722, 1728, 1727, 1731, 1735, 1737,1039 17 39, 1745, 1746, 1751, 1756, 1758, 1763, 1765, 1766, 1768,1040 177 3, 1775, 1777, 1782, 1784, 1789, 1794, 1802, 1808, 1807,1041 182 1, 1822, 1827, 1828, 1832, 1837, 1842, 1850, 1855, 1866,1042 186 7, 1878, 1879, 1885, 1886, 1890, 1891, 1892, 1895, 1894,1043 190 5, 1910, 1917, 1923, 1932, 1938, 1944, 1950, 1956, 1964,1044 197 0, 1978, 1984, 1993, 1994, 1995, 1999, 2003, 2005, 2008,1045 201 0, 2014, 2015, 2019, 2023, 2024, 2027, 2029, 2030, 2034,1046 203 5, 2036, 2037, 2072, 2073, 2074, 2075, 2079, 2084, 2089,1047 209 1, 2093, 2098, 2100, 2102, 2104, 2109, 2111, 2121, 2122,1048 212 3, 2127, 2129, 2131, 2136, 2138, 2140, 2145, 2147, 2149,1049 215 8, 2159, 2160, 2164, 2166, 2168, 2173, 2175, 2177, 2182,1050 218 4, 2186, 2201, 2202, 2203, 2204, 2208, 2213, 2218, 2220,1051 222 2, 2227, 2229, 2231, 2233, 2238, 2240, 2242, 2252, 2253,1052 225 4, 2255, 2259, 2261, 2263, 2268, 2270, 2272, 2274, 2279,1053 228 1, 2283, 2314, 2315, 2316, 2317, 2321, 2329, 2331, 2333,1054 233 8, 2340, 2345, 2347, 2361, 2362, 2363, 2367, 2369, 2371,1055 237 3, 2375, 2380, 2381, 2383, 2385, 2390, 2392, 2394, 2400,1056 240 2, 2404, 2408, 2410, 2412, 2414, 2428, 2429, 2430, 2434,1057 243 6, 2438, 2440, 2442, 2447, 2448, 2450, 2452, 2457, 2459,1058 246 1, 2467, 2468, 2470, 2480, 2483, 2485, 2488, 2490, 2492,1059 250 5, 2506, 2507, 2511, 2513, 2515, 2517, 2519, 2524, 2525,1060 252 7, 2529, 2534, 2536, 2544, 2545, 2546, 2551, 2552, 2556,1061 255 8, 2560, 2562, 2564, 2566, 2573, 2575, 2577, 2579, 2581,1062 258 3, 2585, 2587, 2589, 2591, 2596, 2598, 2600, 2605, 2631,1063 263 2, 2634, 2638, 2639, 2643, 2645, 2647, 2649, 2651, 2653,1064 266 0, 2662, 2664, 2666, 2668, 2670, 2675, 2680, 2682, 2684,1065 270 4, 2706, 2711, 2712993 0, 282, 282, 288, 298, 299, 300, 304, 305, 306, 994 310, 311, 315, 319, 320, 324, 325, 331, 333, 335, 995 337, 339, 341, 346, 347, 353, 355, 357, 358, 360, 996 361, 363, 366, 371, 372, 378, 379, 380, 385, 387, 997 392, 393, 397, 399, 401, 403, 405, 410, 411, 413, 998 415, 417, 419, 421, 427, 429, 431, 433, 435, 437, 999 439, 441, 446, 447, 448, 449, 453, 454, 456, 461, 1000 462, 464, 466, 471, 472, 474, 479, 480, 482, 487, 1001 488, 490, 492, 494, 499, 500, 502, 507, 508, 513, 1002 514, 519, 520, 525, 526, 531, 532, 537, 538, 540, 1003 542, 547, 552, 553, 555, 557, 563, 564, 570, 572, 1004 574, 576, 581, 582, 587, 588, 589, 590, 591, 592, 1005 593, 594, 595, 596, 600, 601, 607, 608, 614, 615, 1006 616, 617, 618, 619, 620, 621, 625, 630, 632, 642, 1007 643, 648, 650, 652, 654, 658, 659, 664, 669, 672, 1008 674, 676, 682, 684, 692, 693, 695, 699, 700, 705, 1009 706, 711, 712, 716, 721, 722, 726, 728, 734, 735, 1010 739, 741, 743, 745, 751, 752, 756, 757, 761, 763, 1011 765, 770, 772, 777, 779, 783, 787, 791, 795, 799, 1012 801, 803, 808, 810, 812, 821, 824, 826, 831, 833, 1013 838, 851, 852, 857, 859, 864, 868, 870, 872, 874, 1014 878, 880, 884, 885, 889, 893, 894, 900, 902, 906, 1015 907, 912, 914, 918, 919, 923, 925, 929, 930, 934, 1016 935, 939, 940, 956, 957, 958, 959, 960, 964, 969, 1017 976, 986, 991, 996, 1004, 1009, 1014, 1019, 1024, 1032, 1018 1037, 1050, 1056, 1063, 1065, 1072, 1077, 1082, 1094, 1099, 1019 1104, 1109, 1114, 1122, 1127, 1135, 1136, 1137, 1138, 1144, 1020 1149, 1157, 1158, 1159, 1160, 1164, 1165, 1166, 1167, 1172, 1021 1173, 1183, 1184, 1189, 1190, 1195, 1197, 1199, 1201, 1203, 1022 1206, 1205, 1217, 1218, 1220, 1230, 1231, 1236, 1240, 1242, 1023 1244, 1246, 1248, 1251, 1256, 1258, 1260, 1262, 1264, 1266, 1024 1268, 1270, 1272, 1274, 1276, 1278, 1284, 1285, 1287, 1289, 1025 1291, 1296, 1297, 1303, 1304, 1306, 1308, 1313, 1315, 1317, 1026 1319, 1324, 1325, 1327, 1329, 1334, 1335, 1337, 1342, 1343, 1027 1345, 1347, 1352, 1354, 1356, 1361, 1362, 1366, 1368, 1370, 1028 1372, 1374, 1376, 1378, 1380, 1383, 1388, 1390, 1395, 1397, 1029 1402, 1403, 1405, 1406, 1411, 1412, 1414, 1416, 1421, 1423, 1030 1429, 1430, 1432, 1435, 1438, 1443, 1444, 1449, 1454, 1458, 1031 1460, 1462, 1467, 1469, 1475, 1476, 1484, 1485, 1489, 1490, 1032 1491, 1493, 1495, 1503, 1504, 1506, 1508, 1513, 1514, 1520, 1033 1521, 1525, 1526, 1531, 1532, 1533, 1535, 1544, 1545, 1547, 1034 1550, 1552, 1556, 1557, 1558, 1560, 1562, 1566, 1571, 1579, 1035 1580, 1589, 1591, 1596, 1597, 1598, 1602, 1603, 1604, 1608, 1036 1609, 1610, 1614, 1615, 1616, 1621, 1622, 1623, 1624, 1630, 1037 1631, 1635, 1636, 1640, 1641, 1642, 1643, 1658, 1659, 1664, 1038 1665, 1669, 1671, 1675, 1677, 1679, 1703, 1704, 1706, 1708, 1039 1713, 1715, 1717, 1722, 1723, 1729, 1728, 1732, 1736, 1738, 1040 1740, 1746, 1747, 1752, 1757, 1759, 1764, 1766, 1767, 1769, 1041 1774, 1776, 1778, 1783, 1785, 1790, 1795, 1803, 1809, 1808, 1042 1822, 1823, 1828, 1829, 1833, 1838, 1843, 1851, 1856, 1867, 1043 1868, 1879, 1880, 1886, 1887, 1891, 1892, 1893, 1896, 1895, 1044 1906, 1911, 1918, 1924, 1933, 1939, 1945, 1951, 1957, 1965, 1045 1971, 1979, 1985, 1994, 1995, 1996, 2000, 2004, 2006, 2009, 1046 2011, 2015, 2016, 2020, 2024, 2025, 2028, 2030, 2031, 2035, 1047 2036, 2037, 2038, 2073, 2074, 2075, 2076, 2080, 2085, 2090, 1048 2092, 2094, 2099, 2101, 2103, 2105, 2110, 2112, 2122, 2123, 1049 2124, 2128, 2130, 2132, 2137, 2139, 2141, 2146, 2148, 2150, 1050 2159, 2160, 2161, 2165, 2167, 2169, 2174, 2176, 2178, 2183, 1051 2185, 2187, 2202, 2203, 2204, 2205, 2209, 2214, 2219, 2221, 1052 2223, 2228, 2230, 2232, 2234, 2239, 2241, 2243, 2253, 2254, 1053 2255, 2256, 2260, 2262, 2264, 2269, 2271, 2273, 2275, 2280, 1054 2282, 2284, 2315, 2316, 2317, 2318, 2322, 2330, 2332, 2334, 1055 2339, 2341, 2346, 2348, 2362, 2363, 2364, 2368, 2370, 2372, 1056 2374, 2376, 2381, 2382, 2384, 2386, 2391, 2393, 2395, 2401, 1057 2403, 2405, 2409, 2411, 2413, 2415, 2429, 2430, 2431, 2435, 1058 2437, 2439, 2441, 2443, 2448, 2449, 2451, 2453, 2458, 2460, 1059 2462, 2468, 2469, 2471, 2481, 2484, 2486, 2489, 2491, 2493, 1060 2506, 2507, 2508, 2512, 2514, 2516, 2518, 2520, 2525, 2526, 1061 2528, 2530, 2535, 2537, 2545, 2546, 2547, 2552, 2553, 2557, 1062 2559, 2561, 2563, 2565, 2567, 2574, 2576, 2578, 2580, 2582, 1063 2584, 2586, 2588, 2590, 2592, 2597, 2599, 2601, 2606, 2632, 1064 2633, 2635, 2639, 2640, 2644, 2646, 2648, 2650, 2652, 2654, 1065 2661, 2663, 2665, 2667, 2669, 2671, 2676, 2681, 2683, 2685, 1066 2705, 2707, 2712, 2713 1066 1067 }; 1067 1068 #endif … … 5171 5172 5172 5173 /* Line 1806 of yacc.c */ 5173 #line 28 1"parser.yy"5174 #line 282 "parser.yy" 5174 5175 { 5175 5176 typedefTable.enterScope(); … … 5180 5181 5181 5182 /* Line 1806 of yacc.c */ 5182 #line 28 7"parser.yy"5183 #line 288 "parser.yy" 5183 5184 { 5184 5185 typedefTable.leaveScope(); … … 5189 5190 5190 5191 /* Line 1806 of yacc.c */ 5191 #line 29 7"parser.yy"5192 #line 298 "parser.yy" 5192 5193 { (yyval.constant) = new ConstantNode( ConstantNode::Integer, (yyvsp[(1) - (1)].tok) ); } 5193 5194 break; … … 5196 5197 5197 5198 /* Line 1806 of yacc.c */ 5198 #line 29 8"parser.yy"5199 #line 299 "parser.yy" 5199 5200 { (yyval.constant) = new ConstantNode( ConstantNode::Float, (yyvsp[(1) - (1)].tok) ); } 5200 5201 break; … … 5203 5204 5204 5205 /* Line 1806 of yacc.c */ 5205 #line 299"parser.yy"5206 #line 300 "parser.yy" 5206 5207 { (yyval.constant) = new ConstantNode( ConstantNode::Character, (yyvsp[(1) - (1)].tok) ); } 5207 5208 break; … … 5210 5211 5211 5212 /* Line 1806 of yacc.c */ 5212 #line 32 3"parser.yy"5213 #line 324 "parser.yy" 5213 5214 { (yyval.constant) = new ConstantNode( ConstantNode::String, (yyvsp[(1) - (1)].tok) ); } 5214 5215 break; … … 5217 5218 5218 5219 /* Line 1806 of yacc.c */ 5219 #line 32 4"parser.yy"5220 #line 325 "parser.yy" 5220 5221 { (yyval.constant) = (yyvsp[(1) - (2)].constant)->appendstr( (yyvsp[(2) - (2)].tok) ); } 5221 5222 break; … … 5224 5225 5225 5226 /* Line 1806 of yacc.c */ 5226 #line 33 1"parser.yy"5227 #line 332 "parser.yy" 5227 5228 { (yyval.en) = new VarRefNode((yyvsp[(1) - (1)].tok)); } 5228 5229 break; … … 5231 5232 5232 5233 /* Line 1806 of yacc.c */ 5233 #line 33 3"parser.yy"5234 #line 334 "parser.yy" 5234 5235 { (yyval.en) = new VarRefNode((yyvsp[(1) - (1)].tok)); } 5235 5236 break; … … 5238 5239 5239 5240 /* Line 1806 of yacc.c */ 5240 #line 33 5"parser.yy"5241 #line 336 "parser.yy" 5241 5242 { (yyval.en) = (yyvsp[(1) - (1)].constant); } 5242 5243 break; … … 5245 5246 5246 5247 /* Line 1806 of yacc.c */ 5247 #line 33 7"parser.yy"5248 #line 338 "parser.yy" 5248 5249 { (yyval.en) = (yyvsp[(1) - (1)].constant); } 5249 5250 break; … … 5252 5253 5253 5254 /* Line 1806 of yacc.c */ 5254 #line 3 39"parser.yy"5255 #line 340 "parser.yy" 5255 5256 { (yyval.en) = (yyvsp[(2) - (3)].en); } 5256 5257 break; … … 5259 5260 5260 5261 /* Line 1806 of yacc.c */ 5261 #line 34 1"parser.yy"5262 #line 342 "parser.yy" 5262 5263 { (yyval.en) = new ValofExprNode((yyvsp[(2) - (3)].sn)); } 5263 5264 break; … … 5266 5267 5267 5268 /* Line 1806 of yacc.c */ 5268 #line 35 1"parser.yy"5269 #line 352 "parser.yy" 5269 5270 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Index), (yyvsp[(1) - (6)].en), (yyvsp[(4) - (6)].en)); } 5270 5271 break; … … 5273 5274 5274 5275 /* Line 1806 of yacc.c */ 5275 #line 35 3"parser.yy"5276 #line 354 "parser.yy" 5276 5277 { (yyval.en) = new CompositeExprNode((yyvsp[(1) - (4)].en), (yyvsp[(3) - (4)].en)); } 5277 5278 break; … … 5280 5281 5281 5282 /* Line 1806 of yacc.c */ 5282 #line 35 5"parser.yy"5283 #line 356 "parser.yy" 5283 5284 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::FieldSel), (yyvsp[(1) - (3)].en), new VarRefNode((yyvsp[(3) - (3)].tok))); } 5284 5285 break; … … 5287 5288 5288 5289 /* Line 1806 of yacc.c */ 5289 #line 35 8"parser.yy"5290 #line 359 "parser.yy" 5290 5291 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::PFieldSel), (yyvsp[(1) - (3)].en), new VarRefNode((yyvsp[(3) - (3)].tok))); } 5291 5292 break; … … 5294 5295 5295 5296 /* Line 1806 of yacc.c */ 5296 #line 36 1"parser.yy"5297 #line 362 "parser.yy" 5297 5298 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::IncrPost), (yyvsp[(1) - (2)].en)); } 5298 5299 break; … … 5301 5302 5302 5303 /* Line 1806 of yacc.c */ 5303 #line 36 3"parser.yy"5304 #line 364 "parser.yy" 5304 5305 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::DecrPost), (yyvsp[(1) - (2)].en)); } 5305 5306 break; … … 5308 5309 5309 5310 /* Line 1806 of yacc.c */ 5310 #line 36 6"parser.yy"5311 #line 367 "parser.yy" 5311 5312 { (yyval.en) = 0; } 5312 5313 break; … … 5315 5316 5316 5317 /* Line 1806 of yacc.c */ 5317 #line 37 2"parser.yy"5318 #line 373 "parser.yy" 5318 5319 { (yyval.en) = (ExpressionNode *)((yyvsp[(1) - (3)].en)->set_link((yyvsp[(3) - (3)].en))); } 5319 5320 break; … … 5322 5323 5323 5324 /* Line 1806 of yacc.c */ 5324 #line 37 7"parser.yy"5325 #line 378 "parser.yy" 5325 5326 { (yyval.en) = 0; } 5326 5327 break; … … 5329 5330 5330 5331 /* Line 1806 of yacc.c */ 5331 #line 38 0"parser.yy"5332 #line 381 "parser.yy" 5332 5333 { (yyval.en) = (yyvsp[(3) - (3)].en)->set_asArgName((yyvsp[(1) - (3)].tok)); } 5333 5334 break; … … 5336 5337 5337 5338 /* Line 1806 of yacc.c */ 5338 #line 38 5"parser.yy"5339 #line 386 "parser.yy" 5339 5340 { (yyval.en) = (yyvsp[(7) - (7)].en)->set_asArgName((yyvsp[(3) - (7)].en)); } 5340 5341 break; … … 5343 5344 5344 5345 /* Line 1806 of yacc.c */ 5345 #line 38 7"parser.yy"5346 #line 388 "parser.yy" 5346 5347 { (yyval.en) = (yyvsp[(9) - (9)].en)->set_asArgName( new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (ExpressionNode *)(yyvsp[(3) - (9)].en)->set_link( flattenCommas( (yyvsp[(5) - (9)].en) )))); } 5347 5348 break; … … 5350 5351 5351 5352 /* Line 1806 of yacc.c */ 5352 #line 39 2"parser.yy"5353 #line 393 "parser.yy" 5353 5354 { (yyval.en) = (ExpressionNode *)(yyvsp[(1) - (3)].en)->set_link( (yyvsp[(3) - (3)].en) ); } 5354 5355 break; … … 5357 5358 5358 5359 /* Line 1806 of yacc.c */ 5359 #line 39 7"parser.yy"5360 #line 398 "parser.yy" 5360 5361 { (yyval.en) = new VarRefNode( (yyvsp[(1) - (1)].tok) ); } 5361 5362 break; … … 5364 5365 5365 5366 /* Line 1806 of yacc.c */ 5366 #line 399"parser.yy"5367 #line 400 "parser.yy" 5367 5368 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::FieldSel), new VarRefNode( (yyvsp[(1) - (3)].tok) ), (yyvsp[(3) - (3)].en)); } 5368 5369 break; … … 5371 5372 5372 5373 /* Line 1806 of yacc.c */ 5373 #line 40 1"parser.yy"5374 #line 402 "parser.yy" 5374 5375 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::FieldSel), new VarRefNode( (yyvsp[(1) - (7)].tok) ), (yyvsp[(5) - (7)].en)); } 5375 5376 break; … … 5378 5379 5379 5380 /* Line 1806 of yacc.c */ 5380 #line 40 3"parser.yy"5381 #line 404 "parser.yy" 5381 5382 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::PFieldSel), new VarRefNode( (yyvsp[(1) - (3)].tok) ), (yyvsp[(3) - (3)].en)); } 5382 5383 break; … … 5385 5386 5386 5387 /* Line 1806 of yacc.c */ 5387 #line 40 5"parser.yy"5388 #line 406 "parser.yy" 5388 5389 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::PFieldSel), new VarRefNode( (yyvsp[(1) - (7)].tok) ), (yyvsp[(5) - (7)].en)); } 5389 5390 break; … … 5392 5393 5393 5394 /* Line 1806 of yacc.c */ 5394 #line 41 1"parser.yy"5395 #line 412 "parser.yy" 5395 5396 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Incr), (yyvsp[(2) - (2)].en)); } 5396 5397 break; … … 5399 5400 5400 5401 /* Line 1806 of yacc.c */ 5401 #line 41 3"parser.yy"5402 #line 414 "parser.yy" 5402 5403 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Decr), (yyvsp[(2) - (2)].en)); } 5403 5404 break; … … 5406 5407 5407 5408 /* Line 1806 of yacc.c */ 5408 #line 41 5"parser.yy"5409 #line 416 "parser.yy" 5409 5410 { (yyval.en) = (yyvsp[(2) - (2)].en); } 5410 5411 break; … … 5413 5414 5414 5415 /* Line 1806 of yacc.c */ 5415 #line 41 7"parser.yy"5416 #line 418 "parser.yy" 5416 5417 { (yyval.en) = new CompositeExprNode((yyvsp[(1) - (2)].en), (yyvsp[(2) - (2)].en)); } 5417 5418 break; … … 5420 5421 5421 5422 /* Line 1806 of yacc.c */ 5422 #line 4 19"parser.yy"5423 #line 420 "parser.yy" 5423 5424 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Neg), (yyvsp[(2) - (2)].en)); } 5424 5425 break; … … 5427 5428 5428 5429 /* Line 1806 of yacc.c */ 5429 #line 42 1"parser.yy"5430 #line 422 "parser.yy" 5430 5431 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::PointTo), (yyvsp[(2) - (2)].en)); } 5431 5432 break; … … 5434 5435 5435 5436 /* Line 1806 of yacc.c */ 5436 #line 42 7"parser.yy"5437 #line 428 "parser.yy" 5437 5438 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::SizeOf), (yyvsp[(2) - (2)].en)); } 5438 5439 break; … … 5441 5442 5442 5443 /* Line 1806 of yacc.c */ 5443 #line 4 29"parser.yy"5444 #line 430 "parser.yy" 5444 5445 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::SizeOf), new TypeValueNode((yyvsp[(3) - (4)].decl))); } 5445 5446 break; … … 5448 5449 5449 5450 /* Line 1806 of yacc.c */ 5450 #line 43 1"parser.yy"5451 #line 432 "parser.yy" 5451 5452 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Attr), new VarRefNode((yyvsp[(1) - (1)].tok))); } 5452 5453 break; … … 5455 5456 5456 5457 /* Line 1806 of yacc.c */ 5457 #line 43 3"parser.yy"5458 #line 434 "parser.yy" 5458 5459 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Attr), new VarRefNode((yyvsp[(1) - (4)].tok)), new TypeValueNode((yyvsp[(3) - (4)].decl))); } 5459 5460 break; … … 5462 5463 5463 5464 /* Line 1806 of yacc.c */ 5464 #line 43 5"parser.yy"5465 #line 436 "parser.yy" 5465 5466 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Attr), new VarRefNode((yyvsp[(1) - (4)].tok)), (yyvsp[(3) - (4)].en)); } 5466 5467 break; … … 5469 5470 5470 5471 /* Line 1806 of yacc.c */ 5471 #line 43 7"parser.yy"5472 #line 438 "parser.yy" 5472 5473 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::AlignOf), (yyvsp[(2) - (2)].en)); } 5473 5474 break; … … 5476 5477 5477 5478 /* Line 1806 of yacc.c */ 5478 #line 4 39"parser.yy"5479 #line 440 "parser.yy" 5479 5480 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::AlignOf), new TypeValueNode((yyvsp[(3) - (4)].decl))); } 5480 5481 break; … … 5483 5484 5484 5485 /* Line 1806 of yacc.c */ 5485 #line 44 1"parser.yy"5486 #line 442 "parser.yy" 5486 5487 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::LabelAddress), new VarRefNode((yyvsp[(2) - (2)].tok), true)); } 5487 5488 break; … … 5490 5491 5491 5492 /* Line 1806 of yacc.c */ 5492 #line 44 5"parser.yy"5493 #line 446 "parser.yy" 5493 5494 { (yyval.en) = new OperatorNode(OperatorNode::AddressOf); } 5494 5495 break; … … 5497 5498 5498 5499 /* Line 1806 of yacc.c */ 5499 #line 44 6"parser.yy"5500 #line 447 "parser.yy" 5500 5501 { (yyval.en) = new OperatorNode(OperatorNode::UnPlus); } 5501 5502 break; … … 5504 5505 5505 5506 /* Line 1806 of yacc.c */ 5506 #line 44 7"parser.yy"5507 #line 448 "parser.yy" 5507 5508 { (yyval.en) = new OperatorNode(OperatorNode::UnMinus); } 5508 5509 break; … … 5511 5512 5512 5513 /* Line 1806 of yacc.c */ 5513 #line 44 8"parser.yy"5514 #line 449 "parser.yy" 5514 5515 { (yyval.en) = new OperatorNode(OperatorNode::BitNeg); } 5515 5516 break; … … 5518 5519 5519 5520 /* Line 1806 of yacc.c */ 5520 #line 45 4"parser.yy"5521 #line 455 "parser.yy" 5521 5522 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Cast), new TypeValueNode((yyvsp[(2) - (4)].decl)), (yyvsp[(4) - (4)].en)); } 5522 5523 break; … … 5525 5526 5526 5527 /* Line 1806 of yacc.c */ 5527 #line 45 6"parser.yy"5528 #line 457 "parser.yy" 5528 5529 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Cast), new TypeValueNode((yyvsp[(2) - (4)].decl)), (yyvsp[(4) - (4)].en)); } 5529 5530 break; … … 5532 5533 5533 5534 /* Line 1806 of yacc.c */ 5534 #line 46 2"parser.yy"5535 #line 463 "parser.yy" 5535 5536 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Mul),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5536 5537 break; … … 5539 5540 5540 5541 /* Line 1806 of yacc.c */ 5541 #line 46 4"parser.yy"5542 #line 465 "parser.yy" 5542 5543 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Div),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5543 5544 break; … … 5546 5547 5547 5548 /* Line 1806 of yacc.c */ 5548 #line 46 6"parser.yy"5549 #line 467 "parser.yy" 5549 5550 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Mod),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5550 5551 break; … … 5553 5554 5554 5555 /* Line 1806 of yacc.c */ 5555 #line 47 2"parser.yy"5556 #line 473 "parser.yy" 5556 5557 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Plus),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5557 5558 break; … … 5560 5561 5561 5562 /* Line 1806 of yacc.c */ 5562 #line 47 4"parser.yy"5563 #line 475 "parser.yy" 5563 5564 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Minus),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5564 5565 break; … … 5567 5568 5568 5569 /* Line 1806 of yacc.c */ 5569 #line 48 0"parser.yy"5570 #line 481 "parser.yy" 5570 5571 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::LShift),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5571 5572 break; … … 5574 5575 5575 5576 /* Line 1806 of yacc.c */ 5576 #line 48 2"parser.yy"5577 #line 483 "parser.yy" 5577 5578 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::RShift),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5578 5579 break; … … 5581 5582 5582 5583 /* Line 1806 of yacc.c */ 5583 #line 48 8"parser.yy"5584 #line 489 "parser.yy" 5584 5585 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::LThan),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5585 5586 break; … … 5588 5589 5589 5590 /* Line 1806 of yacc.c */ 5590 #line 49 0"parser.yy"5591 #line 491 "parser.yy" 5591 5592 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::GThan),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5592 5593 break; … … 5595 5596 5596 5597 /* Line 1806 of yacc.c */ 5597 #line 49 2"parser.yy"5598 #line 493 "parser.yy" 5598 5599 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::LEThan),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5599 5600 break; … … 5602 5603 5603 5604 /* Line 1806 of yacc.c */ 5604 #line 49 4"parser.yy"5605 #line 495 "parser.yy" 5605 5606 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::GEThan),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5606 5607 break; … … 5609 5610 5610 5611 /* Line 1806 of yacc.c */ 5611 #line 50 0"parser.yy"5612 #line 501 "parser.yy" 5612 5613 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Eq), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en)); } 5613 5614 break; … … 5616 5617 5617 5618 /* Line 1806 of yacc.c */ 5618 #line 50 2"parser.yy"5619 #line 503 "parser.yy" 5619 5620 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Neq), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en)); } 5620 5621 break; … … 5623 5624 5624 5625 /* Line 1806 of yacc.c */ 5625 #line 50 8"parser.yy"5626 #line 509 "parser.yy" 5626 5627 { (yyval.en) =new CompositeExprNode(new OperatorNode(OperatorNode::BitAnd), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en)); } 5627 5628 break; … … 5630 5631 5631 5632 /* Line 1806 of yacc.c */ 5632 #line 51 4"parser.yy"5633 #line 515 "parser.yy" 5633 5634 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Xor), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en)); } 5634 5635 break; … … 5637 5638 5638 5639 /* Line 1806 of yacc.c */ 5639 #line 52 0"parser.yy"5640 #line 521 "parser.yy" 5640 5641 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::BitOr), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en)); } 5641 5642 break; … … 5644 5645 5645 5646 /* Line 1806 of yacc.c */ 5646 #line 52 6"parser.yy"5647 #line 527 "parser.yy" 5647 5648 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::And), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en)); } 5648 5649 break; … … 5651 5652 5652 5653 /* Line 1806 of yacc.c */ 5653 #line 53 2"parser.yy"5654 #line 533 "parser.yy" 5654 5655 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Or), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en)); } 5655 5656 break; … … 5658 5659 5659 5660 /* Line 1806 of yacc.c */ 5660 #line 53 8"parser.yy"5661 #line 539 "parser.yy" 5661 5662 { (yyval.en) = new CompositeExprNode( new OperatorNode(OperatorNode::Cond), (ExpressionNode *)mkList( (*(yyvsp[(1) - (5)].en), *(yyvsp[(3) - (5)].en), *(yyvsp[(5) - (5)].en)) ) ); } 5662 5663 break; … … 5665 5666 5666 5667 /* Line 1806 of yacc.c */ 5667 #line 54 0"parser.yy"5668 #line 541 "parser.yy" 5668 5669 { (yyval.en)=new CompositeExprNode(new OperatorNode(OperatorNode::NCond),(yyvsp[(1) - (4)].en),(yyvsp[(4) - (4)].en)); } 5669 5670 break; … … 5672 5673 5673 5674 /* Line 1806 of yacc.c */ 5674 #line 54 2"parser.yy"5675 #line 543 "parser.yy" 5675 5676 { (yyval.en) = new CompositeExprNode( new OperatorNode(OperatorNode::Cond), (ExpressionNode *)mkList( (*(yyvsp[(1) - (5)].en), *(yyvsp[(3) - (5)].en), *(yyvsp[(5) - (5)].en)) ) ); } 5676 5677 break; … … 5679 5680 5680 5681 /* Line 1806 of yacc.c */ 5681 #line 55 3"parser.yy"5682 #line 554 "parser.yy" 5682 5683 { (yyval.en) =new CompositeExprNode(new OperatorNode(OperatorNode::Assign), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en)); } 5683 5684 break; … … 5686 5687 5687 5688 /* Line 1806 of yacc.c */ 5688 #line 55 5"parser.yy"5689 #line 556 "parser.yy" 5689 5690 { (yyval.en) =new CompositeExprNode((yyvsp[(2) - (3)].en), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en)); } 5690 5691 break; … … 5693 5694 5694 5695 /* Line 1806 of yacc.c */ 5695 #line 55 7"parser.yy"5696 #line 558 "parser.yy" 5696 5697 { (yyval.en) = ((yyvsp[(2) - (2)].en) == 0) ? (yyvsp[(1) - (2)].en) : new CompositeExprNode( new OperatorNode( OperatorNode::Assign ), (yyvsp[(1) - (2)].en), (yyvsp[(2) - (2)].en) ); } 5697 5698 break; … … 5700 5701 5701 5702 /* Line 1806 of yacc.c */ 5702 #line 56 2"parser.yy"5703 #line 563 "parser.yy" 5703 5704 { (yyval.en) = new NullExprNode; } 5704 5705 break; … … 5707 5708 5708 5709 /* Line 1806 of yacc.c */ 5709 #line 57 0"parser.yy"5710 #line 571 "parser.yy" 5710 5711 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ) ); } 5711 5712 break; … … 5714 5715 5715 5716 /* Line 1806 of yacc.c */ 5716 #line 57 2"parser.yy"5717 #line 573 "parser.yy" 5717 5718 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (yyvsp[(3) - (5)].en) ); } 5718 5719 break; … … 5721 5722 5722 5723 /* Line 1806 of yacc.c */ 5723 #line 57 4"parser.yy"5724 #line 575 "parser.yy" 5724 5725 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (ExpressionNode *)(new NullExprNode)->set_link( (yyvsp[(4) - (6)].en) ) ); } 5725 5726 break; … … 5728 5729 5729 5730 /* Line 1806 of yacc.c */ 5730 #line 57 6"parser.yy"5731 #line 577 "parser.yy" 5731 5732 { (yyval.en) = new CompositeExprNode( new OperatorNode( OperatorNode::TupleC ), (ExpressionNode *)(yyvsp[(3) - (7)].en)->set_link( flattenCommas( (yyvsp[(5) - (7)].en) ) ) ); } 5732 5733 break; … … 5735 5736 5736 5737 /* Line 1806 of yacc.c */ 5737 #line 58 2"parser.yy"5738 #line 583 "parser.yy" 5738 5739 { (yyval.en) = (ExpressionNode *)(yyvsp[(1) - (3)].en)->set_link( (yyvsp[(3) - (3)].en) ); } 5739 5740 break; … … 5742 5743 5743 5744 /* Line 1806 of yacc.c */ 5744 #line 58 6"parser.yy"5745 #line 587 "parser.yy" 5745 5746 { (yyval.en) = new OperatorNode(OperatorNode::MulAssn); } 5746 5747 break; … … 5749 5750 5750 5751 /* Line 1806 of yacc.c */ 5751 #line 58 7"parser.yy"5752 #line 588 "parser.yy" 5752 5753 { (yyval.en) = new OperatorNode(OperatorNode::DivAssn); } 5753 5754 break; … … 5756 5757 5757 5758 /* Line 1806 of yacc.c */ 5758 #line 58 8"parser.yy"5759 #line 589 "parser.yy" 5759 5760 { (yyval.en) = new OperatorNode(OperatorNode::ModAssn); } 5760 5761 break; … … 5763 5764 5764 5765 /* Line 1806 of yacc.c */ 5765 #line 5 89"parser.yy"5766 #line 590 "parser.yy" 5766 5767 { (yyval.en) = new OperatorNode(OperatorNode::PlusAssn); } 5767 5768 break; … … 5770 5771 5771 5772 /* Line 1806 of yacc.c */ 5772 #line 59 0"parser.yy"5773 #line 591 "parser.yy" 5773 5774 { (yyval.en) = new OperatorNode(OperatorNode::MinusAssn); } 5774 5775 break; … … 5777 5778 5778 5779 /* Line 1806 of yacc.c */ 5779 #line 59 1"parser.yy"5780 #line 592 "parser.yy" 5780 5781 { (yyval.en) = new OperatorNode(OperatorNode::LSAssn); } 5781 5782 break; … … 5784 5785 5785 5786 /* Line 1806 of yacc.c */ 5786 #line 59 2"parser.yy"5787 #line 593 "parser.yy" 5787 5788 { (yyval.en) = new OperatorNode(OperatorNode::RSAssn); } 5788 5789 break; … … 5791 5792 5792 5793 /* Line 1806 of yacc.c */ 5793 #line 59 3"parser.yy"5794 #line 594 "parser.yy" 5794 5795 { (yyval.en) = new OperatorNode(OperatorNode::AndAssn); } 5795 5796 break; … … 5798 5799 5799 5800 /* Line 1806 of yacc.c */ 5800 #line 59 4"parser.yy"5801 #line 595 "parser.yy" 5801 5802 { (yyval.en) = new OperatorNode(OperatorNode::ERAssn); } 5802 5803 break; … … 5805 5806 5806 5807 /* Line 1806 of yacc.c */ 5807 #line 59 5"parser.yy"5808 #line 596 "parser.yy" 5808 5809 { (yyval.en) = new OperatorNode(OperatorNode::OrAssn); } 5809 5810 break; … … 5812 5813 5813 5814 /* Line 1806 of yacc.c */ 5814 #line 60 1"parser.yy"5815 #line 602 "parser.yy" 5815 5816 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Comma),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5816 5817 break; … … 5819 5820 5820 5821 /* Line 1806 of yacc.c */ 5821 #line 60 6"parser.yy"5822 #line 607 "parser.yy" 5822 5823 { (yyval.en) = 0; } 5823 5824 break; … … 5826 5827 5827 5828 /* Line 1806 of yacc.c */ 5828 #line 61 5"parser.yy"5829 #line 616 "parser.yy" 5829 5830 { (yyval.sn) = (yyvsp[(1) - (1)].sn); } 5830 5831 break; … … 5833 5834 5834 5835 /* Line 1806 of yacc.c */ 5835 #line 62 5"parser.yy"5836 #line 626 "parser.yy" 5836 5837 { (yyval.sn) = (yyvsp[(4) - (4)].sn)->add_label((yyvsp[(1) - (4)].tok));} 5837 5838 break; … … 5840 5841 5841 5842 /* Line 1806 of yacc.c */ 5842 #line 63 0"parser.yy"5843 #line 631 "parser.yy" 5843 5844 { (yyval.sn) = new CompoundStmtNode( (StatementNode *)0 ); } 5844 5845 break; … … 5847 5848 5848 5849 /* Line 1806 of yacc.c */ 5849 #line 63 7"parser.yy"5850 #line 638 "parser.yy" 5850 5851 { (yyval.sn) = new CompoundStmtNode( (yyvsp[(5) - (7)].sn) ); } 5851 5852 break; … … 5854 5855 5855 5856 /* Line 1806 of yacc.c */ 5856 #line 64 3"parser.yy"5857 #line 644 "parser.yy" 5857 5858 { if ((yyvsp[(1) - (3)].sn) != 0) { (yyvsp[(1) - (3)].sn)->set_link((yyvsp[(3) - (3)].sn)); (yyval.sn) = (yyvsp[(1) - (3)].sn); } } 5858 5859 break; … … 5861 5862 5862 5863 /* Line 1806 of yacc.c */ 5863 #line 64 8"parser.yy"5864 #line 649 "parser.yy" 5864 5865 { (yyval.sn) = new StatementNode( (yyvsp[(1) - (1)].decl) ); } 5865 5866 break; … … 5868 5869 5869 5870 /* Line 1806 of yacc.c */ 5870 #line 65 0"parser.yy"5871 #line 651 "parser.yy" 5871 5872 { (yyval.sn) = new StatementNode( (yyvsp[(2) - (2)].decl) ); } 5872 5873 break; … … 5875 5876 5876 5877 /* Line 1806 of yacc.c */ 5877 #line 65 2"parser.yy"5878 #line 653 "parser.yy" 5878 5879 { (yyval.sn) = new StatementNode( (yyvsp[(1) - (1)].decl) ); } 5879 5880 break; … … 5882 5883 5883 5884 /* Line 1806 of yacc.c */ 5884 #line 6 59"parser.yy"5885 #line 660 "parser.yy" 5885 5886 { if ((yyvsp[(1) - (2)].sn) != 0) { (yyvsp[(1) - (2)].sn)->set_link((yyvsp[(2) - (2)].sn)); (yyval.sn) = (yyvsp[(1) - (2)].sn); } } 5886 5887 break; … … 5889 5890 5890 5891 /* Line 1806 of yacc.c */ 5891 #line 66 4"parser.yy"5892 #line 665 "parser.yy" 5892 5893 { (yyval.sn) = new StatementNode(StatementNode::Exp, (yyvsp[(1) - (2)].en), 0); } 5893 5894 break; … … 5896 5897 5897 5898 /* Line 1806 of yacc.c */ 5898 #line 67 0"parser.yy"5899 #line 671 "parser.yy" 5899 5900 { (yyval.sn) = new StatementNode(StatementNode::If, (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn)); } 5900 5901 break; … … 5903 5904 5904 5905 /* Line 1806 of yacc.c */ 5905 #line 67 2"parser.yy"5906 #line 673 "parser.yy" 5906 5907 { (yyval.sn) = new StatementNode(StatementNode::If, (yyvsp[(3) - (7)].en), (StatementNode *)mkList((*(yyvsp[(5) - (7)].sn), *(yyvsp[(7) - (7)].sn))) ); } 5907 5908 break; … … 5910 5911 5911 5912 /* Line 1806 of yacc.c */ 5912 #line 67 4"parser.yy"5913 #line 675 "parser.yy" 5913 5914 { (yyval.sn) = new StatementNode(StatementNode::Switch, (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn)); } 5914 5915 break; … … 5917 5918 5918 5919 /* Line 1806 of yacc.c */ 5919 #line 67 6"parser.yy"5920 #line 677 "parser.yy" 5920 5921 { (yyval.sn) = new StatementNode(StatementNode::Switch, (yyvsp[(3) - (9)].en), (yyvsp[(8) - (9)].sn)); /* xxx */ } 5921 5922 break; … … 5924 5925 5925 5926 /* Line 1806 of yacc.c */ 5926 #line 68 2"parser.yy"5927 #line 683 "parser.yy" 5927 5928 { (yyval.sn) = new StatementNode(StatementNode::Choose, (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn)); } 5928 5929 break; … … 5931 5932 5932 5933 /* Line 1806 of yacc.c */ 5933 #line 68 4"parser.yy"5934 #line 685 "parser.yy" 5934 5935 { (yyval.sn) = new StatementNode(StatementNode::Choose, (yyvsp[(3) - (9)].en), (yyvsp[(8) - (9)].sn)); } 5935 5936 break; … … 5938 5939 5939 5940 /* Line 1806 of yacc.c */ 5940 #line 69 1"parser.yy"5941 #line 692 "parser.yy" 5941 5942 { (yyval.en) = (yyvsp[(1) - (1)].en); } 5942 5943 break; … … 5945 5946 5946 5947 /* Line 1806 of yacc.c */ 5947 #line 69 3"parser.yy"5948 #line 694 "parser.yy" 5948 5949 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Range),(yyvsp[(1) - (3)].en),(yyvsp[(3) - (3)].en)); } 5949 5950 break; … … 5952 5953 5953 5954 /* Line 1806 of yacc.c */ 5954 #line 70 0"parser.yy"5955 #line 701 "parser.yy" 5955 5956 { (yyval.en) = new CompositeExprNode(new OperatorNode( OperatorNode::TupleC ), (ExpressionNode *)(tupleContents((yyvsp[(1) - (3)].en)))->set_link((yyvsp[(3) - (3)].en)) ); } 5956 5957 break; … … 5959 5960 5960 5961 /* Line 1806 of yacc.c */ 5961 #line 70 4"parser.yy"5962 #line 705 "parser.yy" 5962 5963 { (yyval.sn) = new StatementNode(StatementNode::Case, (yyvsp[(2) - (3)].en), 0); } 5963 5964 break; … … 5966 5967 5967 5968 /* Line 1806 of yacc.c */ 5968 #line 70 5"parser.yy"5969 #line 706 "parser.yy" 5969 5970 { (yyval.sn) = new StatementNode(StatementNode::Default); } 5970 5971 break; … … 5973 5974 5974 5975 /* Line 1806 of yacc.c */ 5975 #line 71 1"parser.yy"5976 #line 712 "parser.yy" 5976 5977 { (yyval.sn) = (StatementNode *)((yyvsp[(1) - (2)].sn)->set_link((yyvsp[(2) - (2)].sn))); } 5977 5978 break; … … 5980 5981 5981 5982 /* Line 1806 of yacc.c */ 5982 #line 71 5"parser.yy"5983 #line 716 "parser.yy" 5983 5984 { (yyval.sn) = (yyvsp[(1) - (2)].sn)->append_last_case((yyvsp[(2) - (2)].sn)); } 5984 5985 break; … … 5987 5988 5988 5989 /* Line 1806 of yacc.c */ 5989 #line 72 0"parser.yy"5990 #line 721 "parser.yy" 5990 5991 { (yyval.sn) = 0; } 5991 5992 break; … … 5994 5995 5995 5996 /* Line 1806 of yacc.c */ 5996 #line 72 6"parser.yy"5997 #line 727 "parser.yy" 5997 5998 { (yyval.sn) = (yyvsp[(1) - (2)].sn)->append_last_case((yyvsp[(2) - (2)].sn)); } 5998 5999 break; … … 6001 6002 6002 6003 /* Line 1806 of yacc.c */ 6003 #line 72 8"parser.yy"6004 #line 729 "parser.yy" 6004 6005 { (yyval.sn) = (StatementNode *)((yyvsp[(1) - (3)].sn)->set_link((yyvsp[(2) - (3)].sn)->append_last_case((yyvsp[(3) - (3)].sn)))); } 6005 6006 break; … … 6008 6009 6009 6010 /* Line 1806 of yacc.c */ 6010 #line 73 3"parser.yy"6011 #line 734 "parser.yy" 6011 6012 { (yyval.sn) = 0; } 6012 6013 break; … … 6015 6016 6016 6017 /* Line 1806 of yacc.c */ 6017 #line 7 39"parser.yy"6018 #line 740 "parser.yy" 6018 6019 { (yyval.sn) = (yyvsp[(1) - (2)].sn)->append_last_case((yyvsp[(2) - (2)].sn)); } 6019 6020 break; … … 6022 6023 6023 6024 /* Line 1806 of yacc.c */ 6024 #line 74 1"parser.yy"6025 #line 742 "parser.yy" 6025 6026 { (yyval.sn) = (yyvsp[(1) - (3)].sn)->append_last_case((StatementNode *)mkList((*(yyvsp[(2) - (3)].sn),*(yyvsp[(3) - (3)].sn)))); } 6026 6027 break; … … 6029 6030 6030 6031 /* Line 1806 of yacc.c */ 6031 #line 74 3"parser.yy"6032 #line 744 "parser.yy" 6032 6033 { (yyval.sn) = (StatementNode *)((yyvsp[(1) - (3)].sn)->set_link((yyvsp[(2) - (3)].sn)->append_last_case((yyvsp[(3) - (3)].sn)))); } 6033 6034 break; … … 6036 6037 6037 6038 /* Line 1806 of yacc.c */ 6038 #line 74 5"parser.yy"6039 #line 746 "parser.yy" 6039 6040 { (yyval.sn) = (StatementNode *)((yyvsp[(1) - (4)].sn)->set_link((yyvsp[(2) - (4)].sn)->append_last_case((StatementNode *)mkList((*(yyvsp[(3) - (4)].sn),*(yyvsp[(4) - (4)].sn)))))); } 6040 6041 break; … … 6043 6044 6044 6045 /* Line 1806 of yacc.c */ 6045 #line 75 0"parser.yy"6046 #line 751 "parser.yy" 6046 6047 { (yyval.sn) = 0; } 6047 6048 break; 6048 6049 6049 6050 case 176: 6050 6051 /* Line 1806 of yacc.c */6052 #line 755 "parser.yy"6053 { (yyval.sn) = new StatementNode(StatementNode::Fallthru, 0, 0); }6054 break;6055 6056 case 177:6057 6051 6058 6052 /* Line 1806 of yacc.c */ … … 6061 6055 break; 6062 6056 6057 case 177: 6058 6059 /* Line 1806 of yacc.c */ 6060 #line 757 "parser.yy" 6061 { (yyval.sn) = new StatementNode(StatementNode::Fallthru, 0, 0); } 6062 break; 6063 6063 6064 case 178: 6064 6065 6065 6066 /* Line 1806 of yacc.c */ 6066 #line 76 1"parser.yy"6067 #line 762 "parser.yy" 6067 6068 { (yyval.sn) = new StatementNode(StatementNode::While, (yyvsp[(3) - (5)].en), (yyvsp[(5) - (5)].sn)); } 6068 6069 break; … … 6071 6072 6072 6073 /* Line 1806 of yacc.c */ 6073 #line 76 3"parser.yy"6074 #line 764 "parser.yy" 6074 6075 { (yyval.sn) = new StatementNode(StatementNode::Do, (yyvsp[(5) - (7)].en), (yyvsp[(2) - (7)].sn)); } 6075 6076 break; … … 6078 6079 6079 6080 /* Line 1806 of yacc.c */ 6080 #line 76 5"parser.yy"6081 #line 766 "parser.yy" 6081 6082 { (yyval.sn) = new StatementNode(StatementNode::For, (yyvsp[(4) - (6)].en), (yyvsp[(6) - (6)].sn)); } 6082 6083 break; … … 6085 6086 6086 6087 /* Line 1806 of yacc.c */ 6087 #line 77 0"parser.yy"6088 #line 771 "parser.yy" 6088 6089 { (yyval.en) = new ForCtlExprNode((yyvsp[(1) - (6)].en), (yyvsp[(4) - (6)].en), (yyvsp[(6) - (6)].en)); } 6089 6090 break; … … 6092 6093 6093 6094 /* Line 1806 of yacc.c */ 6094 #line 77 2"parser.yy"6095 #line 773 "parser.yy" 6095 6096 { (yyval.en) = new ForCtlExprNode((yyvsp[(1) - (4)].decl), (yyvsp[(2) - (4)].en), (yyvsp[(4) - (4)].en)); } 6096 6097 break; … … 6099 6100 6100 6101 /* Line 1806 of yacc.c */ 6101 #line 77 7"parser.yy"6102 #line 778 "parser.yy" 6102 6103 { (yyval.sn) = new StatementNode(StatementNode::Goto, (yyvsp[(2) - (3)].tok)); } 6103 6104 break; … … 6106 6107 6107 6108 /* Line 1806 of yacc.c */ 6108 #line 78 1"parser.yy"6109 #line 782 "parser.yy" 6109 6110 { (yyval.sn) = new StatementNode(StatementNode::Goto, (yyvsp[(3) - (4)].en)); } 6110 6111 break; … … 6113 6114 6114 6115 /* Line 1806 of yacc.c */ 6115 #line 78 5"parser.yy"6116 #line 786 "parser.yy" 6116 6117 { (yyval.sn) = new StatementNode(StatementNode::Continue, 0, 0); } 6117 6118 break; … … 6120 6121 6121 6122 /* Line 1806 of yacc.c */ 6122 #line 7 89"parser.yy"6123 #line 790 "parser.yy" 6123 6124 { (yyval.sn) = new StatementNode(StatementNode::Continue, (yyvsp[(2) - (3)].tok)); } 6124 6125 break; … … 6127 6128 6128 6129 /* Line 1806 of yacc.c */ 6129 #line 79 3"parser.yy"6130 #line 794 "parser.yy" 6130 6131 { (yyval.sn) = new StatementNode(StatementNode::Break, 0, 0); } 6131 6132 break; … … 6134 6135 6135 6136 /* Line 1806 of yacc.c */ 6136 #line 79 7"parser.yy"6137 #line 798 "parser.yy" 6137 6138 { (yyval.sn) = new StatementNode(StatementNode::Break, (yyvsp[(2) - (3)].tok) ); } 6138 6139 break; … … 6141 6142 6142 6143 /* Line 1806 of yacc.c */ 6143 #line 799"parser.yy"6144 #line 800 "parser.yy" 6144 6145 { (yyval.sn) = new StatementNode(StatementNode::Return, (yyvsp[(2) - (3)].en), 0); } 6145 6146 break; … … 6148 6149 6149 6150 /* Line 1806 of yacc.c */ 6150 #line 80 1"parser.yy"6151 #line 802 "parser.yy" 6151 6152 { (yyval.sn) = new StatementNode(StatementNode::Throw, (yyvsp[(2) - (3)].en), 0); } 6152 6153 break; … … 6155 6156 6156 6157 /* Line 1806 of yacc.c */ 6157 #line 80 3"parser.yy"6158 #line 804 "parser.yy" 6158 6159 { (yyval.sn) = new StatementNode(StatementNode::Throw, 0, 0); } 6159 6160 break; … … 6162 6163 6163 6164 /* Line 1806 of yacc.c */ 6164 #line 80 8"parser.yy"6165 #line 809 "parser.yy" 6165 6166 { (yyval.sn) = new StatementNode(StatementNode::Try, 0,(StatementNode *)(mkList((*(yyvsp[(2) - (3)].sn),*(yyvsp[(3) - (3)].pn))))); } 6166 6167 break; … … 6169 6170 6170 6171 /* Line 1806 of yacc.c */ 6171 #line 81 0"parser.yy"6172 #line 811 "parser.yy" 6172 6173 { (yyval.sn) = new StatementNode(StatementNode::Try, 0,(StatementNode *)(mkList((*(yyvsp[(2) - (3)].sn),*(yyvsp[(3) - (3)].pn))))); } 6173 6174 break; … … 6176 6177 6177 6178 /* Line 1806 of yacc.c */ 6178 #line 81 2"parser.yy"6179 #line 813 "parser.yy" 6179 6180 { 6180 6181 (yyvsp[(3) - (4)].pn)->set_link((yyvsp[(4) - (4)].pn)); … … 6186 6187 6187 6188 /* Line 1806 of yacc.c */ 6188 #line 82 4"parser.yy"6189 #line 825 "parser.yy" 6189 6190 { (yyval.pn) = StatementNode::newCatchStmt( 0, (yyvsp[(5) - (5)].sn), true ); } 6190 6191 break; … … 6193 6194 6194 6195 /* Line 1806 of yacc.c */ 6195 #line 82 6"parser.yy"6196 #line 827 "parser.yy" 6196 6197 { (yyval.pn) = (yyvsp[(1) - (6)].pn)->set_link( StatementNode::newCatchStmt( 0, (yyvsp[(6) - (6)].sn), true ) ); } 6197 6198 break; … … 6200 6201 6201 6202 /* Line 1806 of yacc.c */ 6202 #line 83 1"parser.yy"6203 #line 832 "parser.yy" 6203 6204 { (yyval.pn) = StatementNode::newCatchStmt((yyvsp[(5) - (9)].decl), (yyvsp[(8) - (9)].sn)); } 6204 6205 break; … … 6207 6208 6208 6209 /* Line 1806 of yacc.c */ 6209 #line 83 3"parser.yy"6210 #line 834 "parser.yy" 6210 6211 { (yyval.pn) = (yyvsp[(1) - (10)].pn)->set_link( StatementNode::newCatchStmt((yyvsp[(6) - (10)].decl), (yyvsp[(9) - (10)].sn)) ); } 6211 6212 break; … … 6214 6215 6215 6216 /* Line 1806 of yacc.c */ 6216 #line 83 8"parser.yy"6217 #line 839 "parser.yy" 6217 6218 { 6218 6219 (yyval.pn) = new StatementNode(StatementNode::Finally, 0, (yyvsp[(2) - (2)].sn)); … … 6224 6225 6225 6226 /* Line 1806 of yacc.c */ 6226 #line 85 2"parser.yy"6227 #line 853 "parser.yy" 6227 6228 { 6228 6229 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6234 6235 6235 6236 /* Line 1806 of yacc.c */ 6236 #line 85 7"parser.yy"6237 #line 858 "parser.yy" 6237 6238 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 6238 6239 break; … … 6241 6242 6242 6243 /* Line 1806 of yacc.c */ 6243 #line 8 59"parser.yy"6244 #line 860 "parser.yy" 6244 6245 { 6245 6246 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6251 6252 6252 6253 /* Line 1806 of yacc.c */ 6253 #line 86 8"parser.yy"6254 #line 869 "parser.yy" 6254 6255 { (yyval.sn) = new StatementNode(StatementNode::Asm, 0, 0); } 6255 6256 break; … … 6258 6259 6259 6260 /* Line 1806 of yacc.c */ 6260 #line 87 0"parser.yy"6261 #line 871 "parser.yy" 6261 6262 { (yyval.sn) = new StatementNode(StatementNode::Asm, 0, 0); } 6262 6263 break; … … 6265 6266 6266 6267 /* Line 1806 of yacc.c */ 6267 #line 87 2"parser.yy"6268 #line 873 "parser.yy" 6268 6269 { (yyval.sn) = new StatementNode(StatementNode::Asm, 0, 0); } 6269 6270 break; … … 6272 6273 6273 6274 /* Line 1806 of yacc.c */ 6274 #line 87 4"parser.yy"6275 #line 875 "parser.yy" 6275 6276 { (yyval.sn) = new StatementNode(StatementNode::Asm, 0, 0); } 6276 6277 break; … … 6279 6280 6280 6281 /* Line 1806 of yacc.c */ 6281 #line 88 8"parser.yy"6282 #line 889 "parser.yy" 6282 6283 {} 6283 6284 break; … … 6286 6287 6287 6288 /* Line 1806 of yacc.c */ 6288 #line 89 2"parser.yy"6289 #line 893 "parser.yy" 6289 6290 {} 6290 6291 break; … … 6293 6294 6294 6295 /* Line 1806 of yacc.c */ 6295 #line 90 0"parser.yy"6296 #line 901 "parser.yy" 6296 6297 { (yyval.decl) = 0; } 6297 6298 break; … … 6300 6301 6301 6302 /* Line 1806 of yacc.c */ 6302 #line 90 7"parser.yy"6303 #line 908 "parser.yy" 6303 6304 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ); } 6304 6305 break; … … 6307 6308 6308 6309 /* Line 1806 of yacc.c */ 6309 #line 91 2"parser.yy"6310 #line 913 "parser.yy" 6310 6311 { (yyval.decl) = 0; } 6311 6312 break; … … 6314 6315 6315 6316 /* Line 1806 of yacc.c */ 6316 #line 9 19"parser.yy"6317 #line 920 "parser.yy" 6317 6318 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ); } 6318 6319 break; 6319 6320 6320 6321 case 229: 6321 6322 /* Line 1806 of yacc.c */6323 #line 933 "parser.yy"6324 {}6325 break;6326 6327 case 230:6328 6322 6329 6323 /* Line 1806 of yacc.c */ … … 6332 6326 break; 6333 6327 6328 case 230: 6329 6330 /* Line 1806 of yacc.c */ 6331 #line 935 "parser.yy" 6332 {} 6333 break; 6334 6334 6335 case 238: 6335 6336 6336 6337 /* Line 1806 of yacc.c */ 6337 #line 96 4"parser.yy"6338 #line 965 "parser.yy" 6338 6339 { 6339 6340 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6345 6346 6346 6347 /* Line 1806 of yacc.c */ 6347 #line 97 1"parser.yy"6348 #line 972 "parser.yy" 6348 6349 { 6349 6350 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6355 6356 6356 6357 /* Line 1806 of yacc.c */ 6357 #line 97 6"parser.yy"6358 #line 977 "parser.yy" 6358 6359 { 6359 6360 typedefTable.addToEnclosingScope( *(yyvsp[(5) - (6)].tok), TypedefTable::ID ); … … 6365 6366 6366 6367 /* Line 1806 of yacc.c */ 6367 #line 98 6"parser.yy"6368 #line 987 "parser.yy" 6368 6369 { 6369 6370 typedefTable.setNextIdentifier( *(yyvsp[(2) - (3)].tok) ); … … 6375 6376 6376 6377 /* Line 1806 of yacc.c */ 6377 #line 99 1"parser.yy"6378 #line 992 "parser.yy" 6378 6379 { 6379 6380 typedefTable.setNextIdentifier( *(yyvsp[(2) - (3)].tok) ); … … 6385 6386 6386 6387 /* Line 1806 of yacc.c */ 6387 #line 99 6"parser.yy"6388 #line 997 "parser.yy" 6388 6389 { 6389 6390 typedefTable.setNextIdentifier( *(yyvsp[(3) - (4)].tok) ); … … 6395 6396 6396 6397 /* Line 1806 of yacc.c */ 6397 #line 100 4"parser.yy"6398 #line 1005 "parser.yy" 6398 6399 { 6399 6400 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6405 6406 6406 6407 /* Line 1806 of yacc.c */ 6407 #line 10 09"parser.yy"6408 #line 1010 "parser.yy" 6408 6409 { 6409 6410 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6415 6416 6416 6417 /* Line 1806 of yacc.c */ 6417 #line 101 4"parser.yy"6418 #line 1015 "parser.yy" 6418 6419 { 6419 6420 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6425 6426 6426 6427 /* Line 1806 of yacc.c */ 6427 #line 10 19"parser.yy"6428 #line 1020 "parser.yy" 6428 6429 { 6429 6430 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6435 6436 6436 6437 /* Line 1806 of yacc.c */ 6437 #line 102 4"parser.yy"6438 #line 1025 "parser.yy" 6438 6439 { 6439 6440 typedefTable.addToEnclosingScope( *(yyvsp[(5) - (5)].tok), TypedefTable::ID ); … … 6445 6446 6446 6447 /* Line 1806 of yacc.c */ 6447 #line 103 2"parser.yy"6448 #line 1033 "parser.yy" 6448 6449 { 6449 6450 typedefTable.setNextIdentifier( *((yyvsp[(5) - (10)].tok)) ); … … 6455 6456 6456 6457 /* Line 1806 of yacc.c */ 6457 #line 103 7"parser.yy"6458 #line 1038 "parser.yy" 6458 6459 { 6459 6460 typedefTable.setNextIdentifier( *((yyvsp[(5) - (10)].tok)) ); … … 6465 6466 6466 6467 /* Line 1806 of yacc.c */ 6467 #line 105 2"parser.yy"6468 #line 1053 "parser.yy" 6468 6469 { 6469 6470 (yyval.decl) = DeclarationNode::newFunction( (yyvsp[(2) - (7)].tok), (yyvsp[(1) - (7)].decl), (yyvsp[(5) - (7)].decl), 0, true ); … … 6474 6475 6475 6476 /* Line 1806 of yacc.c */ 6476 #line 105 6"parser.yy"6477 #line 1057 "parser.yy" 6477 6478 { 6478 6479 (yyval.decl) = DeclarationNode::newFunction( (yyvsp[(2) - (7)].tok), (yyvsp[(1) - (7)].decl), (yyvsp[(5) - (7)].decl), 0, true ); … … 6483 6484 6484 6485 /* Line 1806 of yacc.c */ 6485 #line 106 3"parser.yy"6486 #line 1064 "parser.yy" 6486 6487 { (yyval.decl) = DeclarationNode::newTuple( (yyvsp[(3) - (5)].decl) ); } 6487 6488 break; … … 6490 6491 6491 6492 /* Line 1806 of yacc.c */ 6492 #line 106 7"parser.yy"6493 #line 1068 "parser.yy" 6493 6494 { (yyval.decl) = DeclarationNode::newTuple( (yyvsp[(3) - (9)].decl)->appendList( (yyvsp[(7) - (9)].decl) ) ); } 6494 6495 break; … … 6497 6498 6498 6499 /* Line 1806 of yacc.c */ 6499 #line 107 2"parser.yy"6500 #line 1073 "parser.yy" 6500 6501 { 6501 6502 typedefTable.addToEnclosingScope( TypedefTable::TD); … … 6507 6508 6508 6509 /* Line 1806 of yacc.c */ 6509 #line 107 7"parser.yy"6510 #line 1078 "parser.yy" 6510 6511 { 6511 6512 typedefTable.addToEnclosingScope( TypedefTable::TD); … … 6517 6518 6518 6519 /* Line 1806 of yacc.c */ 6519 #line 108 2"parser.yy"6520 #line 1083 "parser.yy" 6520 6521 { 6521 6522 typedefTable.addToEnclosingScope( *(yyvsp[(5) - (5)].tok), TypedefTable::TD); … … 6527 6528 6528 6529 /* Line 1806 of yacc.c */ 6529 #line 109 4"parser.yy"6530 #line 1095 "parser.yy" 6530 6531 { 6531 6532 typedefTable.addToEnclosingScope( TypedefTable::TD); … … 6537 6538 6538 6539 /* Line 1806 of yacc.c */ 6539 #line 1 099"parser.yy"6540 #line 1100 "parser.yy" 6540 6541 { 6541 6542 typedefTable.addToEnclosingScope( TypedefTable::TD); … … 6547 6548 6548 6549 /* Line 1806 of yacc.c */ 6549 #line 110 4"parser.yy"6550 #line 1105 "parser.yy" 6550 6551 { 6551 6552 typedefTable.addToEnclosingScope( TypedefTable::TD); … … 6557 6558 6558 6559 /* Line 1806 of yacc.c */ 6559 #line 11 09"parser.yy"6560 #line 1110 "parser.yy" 6560 6561 { 6561 6562 typedefTable.addToEnclosingScope( TypedefTable::TD); … … 6567 6568 6568 6569 /* Line 1806 of yacc.c */ 6569 #line 111 4"parser.yy"6570 #line 1115 "parser.yy" 6570 6571 { 6571 6572 typedefTable.addToEnclosingScope( TypedefTable::TD); … … 6577 6578 6578 6579 /* Line 1806 of yacc.c */ 6579 #line 112 2"parser.yy"6580 #line 1123 "parser.yy" 6580 6581 { 6581 6582 typedefTable.addToEnclosingScope(*((yyvsp[(2) - (4)].tok)), TypedefTable::TD); … … 6587 6588 6588 6589 /* Line 1806 of yacc.c */ 6589 #line 112 7"parser.yy"6590 #line 1128 "parser.yy" 6590 6591 { 6591 6592 typedefTable.addToEnclosingScope(*((yyvsp[(5) - (7)].tok)), TypedefTable::TD); … … 6597 6598 6598 6599 /* Line 1806 of yacc.c */ 6599 #line 114 4"parser.yy"6600 #line 1145 "parser.yy" 6600 6601 { 6601 6602 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6607 6608 6608 6609 /* Line 1806 of yacc.c */ 6609 #line 11 49"parser.yy"6610 #line 1150 "parser.yy" 6610 6611 { 6611 6612 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 6617 6618 6618 6619 /* Line 1806 of yacc.c */ 6619 #line 117 1"parser.yy"6620 #line 1172 "parser.yy" 6620 6621 { (yyval.decl) = 0; } 6621 6622 break; … … 6624 6625 6625 6626 /* Line 1806 of yacc.c */ 6626 #line 118 4"parser.yy"6627 #line 1185 "parser.yy" 6627 6628 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6628 6629 break; … … 6631 6632 6632 6633 /* Line 1806 of yacc.c */ 6633 #line 119 0"parser.yy"6634 #line 1191 "parser.yy" 6634 6635 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Attribute ); } 6635 6636 break; … … 6638 6639 6639 6640 /* Line 1806 of yacc.c */ 6640 #line 119 5"parser.yy"6641 #line 1196 "parser.yy" 6641 6642 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Const ); } 6642 6643 break; … … 6645 6646 6646 6647 /* Line 1806 of yacc.c */ 6647 #line 119 7"parser.yy"6648 #line 1198 "parser.yy" 6648 6649 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Restrict ); } 6649 6650 break; … … 6652 6653 6653 6654 /* Line 1806 of yacc.c */ 6654 #line 1 199"parser.yy"6655 #line 1200 "parser.yy" 6655 6656 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Volatile ); } 6656 6657 break; … … 6659 6660 6660 6661 /* Line 1806 of yacc.c */ 6661 #line 120 1"parser.yy"6662 #line 1202 "parser.yy" 6662 6663 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Lvalue ); } 6663 6664 break; … … 6666 6667 6667 6668 /* Line 1806 of yacc.c */ 6668 #line 120 3"parser.yy"6669 #line 1204 "parser.yy" 6669 6670 { (yyval.decl) = DeclarationNode::newQualifier( DeclarationNode::Atomic ); } 6670 6671 break; … … 6673 6674 6674 6675 /* Line 1806 of yacc.c */ 6675 #line 120 5"parser.yy"6676 #line 1206 "parser.yy" 6676 6677 { 6677 6678 typedefTable.enterScope(); … … 6682 6683 6683 6684 /* Line 1806 of yacc.c */ 6684 #line 12 09"parser.yy"6685 #line 1210 "parser.yy" 6685 6686 { 6686 6687 typedefTable.leaveScope(); … … 6692 6693 6693 6694 /* Line 1806 of yacc.c */ 6694 #line 121 8"parser.yy"6695 #line 1219 "parser.yy" 6695 6696 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6696 6697 break; … … 6699 6700 6700 6701 /* Line 1806 of yacc.c */ 6701 #line 122 0"parser.yy"6702 #line 1221 "parser.yy" 6702 6703 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6703 6704 break; … … 6706 6707 6707 6708 /* Line 1806 of yacc.c */ 6708 #line 123 1"parser.yy"6709 #line 1232 "parser.yy" 6709 6710 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6710 6711 break; … … 6713 6714 6714 6715 /* Line 1806 of yacc.c */ 6715 #line 124 0"parser.yy"6716 #line 1241 "parser.yy" 6716 6717 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Extern ); } 6717 6718 break; … … 6720 6721 6721 6722 /* Line 1806 of yacc.c */ 6722 #line 124 2"parser.yy"6723 #line 1243 "parser.yy" 6723 6724 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Static ); } 6724 6725 break; … … 6727 6728 6728 6729 /* Line 1806 of yacc.c */ 6729 #line 124 4"parser.yy"6730 #line 1245 "parser.yy" 6730 6731 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Auto ); } 6731 6732 break; … … 6734 6735 6735 6736 /* Line 1806 of yacc.c */ 6736 #line 124 6"parser.yy"6737 #line 1247 "parser.yy" 6737 6738 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Register ); } 6738 6739 break; … … 6741 6742 6742 6743 /* Line 1806 of yacc.c */ 6743 #line 12 49"parser.yy"6744 #line 1250 "parser.yy" 6744 6745 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Inline ); } 6745 6746 break; … … 6748 6749 6749 6750 /* Line 1806 of yacc.c */ 6750 #line 125 1"parser.yy"6751 #line 1252 "parser.yy" 6751 6752 { (yyval.decl) = DeclarationNode::newStorageClass( DeclarationNode::Fortran ); } 6752 6753 break; … … 6755 6756 6756 6757 /* Line 1806 of yacc.c */ 6757 #line 125 6"parser.yy"6758 #line 1257 "parser.yy" 6758 6759 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Char ); } 6759 6760 break; … … 6762 6763 6763 6764 /* Line 1806 of yacc.c */ 6764 #line 125 8"parser.yy"6765 #line 1259 "parser.yy" 6765 6766 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Double ); } 6766 6767 break; … … 6769 6770 6770 6771 /* Line 1806 of yacc.c */ 6771 #line 126 0"parser.yy"6772 #line 1261 "parser.yy" 6772 6773 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Float ); } 6773 6774 break; … … 6776 6777 6777 6778 /* Line 1806 of yacc.c */ 6778 #line 126 2"parser.yy"6779 #line 1263 "parser.yy" 6779 6780 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Int ); } 6780 6781 break; … … 6783 6784 6784 6785 /* Line 1806 of yacc.c */ 6785 #line 126 4"parser.yy"6786 #line 1265 "parser.yy" 6786 6787 { (yyval.decl) = DeclarationNode::newModifier( DeclarationNode::Long ); } 6787 6788 break; … … 6790 6791 6791 6792 /* Line 1806 of yacc.c */ 6792 #line 126 6"parser.yy"6793 #line 1267 "parser.yy" 6793 6794 { (yyval.decl) = DeclarationNode::newModifier( DeclarationNode::Short ); } 6794 6795 break; … … 6797 6798 6798 6799 /* Line 1806 of yacc.c */ 6799 #line 126 8"parser.yy"6800 #line 1269 "parser.yy" 6800 6801 { (yyval.decl) = DeclarationNode::newModifier( DeclarationNode::Signed ); } 6801 6802 break; … … 6804 6805 6805 6806 /* Line 1806 of yacc.c */ 6806 #line 127 0"parser.yy"6807 #line 1271 "parser.yy" 6807 6808 { (yyval.decl) = DeclarationNode::newModifier( DeclarationNode::Unsigned ); } 6808 6809 break; … … 6811 6812 6812 6813 /* Line 1806 of yacc.c */ 6813 #line 127 2"parser.yy"6814 #line 1273 "parser.yy" 6814 6815 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Void ); } 6815 6816 break; … … 6818 6819 6819 6820 /* Line 1806 of yacc.c */ 6820 #line 127 4"parser.yy"6821 #line 1275 "parser.yy" 6821 6822 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Bool ); } 6822 6823 break; … … 6825 6826 6826 6827 /* Line 1806 of yacc.c */ 6827 #line 127 6"parser.yy"6828 #line 1277 "parser.yy" 6828 6829 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Complex ); } 6829 6830 break; … … 6832 6833 6833 6834 /* Line 1806 of yacc.c */ 6834 #line 127 8"parser.yy"6835 #line 1279 "parser.yy" 6835 6836 { (yyval.decl) = DeclarationNode::newBasicType( DeclarationNode::Imaginary ); } 6836 6837 break; … … 6839 6840 6840 6841 /* Line 1806 of yacc.c */ 6841 #line 128 5"parser.yy"6842 #line 1286 "parser.yy" 6842 6843 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6843 6844 break; … … 6846 6847 6847 6848 /* Line 1806 of yacc.c */ 6848 #line 128 7"parser.yy"6849 #line 1288 "parser.yy" 6849 6850 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6850 6851 break; … … 6853 6854 6854 6855 /* Line 1806 of yacc.c */ 6855 #line 12 89"parser.yy"6856 #line 1290 "parser.yy" 6856 6857 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6857 6858 break; … … 6860 6861 6861 6862 /* Line 1806 of yacc.c */ 6862 #line 129 1"parser.yy"6863 #line 1292 "parser.yy" 6863 6864 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addType( (yyvsp[(1) - (3)].decl) ); } 6864 6865 break; … … 6867 6868 6868 6869 /* Line 1806 of yacc.c */ 6869 #line 129 7"parser.yy"6870 #line 1298 "parser.yy" 6870 6871 { (yyval.decl) = (yyvsp[(2) - (3)].decl)->addQualifiers( (yyvsp[(1) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6871 6872 break; … … 6874 6875 6875 6876 /* Line 1806 of yacc.c */ 6876 #line 130 4"parser.yy"6877 #line 1305 "parser.yy" 6877 6878 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6878 6879 break; … … 6881 6882 6882 6883 /* Line 1806 of yacc.c */ 6883 #line 130 6"parser.yy"6884 #line 1307 "parser.yy" 6884 6885 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6885 6886 break; … … 6888 6889 6889 6890 /* Line 1806 of yacc.c */ 6890 #line 130 8"parser.yy"6891 #line 1309 "parser.yy" 6891 6892 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addType( (yyvsp[(2) - (2)].decl) ); } 6892 6893 break; … … 6895 6896 6896 6897 /* Line 1806 of yacc.c */ 6897 #line 131 3"parser.yy"6898 #line 1314 "parser.yy" 6898 6899 { (yyval.decl) = (yyvsp[(3) - (4)].decl); } 6899 6900 break; … … 6902 6903 6903 6904 /* Line 1806 of yacc.c */ 6904 #line 131 5"parser.yy"6905 #line 1316 "parser.yy" 6905 6906 { (yyval.decl) = DeclarationNode::newTypeof( (yyvsp[(3) - (4)].en) ); } 6906 6907 break; … … 6909 6910 6910 6911 /* Line 1806 of yacc.c */ 6911 #line 131 7"parser.yy"6912 #line 1318 "parser.yy" 6912 6913 { (yyval.decl) = DeclarationNode::newAttr( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].decl) ); } 6913 6914 break; … … 6916 6917 6917 6918 /* Line 1806 of yacc.c */ 6918 #line 13 19"parser.yy"6919 #line 1320 "parser.yy" 6919 6920 { (yyval.decl) = DeclarationNode::newAttr( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].en) ); } 6920 6921 break; … … 6923 6924 6924 6925 /* Line 1806 of yacc.c */ 6925 #line 132 5"parser.yy"6926 #line 1326 "parser.yy" 6926 6927 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6927 6928 break; … … 6930 6931 6931 6932 /* Line 1806 of yacc.c */ 6932 #line 132 7"parser.yy"6933 #line 1328 "parser.yy" 6933 6934 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6934 6935 break; … … 6937 6938 6938 6939 /* Line 1806 of yacc.c */ 6939 #line 13 29"parser.yy"6940 #line 1330 "parser.yy" 6940 6941 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6941 6942 break; … … 6944 6945 6945 6946 /* Line 1806 of yacc.c */ 6946 #line 133 5"parser.yy"6947 #line 1336 "parser.yy" 6947 6948 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6948 6949 break; … … 6951 6952 6952 6953 /* Line 1806 of yacc.c */ 6953 #line 133 7"parser.yy"6954 #line 1338 "parser.yy" 6954 6955 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6955 6956 break; … … 6958 6959 6959 6960 /* Line 1806 of yacc.c */ 6960 #line 134 3"parser.yy"6961 #line 1344 "parser.yy" 6961 6962 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6962 6963 break; … … 6965 6966 6966 6967 /* Line 1806 of yacc.c */ 6967 #line 134 5"parser.yy"6968 #line 1346 "parser.yy" 6968 6969 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6969 6970 break; … … 6972 6973 6973 6974 /* Line 1806 of yacc.c */ 6974 #line 134 7"parser.yy"6975 #line 1348 "parser.yy" 6975 6976 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 6976 6977 break; … … 6979 6980 6980 6981 /* Line 1806 of yacc.c */ 6981 #line 135 2"parser.yy"6982 #line 1353 "parser.yy" 6982 6983 { (yyval.decl) = DeclarationNode::newFromTypedef( (yyvsp[(1) - (1)].tok) ); } 6983 6984 break; … … 6986 6987 6987 6988 /* Line 1806 of yacc.c */ 6988 #line 135 4"parser.yy"6989 #line 1355 "parser.yy" 6989 6990 { (yyval.decl) = DeclarationNode::newFromTypedef( (yyvsp[(2) - (2)].tok) )->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 6990 6991 break; … … 6993 6994 6994 6995 /* Line 1806 of yacc.c */ 6995 #line 135 6"parser.yy"6996 #line 1357 "parser.yy" 6996 6997 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 6997 6998 break; … … 7000 7001 7001 7002 /* Line 1806 of yacc.c */ 7002 #line 136 6"parser.yy"7003 #line 1367 "parser.yy" 7003 7004 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (4)].aggKey), 0, 0, 0, (yyvsp[(3) - (4)].decl) ); } 7004 7005 break; … … 7007 7008 7008 7009 /* Line 1806 of yacc.c */ 7009 #line 136 8"parser.yy"7010 #line 1369 "parser.yy" 7010 7011 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (2)].aggKey), (yyvsp[(2) - (2)].tok), 0, 0, 0 ); } 7011 7012 break; … … 7014 7015 7015 7016 /* Line 1806 of yacc.c */ 7016 #line 137 0"parser.yy"7017 #line 1371 "parser.yy" 7017 7018 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (5)].aggKey), (yyvsp[(2) - (5)].tok), 0, 0, (yyvsp[(4) - (5)].decl) ); } 7018 7019 break; … … 7021 7022 7022 7023 /* Line 1806 of yacc.c */ 7023 #line 137 2"parser.yy"7024 #line 1373 "parser.yy" 7024 7025 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (9)].aggKey), 0, (yyvsp[(4) - (9)].decl), 0, (yyvsp[(8) - (9)].decl) ); } 7025 7026 break; … … 7028 7029 7029 7030 /* Line 1806 of yacc.c */ 7030 #line 137 4"parser.yy"7031 #line 1375 "parser.yy" 7031 7032 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (7)].aggKey), (yyvsp[(7) - (7)].tok), (yyvsp[(4) - (7)].decl), 0, 0 ); } 7032 7033 break; … … 7035 7036 7036 7037 /* Line 1806 of yacc.c */ 7037 #line 137 6"parser.yy"7038 #line 1377 "parser.yy" 7038 7039 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (10)].aggKey), (yyvsp[(7) - (10)].tok), (yyvsp[(4) - (10)].decl), 0, (yyvsp[(9) - (10)].decl) ); } 7039 7040 break; … … 7042 7043 7043 7044 /* Line 1806 of yacc.c */ 7044 #line 137 8"parser.yy"7045 #line 1379 "parser.yy" 7045 7046 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (12)].aggKey), 0, (yyvsp[(4) - (12)].decl), (yyvsp[(8) - (12)].en), (yyvsp[(11) - (12)].decl) ); } 7046 7047 break; … … 7049 7050 7050 7051 /* Line 1806 of yacc.c */ 7051 #line 138 1"parser.yy"7052 #line 1382 "parser.yy" 7052 7053 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (7)].aggKey), (yyvsp[(7) - (7)].tok), 0, (yyvsp[(4) - (7)].en), 0 ); } 7053 7054 break; … … 7056 7057 7057 7058 /* Line 1806 of yacc.c */ 7058 #line 138 3"parser.yy"7059 #line 1384 "parser.yy" 7059 7060 { (yyval.decl) = DeclarationNode::newAggregate( (yyvsp[(1) - (13)].aggKey), (yyvsp[(10) - (13)].tok), (yyvsp[(4) - (13)].decl), (yyvsp[(8) - (13)].en), (yyvsp[(12) - (13)].decl) ); } 7060 7061 break; … … 7063 7064 7064 7065 /* Line 1806 of yacc.c */ 7065 #line 138 8"parser.yy"7066 #line 1389 "parser.yy" 7066 7067 { (yyval.aggKey) = DeclarationNode::Struct; } 7067 7068 break; … … 7070 7071 7071 7072 /* Line 1806 of yacc.c */ 7072 #line 139 0"parser.yy"7073 #line 1391 "parser.yy" 7073 7074 { (yyval.aggKey) = DeclarationNode::Union; } 7074 7075 break; … … 7077 7078 7078 7079 /* Line 1806 of yacc.c */ 7079 #line 139 5"parser.yy"7080 #line 1396 "parser.yy" 7080 7081 { (yyval.decl) = (yyvsp[(1) - (1)].decl); } 7081 7082 break; … … 7084 7085 7085 7086 /* Line 1806 of yacc.c */ 7086 #line 139 7"parser.yy"7087 #line 1398 "parser.yy" 7087 7088 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->appendList( (yyvsp[(2) - (2)].decl) ); } 7088 7089 break; … … 7091 7092 7092 7093 /* Line 1806 of yacc.c */ 7093 #line 140 3"parser.yy"7094 #line 1404 "parser.yy" 7094 7095 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 7095 7096 break; … … 7098 7099 7099 7100 /* Line 1806 of yacc.c */ 7100 #line 140 6"parser.yy"7101 #line 1407 "parser.yy" 7101 7102 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 7102 7103 break; … … 7105 7106 7106 7107 /* Line 1806 of yacc.c */ 7107 #line 141 2"parser.yy"7108 #line 1413 "parser.yy" 7108 7109 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addName( (yyvsp[(2) - (2)].tok) ); } 7109 7110 break; … … 7112 7113 7113 7114 /* Line 1806 of yacc.c */ 7114 #line 141 4"parser.yy"7115 #line 1415 "parser.yy" 7115 7116 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(1) - (3)].decl)->cloneType( (yyvsp[(3) - (3)].tok) ) ); } 7116 7117 break; … … 7119 7120 7120 7121 /* Line 1806 of yacc.c */ 7121 #line 141 6"parser.yy"7122 #line 1417 "parser.yy" 7122 7123 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->appendList( (yyvsp[(1) - (2)].decl)->cloneType( 0 ) ); } 7123 7124 break; … … 7126 7127 7127 7128 /* Line 1806 of yacc.c */ 7128 #line 142 1"parser.yy"7129 #line 1422 "parser.yy" 7129 7130 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 7130 7131 break; … … 7133 7134 7134 7135 /* Line 1806 of yacc.c */ 7135 #line 142 3"parser.yy"7136 #line 1424 "parser.yy" 7136 7137 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->appendList( (yyvsp[(1) - (4)].decl)->cloneBaseType( (yyvsp[(4) - (4)].decl) ) ); } 7137 7138 break; … … 7140 7141 7141 7142 /* Line 1806 of yacc.c */ 7142 #line 142 8"parser.yy"7143 #line 1429 "parser.yy" 7143 7144 { (yyval.decl) = DeclarationNode::newName( 0 ); /* XXX */ } 7144 7145 break; … … 7147 7148 7148 7149 /* Line 1806 of yacc.c */ 7149 #line 143 0"parser.yy"7150 #line 1431 "parser.yy" 7150 7151 { (yyval.decl) = DeclarationNode::newBitfield( (yyvsp[(1) - (1)].en) ); } 7151 7152 break; … … 7154 7155 7155 7156 /* Line 1806 of yacc.c */ 7156 #line 143 3"parser.yy"7157 #line 1434 "parser.yy" 7157 7158 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addBitfield( (yyvsp[(2) - (2)].en) ); } 7158 7159 break; … … 7161 7162 7162 7163 /* Line 1806 of yacc.c */ 7163 #line 143 6"parser.yy"7164 #line 1437 "parser.yy" 7164 7165 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addBitfield( (yyvsp[(2) - (2)].en) ); } 7165 7166 break; … … 7168 7169 7169 7170 /* Line 1806 of yacc.c */ 7170 #line 144 2"parser.yy"7171 #line 1443 "parser.yy" 7171 7172 { (yyval.en) = 0; } 7172 7173 break; … … 7175 7176 7176 7177 /* Line 1806 of yacc.c */ 7177 #line 144 4"parser.yy"7178 #line 1445 "parser.yy" 7178 7179 { (yyval.en) = (yyvsp[(1) - (1)].en); } 7179 7180 break; … … 7182 7183 7183 7184 /* Line 1806 of yacc.c */ 7184 #line 14 49"parser.yy"7185 #line 1450 "parser.yy" 7185 7186 { (yyval.en) = (yyvsp[(2) - (2)].en); } 7186 7187 break; … … 7189 7190 7190 7191 /* Line 1806 of yacc.c */ 7191 #line 145 8"parser.yy"7192 #line 1459 "parser.yy" 7192 7193 { (yyval.decl) = DeclarationNode::newEnum( 0, (yyvsp[(3) - (5)].decl) ); } 7193 7194 break; … … 7196 7197 7197 7198 /* Line 1806 of yacc.c */ 7198 #line 146 0"parser.yy"7199 #line 1461 "parser.yy" 7199 7200 { (yyval.decl) = DeclarationNode::newEnum( (yyvsp[(2) - (6)].tok), (yyvsp[(4) - (6)].decl) ); } 7200 7201 break; … … 7203 7204 7204 7205 /* Line 1806 of yacc.c */ 7205 #line 146 2"parser.yy"7206 #line 1463 "parser.yy" 7206 7207 { (yyval.decl) = DeclarationNode::newEnum( (yyvsp[(2) - (2)].tok), 0 ); } 7207 7208 break; … … 7210 7211 7211 7212 /* Line 1806 of yacc.c */ 7212 #line 146 7"parser.yy"7213 #line 1468 "parser.yy" 7213 7214 { (yyval.decl) = DeclarationNode::newEnumConstant( (yyvsp[(1) - (2)].tok), (yyvsp[(2) - (2)].en) ); } 7214 7215 break; … … 7217 7218 7218 7219 /* Line 1806 of yacc.c */ 7219 #line 14 69"parser.yy"7220 #line 1470 "parser.yy" 7220 7221 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->appendList( DeclarationNode::newEnumConstant( (yyvsp[(3) - (4)].tok), (yyvsp[(4) - (4)].en) ) ); } 7221 7222 break; … … 7224 7225 7225 7226 /* Line 1806 of yacc.c */ 7226 #line 147 4"parser.yy"7227 #line 1475 "parser.yy" 7227 7228 { (yyval.en) = 0; } 7228 7229 break; … … 7231 7232 7232 7233 /* Line 1806 of yacc.c */ 7233 #line 147 6"parser.yy"7234 #line 1477 "parser.yy" 7234 7235 { (yyval.en) = (yyvsp[(2) - (2)].en); } 7235 7236 break; … … 7238 7239 7239 7240 /* Line 1806 of yacc.c */ 7240 #line 148 3"parser.yy"7241 #line 1484 "parser.yy" 7241 7242 { (yyval.decl) = 0; } 7242 7243 break; … … 7245 7246 7246 7247 /* Line 1806 of yacc.c */ 7247 #line 149 1"parser.yy"7248 #line 1492 "parser.yy" 7248 7249 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7249 7250 break; … … 7252 7253 7253 7254 /* Line 1806 of yacc.c */ 7254 #line 149 3"parser.yy"7255 #line 1494 "parser.yy" 7255 7256 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); } 7256 7257 break; … … 7259 7260 7260 7261 /* Line 1806 of yacc.c */ 7261 #line 149 5"parser.yy"7262 #line 1496 "parser.yy" 7262 7263 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); } 7263 7264 break; … … 7266 7267 7267 7268 /* Line 1806 of yacc.c */ 7268 #line 150 4"parser.yy"7269 #line 1505 "parser.yy" 7269 7270 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7270 7271 break; … … 7273 7274 7274 7275 /* Line 1806 of yacc.c */ 7275 #line 150 6"parser.yy"7276 #line 1507 "parser.yy" 7276 7277 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7277 7278 break; … … 7280 7281 7281 7282 /* Line 1806 of yacc.c */ 7282 #line 150 8"parser.yy"7283 #line 1509 "parser.yy" 7283 7284 { (yyval.decl) = (yyvsp[(1) - (9)].decl)->appendList( (yyvsp[(5) - (9)].decl) )->appendList( (yyvsp[(9) - (9)].decl) ); } 7284 7285 break; … … 7287 7288 7288 7289 /* Line 1806 of yacc.c */ 7289 #line 151 4"parser.yy"7290 #line 1515 "parser.yy" 7290 7291 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7291 7292 break; … … 7294 7295 7295 7296 /* Line 1806 of yacc.c */ 7296 #line 15 19"parser.yy"7297 #line 1520 "parser.yy" 7297 7298 { (yyval.decl) = 0; } 7298 7299 break; … … 7301 7302 7302 7303 /* Line 1806 of yacc.c */ 7303 #line 152 6"parser.yy"7304 #line 1527 "parser.yy" 7304 7305 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->addVarArgs(); } 7305 7306 break; … … 7308 7309 7309 7310 /* Line 1806 of yacc.c */ 7310 #line 153 3"parser.yy"7311 #line 1534 "parser.yy" 7311 7312 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7312 7313 break; … … 7315 7316 7316 7317 /* Line 1806 of yacc.c */ 7317 #line 153 5"parser.yy"7318 #line 1536 "parser.yy" 7318 7319 { (yyval.decl) = (yyvsp[(1) - (5)].decl)->appendList( (yyvsp[(5) - (5)].decl) ); } 7319 7320 break; … … 7322 7323 7323 7324 /* Line 1806 of yacc.c */ 7324 #line 154 5"parser.yy"7325 #line 1546 "parser.yy" 7325 7326 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addName( (yyvsp[(2) - (3)].tok) ); } 7326 7327 break; … … 7329 7330 7330 7331 /* Line 1806 of yacc.c */ 7331 #line 154 8"parser.yy"7332 #line 1549 "parser.yy" 7332 7333 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addName( (yyvsp[(2) - (3)].tok) ); } 7333 7334 break; … … 7336 7337 7337 7338 /* Line 1806 of yacc.c */ 7338 #line 155 0"parser.yy"7339 #line 1551 "parser.yy" 7339 7340 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addName( (yyvsp[(3) - (4)].tok) )->addQualifiers( (yyvsp[(1) - (4)].decl) ); } 7340 7341 break; … … 7343 7344 7344 7345 /* Line 1806 of yacc.c */ 7345 #line 156 0"parser.yy"7346 #line 1561 "parser.yy" 7346 7347 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 7347 7348 break; … … 7350 7351 7351 7352 /* Line 1806 of yacc.c */ 7352 #line 156 6"parser.yy"7353 #line 1567 "parser.yy" 7353 7354 { 7354 7355 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7360 7361 7361 7362 /* Line 1806 of yacc.c */ 7362 #line 157 1"parser.yy"7363 #line 1572 "parser.yy" 7363 7364 { 7364 7365 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7370 7371 7371 7372 /* Line 1806 of yacc.c */ 7372 #line 158 0"parser.yy"7373 #line 1581 "parser.yy" 7373 7374 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 7374 7375 break; … … 7377 7378 7378 7379 /* Line 1806 of yacc.c */ 7379 #line 15 89"parser.yy"7380 #line 1590 "parser.yy" 7380 7381 { (yyval.decl) = DeclarationNode::newName( (yyvsp[(1) - (1)].tok) ); } 7381 7382 break; … … 7384 7385 7385 7386 /* Line 1806 of yacc.c */ 7386 #line 159 1"parser.yy"7387 #line 1592 "parser.yy" 7387 7388 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( DeclarationNode::newName( (yyvsp[(3) - (3)].tok) ) ); } 7388 7389 break; … … 7391 7392 7392 7393 /* Line 1806 of yacc.c */ 7393 #line 161 6"parser.yy"7394 #line 1617 "parser.yy" 7394 7395 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 7395 7396 break; … … 7398 7399 7399 7400 /* Line 1806 of yacc.c */ 7400 #line 162 4"parser.yy"7401 #line 1625 "parser.yy" 7401 7402 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addType( (yyvsp[(1) - (2)].decl) ); } 7402 7403 break; … … 7405 7406 7406 7407 /* Line 1806 of yacc.c */ 7407 #line 16 29"parser.yy"7408 #line 1630 "parser.yy" 7408 7409 { (yyval.in) = 0; } 7409 7410 break; … … 7412 7413 7413 7414 /* Line 1806 of yacc.c */ 7414 #line 163 0"parser.yy"7415 #line 1631 "parser.yy" 7415 7416 { (yyval.in) = (yyvsp[(2) - (2)].in); } 7416 7417 break; … … 7419 7420 7420 7421 /* Line 1806 of yacc.c */ 7421 #line 163 4"parser.yy"7422 #line 1635 "parser.yy" 7422 7423 { (yyval.in) = new InitializerNode((yyvsp[(1) - (1)].en)); } 7423 7424 break; … … 7426 7427 7427 7428 /* Line 1806 of yacc.c */ 7428 #line 163 5"parser.yy"7429 #line 1636 "parser.yy" 7429 7430 { (yyval.in) = new InitializerNode((yyvsp[(2) - (4)].in), true); } 7430 7431 break; … … 7433 7434 7434 7435 /* Line 1806 of yacc.c */ 7435 #line 164 0"parser.yy"7436 #line 1641 "parser.yy" 7436 7437 { (yyval.in) = (yyvsp[(2) - (2)].in)->set_designators( (yyvsp[(1) - (2)].en) ); } 7437 7438 break; … … 7440 7441 7441 7442 /* Line 1806 of yacc.c */ 7442 #line 164 1"parser.yy"7443 #line 1642 "parser.yy" 7443 7444 { (yyval.in) = (InitializerNode *)( (yyvsp[(1) - (3)].in)->set_link((yyvsp[(3) - (3)].in)) ); } 7444 7445 break; … … 7447 7448 7448 7449 /* Line 1806 of yacc.c */ 7449 #line 164 3"parser.yy"7450 #line 1644 "parser.yy" 7450 7451 { (yyval.in) = (InitializerNode *)( (yyvsp[(1) - (4)].in)->set_link( (yyvsp[(4) - (4)].in)->set_designators((yyvsp[(3) - (4)].en)) ) ); } 7451 7452 break; … … 7454 7455 7455 7456 /* Line 1806 of yacc.c */ 7456 #line 16 59"parser.yy"7457 #line 1660 "parser.yy" 7457 7458 { (yyval.en) = new VarRefNode( (yyvsp[(1) - (2)].tok) ); } 7458 7459 break; … … 7461 7462 7462 7463 /* Line 1806 of yacc.c */ 7463 #line 166 4"parser.yy"7464 #line 1665 "parser.yy" 7464 7465 { (yyval.en) = (ExpressionNode *)((yyvsp[(1) - (2)].en)->set_link( (yyvsp[(2) - (2)].en) )); } 7465 7466 break; … … 7468 7469 7469 7470 /* Line 1806 of yacc.c */ 7470 #line 16 69"parser.yy"7471 #line 1670 "parser.yy" 7471 7472 { (yyval.en) = new VarRefNode( (yyvsp[(2) - (2)].tok) ); } 7472 7473 break; … … 7475 7476 7476 7477 /* Line 1806 of yacc.c */ 7477 #line 167 3"parser.yy"7478 #line 1674 "parser.yy" 7478 7479 { (yyval.en) = (yyvsp[(3) - (5)].en); } 7479 7480 break; … … 7482 7483 7483 7484 /* Line 1806 of yacc.c */ 7484 #line 167 5"parser.yy"7485 #line 1676 "parser.yy" 7485 7486 { (yyval.en) = (yyvsp[(3) - (5)].en); } 7486 7487 break; … … 7489 7490 7490 7491 /* Line 1806 of yacc.c */ 7491 #line 167 7"parser.yy"7492 #line 1678 "parser.yy" 7492 7493 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Range), (yyvsp[(3) - (7)].en), (yyvsp[(5) - (7)].en)); } 7493 7494 break; … … 7496 7497 7497 7498 /* Line 1806 of yacc.c */ 7498 #line 16 79"parser.yy"7499 #line 1680 "parser.yy" 7499 7500 { (yyval.en) = (yyvsp[(4) - (6)].en); } 7500 7501 break; … … 7503 7504 7504 7505 /* Line 1806 of yacc.c */ 7505 #line 170 4"parser.yy"7506 #line 1705 "parser.yy" 7506 7507 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 7507 7508 break; … … 7510 7511 7511 7512 /* Line 1806 of yacc.c */ 7512 #line 170 6"parser.yy"7513 #line 1707 "parser.yy" 7513 7514 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 7514 7515 break; … … 7517 7518 7518 7519 /* Line 1806 of yacc.c */ 7519 #line 170 8"parser.yy"7520 #line 1709 "parser.yy" 7520 7521 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->addQualifiers( (yyvsp[(2) - (3)].decl) )->addQualifiers( (yyvsp[(3) - (3)].decl) ); } 7521 7522 break; … … 7524 7525 7525 7526 /* Line 1806 of yacc.c */ 7526 #line 171 3"parser.yy"7527 #line 1714 "parser.yy" 7527 7528 { (yyval.decl) = DeclarationNode::newFromTypeGen( (yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].en) ); } 7528 7529 break; … … 7531 7532 7532 7533 /* Line 1806 of yacc.c */ 7533 #line 171 5"parser.yy"7534 #line 1716 "parser.yy" 7534 7535 { (yyval.decl) = DeclarationNode::newFromTypeGen( (yyvsp[(2) - (5)].tok), (yyvsp[(4) - (5)].en) )->addQualifiers( (yyvsp[(1) - (5)].decl) ); } 7535 7536 break; … … 7538 7539 7539 7540 /* Line 1806 of yacc.c */ 7540 #line 171 7"parser.yy"7541 #line 1718 "parser.yy" 7541 7542 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addQualifiers( (yyvsp[(2) - (2)].decl) ); } 7542 7543 break; … … 7545 7546 7546 7547 /* Line 1806 of yacc.c */ 7547 #line 172 3"parser.yy"7548 #line 1724 "parser.yy" 7548 7549 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->appendList( (yyvsp[(3) - (4)].decl) ); } 7549 7550 break; … … 7552 7553 7553 7554 /* Line 1806 of yacc.c */ 7554 #line 172 8"parser.yy"7555 #line 1729 "parser.yy" 7555 7556 { typedefTable.addToEnclosingScope(*((yyvsp[(2) - (2)].tok)), TypedefTable::TD); } 7556 7557 break; … … 7559 7560 7560 7561 /* Line 1806 of yacc.c */ 7561 #line 173 0"parser.yy"7562 #line 1731 "parser.yy" 7562 7563 { (yyval.decl) = DeclarationNode::newTypeParam( (yyvsp[(1) - (4)].tclass), (yyvsp[(2) - (4)].tok) )->addAssertions( (yyvsp[(4) - (4)].decl) ); } 7563 7564 break; … … 7566 7567 7567 7568 /* Line 1806 of yacc.c */ 7568 #line 173 6"parser.yy"7569 #line 1737 "parser.yy" 7569 7570 { (yyval.tclass) = DeclarationNode::Type; } 7570 7571 break; … … 7573 7574 7574 7575 /* Line 1806 of yacc.c */ 7575 #line 173 8"parser.yy"7576 #line 1739 "parser.yy" 7576 7577 { (yyval.tclass) = DeclarationNode::Ftype; } 7577 7578 break; … … 7580 7581 7581 7582 /* Line 1806 of yacc.c */ 7582 #line 174 0"parser.yy"7583 #line 1741 "parser.yy" 7583 7584 { (yyval.tclass) = DeclarationNode::Dtype; } 7584 7585 break; … … 7587 7588 7588 7589 /* Line 1806 of yacc.c */ 7589 #line 174 5"parser.yy"7590 #line 1746 "parser.yy" 7590 7591 { (yyval.decl) = 0; } 7591 7592 break; … … 7594 7595 7595 7596 /* Line 1806 of yacc.c */ 7596 #line 174 7"parser.yy"7597 #line 1748 "parser.yy" 7597 7598 { (yyval.decl) = (yyvsp[(1) - (2)].decl) == 0 ? (yyvsp[(2) - (2)].decl) : (yyvsp[(1) - (2)].decl)->appendList( (yyvsp[(2) - (2)].decl) ); } 7598 7599 break; … … 7601 7602 7602 7603 /* Line 1806 of yacc.c */ 7603 #line 175 2"parser.yy"7604 #line 1753 "parser.yy" 7604 7605 { 7605 7606 typedefTable.openContext( *((yyvsp[(2) - (5)].tok)) ); … … 7611 7612 7612 7613 /* Line 1806 of yacc.c */ 7613 #line 175 7"parser.yy"7614 #line 1758 "parser.yy" 7614 7615 { (yyval.decl) = (yyvsp[(4) - (5)].decl); } 7615 7616 break; … … 7618 7619 7619 7620 /* Line 1806 of yacc.c */ 7620 #line 17 59"parser.yy"7621 #line 1760 "parser.yy" 7621 7622 { (yyval.decl) = 0; } 7622 7623 break; … … 7625 7626 7626 7627 /* Line 1806 of yacc.c */ 7627 #line 176 4"parser.yy"7628 #line 1765 "parser.yy" 7628 7629 { (yyval.en) = new TypeValueNode( (yyvsp[(1) - (1)].decl) ); } 7629 7630 break; … … 7632 7633 7633 7634 /* Line 1806 of yacc.c */ 7634 #line 176 7"parser.yy"7635 #line 1768 "parser.yy" 7635 7636 { (yyval.en) = (ExpressionNode *)((yyvsp[(1) - (3)].en)->set_link(new TypeValueNode( (yyvsp[(3) - (3)].decl) ))); } 7636 7637 break; … … 7639 7640 7640 7641 /* Line 1806 of yacc.c */ 7641 #line 17 69"parser.yy"7642 #line 1770 "parser.yy" 7642 7643 { (yyval.en) = (ExpressionNode *)((yyvsp[(1) - (3)].en)->set_link((yyvsp[(3) - (3)].en))); } 7643 7644 break; … … 7646 7647 7647 7648 /* Line 1806 of yacc.c */ 7648 #line 177 4"parser.yy"7649 #line 1775 "parser.yy" 7649 7650 { (yyval.decl) = (yyvsp[(2) - (2)].decl); } 7650 7651 break; … … 7653 7654 7654 7655 /* Line 1806 of yacc.c */ 7655 #line 177 6"parser.yy"7656 #line 1777 "parser.yy" 7656 7657 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addQualifiers( (yyvsp[(1) - (3)].decl) ); } 7657 7658 break; … … 7660 7661 7661 7662 /* Line 1806 of yacc.c */ 7662 #line 177 8"parser.yy"7663 #line 1779 "parser.yy" 7663 7664 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl)->copyStorageClasses( (yyvsp[(1) - (3)].decl) ) ); } 7664 7665 break; … … 7667 7668 7668 7669 /* Line 1806 of yacc.c */ 7669 #line 178 3"parser.yy"7670 #line 1784 "parser.yy" 7670 7671 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addAssertions( (yyvsp[(2) - (2)].decl) ); } 7671 7672 break; … … 7674 7675 7675 7676 /* Line 1806 of yacc.c */ 7676 #line 178 5"parser.yy"7677 #line 1786 "parser.yy" 7677 7678 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->addAssertions( (yyvsp[(2) - (4)].decl) )->addType( (yyvsp[(4) - (4)].decl) ); } 7678 7679 break; … … 7681 7682 7682 7683 /* Line 1806 of yacc.c */ 7683 #line 179 0"parser.yy"7684 #line 1791 "parser.yy" 7684 7685 { 7685 7686 typedefTable.addToEnclosingScope(*((yyvsp[(1) - (1)].tok)), TypedefTable::TD); … … 7691 7692 7692 7693 /* Line 1806 of yacc.c */ 7693 #line 179 5"parser.yy"7694 #line 1796 "parser.yy" 7694 7695 { 7695 7696 typedefTable.addToEnclosingScope(*((yyvsp[(1) - (6)].tok)), TypedefTable::TG); … … 7701 7702 7702 7703 /* Line 1806 of yacc.c */ 7703 #line 180 3"parser.yy"7704 #line 1804 "parser.yy" 7704 7705 { 7705 7706 typedefTable.addToEnclosingScope(*((yyvsp[(2) - (9)].tok)), TypedefTable::ID ); … … 7711 7712 7712 7713 /* Line 1806 of yacc.c */ 7713 #line 180 8"parser.yy"7714 #line 1809 "parser.yy" 7714 7715 { 7715 7716 typedefTable.enterContext( *((yyvsp[(2) - (8)].tok)) ); … … 7721 7722 7722 7723 /* Line 1806 of yacc.c */ 7723 #line 181 3"parser.yy"7724 #line 1814 "parser.yy" 7724 7725 { 7725 7726 typedefTable.leaveContext(); … … 7732 7733 7733 7734 /* Line 1806 of yacc.c */ 7734 #line 182 3"parser.yy"7735 #line 1824 "parser.yy" 7735 7736 { (yyval.decl) = (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ); } 7736 7737 break; … … 7739 7740 7740 7741 /* Line 1806 of yacc.c */ 7741 #line 183 3"parser.yy"7742 #line 1834 "parser.yy" 7742 7743 { 7743 7744 typedefTable.addToEnclosingScope2( TypedefTable::ID ); … … 7749 7750 7750 7751 /* Line 1806 of yacc.c */ 7751 #line 183 8"parser.yy"7752 #line 1839 "parser.yy" 7752 7753 { 7753 7754 typedefTable.addToEnclosingScope2( TypedefTable::ID ); … … 7759 7760 7760 7761 /* Line 1806 of yacc.c */ 7761 #line 184 3"parser.yy"7762 #line 1844 "parser.yy" 7762 7763 { 7763 7764 typedefTable.addToEnclosingScope2( *((yyvsp[(5) - (5)].tok)), TypedefTable::ID ); … … 7769 7770 7770 7771 /* Line 1806 of yacc.c */ 7771 #line 185 1"parser.yy"7772 #line 1852 "parser.yy" 7772 7773 { 7773 7774 typedefTable.addToEnclosingScope2( TypedefTable::ID ); … … 7779 7780 7780 7781 /* Line 1806 of yacc.c */ 7781 #line 185 6"parser.yy"7782 #line 1857 "parser.yy" 7782 7783 { 7783 7784 typedefTable.addToEnclosingScope2( TypedefTable::ID ); … … 7789 7790 7790 7791 /* Line 1806 of yacc.c */ 7791 #line 186 6"parser.yy"7792 #line 1867 "parser.yy" 7792 7793 {} 7793 7794 break; … … 7796 7797 7797 7798 /* Line 1806 of yacc.c */ 7798 #line 186 8"parser.yy"7799 #line 1869 "parser.yy" 7799 7800 { 7800 7801 if ( theTree ) { … … 7809 7810 7810 7811 /* Line 1806 of yacc.c */ 7811 #line 188 0"parser.yy"7812 #line 1881 "parser.yy" 7812 7813 { (yyval.decl) = ((yyvsp[(1) - (3)].decl) != NULL ) ? (yyvsp[(1) - (3)].decl)->appendList( (yyvsp[(3) - (3)].decl) ) : (yyvsp[(3) - (3)].decl); } 7813 7814 break; … … 7816 7817 7817 7818 /* Line 1806 of yacc.c */ 7818 #line 188 5"parser.yy"7819 #line 1886 "parser.yy" 7819 7820 { (yyval.decl) = 0; } 7820 7821 break; … … 7823 7824 7824 7825 /* Line 1806 of yacc.c */ 7825 #line 189 3"parser.yy"7826 #line 1894 "parser.yy" 7826 7827 {} 7827 7828 break; … … 7830 7831 7831 7832 /* Line 1806 of yacc.c */ 7832 #line 189 5"parser.yy"7833 #line 1896 "parser.yy" 7833 7834 { 7834 7835 linkageStack.push( linkage ); … … 7840 7841 7841 7842 /* Line 1806 of yacc.c */ 7842 #line 190 0"parser.yy"7843 #line 1901 "parser.yy" 7843 7844 { 7844 7845 linkage = linkageStack.top(); … … 7851 7852 7852 7853 /* Line 1806 of yacc.c */ 7853 #line 190 6"parser.yy"7854 #line 1907 "parser.yy" 7854 7855 { (yyval.decl) = (yyvsp[(2) - (2)].decl); } 7855 7856 break; … … 7858 7859 7859 7860 /* Line 1806 of yacc.c */ 7860 #line 191 8"parser.yy"7861 #line 1919 "parser.yy" 7861 7862 { 7862 7863 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7869 7870 7870 7871 /* Line 1806 of yacc.c */ 7871 #line 192 4"parser.yy"7872 #line 1925 "parser.yy" 7872 7873 { 7873 7874 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7880 7881 7881 7882 /* Line 1806 of yacc.c */ 7882 #line 193 3"parser.yy"7883 #line 1934 "parser.yy" 7883 7884 { 7884 7885 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7891 7892 7892 7893 /* Line 1806 of yacc.c */ 7893 #line 19 39"parser.yy"7894 #line 1940 "parser.yy" 7894 7895 { 7895 7896 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7902 7903 7903 7904 /* Line 1806 of yacc.c */ 7904 #line 194 5"parser.yy"7905 #line 1946 "parser.yy" 7905 7906 { 7906 7907 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7913 7914 7914 7915 /* Line 1806 of yacc.c */ 7915 #line 195 1"parser.yy"7916 #line 1952 "parser.yy" 7916 7917 { 7917 7918 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7924 7925 7925 7926 /* Line 1806 of yacc.c */ 7926 #line 195 7"parser.yy"7927 #line 1958 "parser.yy" 7927 7928 { 7928 7929 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7935 7936 7936 7937 /* Line 1806 of yacc.c */ 7937 #line 196 5"parser.yy"7938 #line 1966 "parser.yy" 7938 7939 { 7939 7940 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7946 7947 7947 7948 /* Line 1806 of yacc.c */ 7948 #line 197 1"parser.yy"7949 #line 1972 "parser.yy" 7949 7950 { 7950 7951 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7957 7958 7958 7959 /* Line 1806 of yacc.c */ 7959 #line 19 79"parser.yy"7960 #line 1980 "parser.yy" 7960 7961 { 7961 7962 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7968 7969 7969 7970 /* Line 1806 of yacc.c */ 7970 #line 198 5"parser.yy"7971 #line 1986 "parser.yy" 7971 7972 { 7972 7973 typedefTable.addToEnclosingScope( TypedefTable::ID ); … … 7979 7980 7980 7981 /* Line 1806 of yacc.c */ 7981 #line 200 0"parser.yy"7982 #line 2001 "parser.yy" 7982 7983 { (yyval.en) = new CompositeExprNode(new OperatorNode(OperatorNode::Range), (yyvsp[(1) - (3)].en), (yyvsp[(3) - (3)].en)); } 7983 7984 break; 7984 7985 7985 7986 case 539: 7986 7987 /* Line 1806 of yacc.c */7988 #line 2034 "parser.yy"7989 {}7990 break;7991 7992 case 540:7993 7987 7994 7988 /* Line 1806 of yacc.c */ … … 7997 7991 break; 7998 7992 7999 case 54 1:7993 case 540: 8000 7994 8001 7995 /* Line 1806 of yacc.c */ … … 8004 7998 break; 8005 7999 8006 case 54 2:8000 case 541: 8007 8001 8008 8002 /* Line 1806 of yacc.c */ … … 8011 8005 break; 8012 8006 8007 case 542: 8008 8009 /* Line 1806 of yacc.c */ 8010 #line 2038 "parser.yy" 8011 {} 8012 break; 8013 8013 8014 case 547: 8014 8015 8015 8016 /* Line 1806 of yacc.c */ 8016 #line 208 0"parser.yy"8017 #line 2081 "parser.yy" 8017 8018 { 8018 8019 typedefTable.setNextIdentifier( *((yyvsp[(1) - (1)].tok)) ); … … 8024 8025 8025 8026 /* Line 1806 of yacc.c */ 8026 #line 208 5"parser.yy"8027 #line 2086 "parser.yy" 8027 8028 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8028 8029 break; … … 8031 8032 8032 8033 /* Line 1806 of yacc.c */ 8033 #line 209 0"parser.yy"8034 #line 2091 "parser.yy" 8034 8035 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8035 8036 break; … … 8038 8039 8039 8040 /* Line 1806 of yacc.c */ 8040 #line 209 2"parser.yy"8041 #line 2093 "parser.yy" 8041 8042 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8042 8043 break; … … 8045 8046 8046 8047 /* Line 1806 of yacc.c */ 8047 #line 209 4"parser.yy"8048 #line 2095 "parser.yy" 8048 8049 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8049 8050 break; … … 8052 8053 8053 8054 /* Line 1806 of yacc.c */ 8054 #line 2 099"parser.yy"8055 #line 2100 "parser.yy" 8055 8056 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8056 8057 break; … … 8059 8060 8060 8061 /* Line 1806 of yacc.c */ 8061 #line 210 1"parser.yy"8062 #line 2102 "parser.yy" 8062 8063 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8063 8064 break; … … 8066 8067 8067 8068 /* Line 1806 of yacc.c */ 8068 #line 210 3"parser.yy"8069 #line 2104 "parser.yy" 8069 8070 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8070 8071 break; … … 8073 8074 8074 8075 /* Line 1806 of yacc.c */ 8075 #line 210 5"parser.yy"8076 #line 2106 "parser.yy" 8076 8077 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8077 8078 break; … … 8080 8081 8081 8082 /* Line 1806 of yacc.c */ 8082 #line 211 0"parser.yy"8083 #line 2111 "parser.yy" 8083 8084 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8084 8085 break; … … 8087 8088 8088 8089 /* Line 1806 of yacc.c */ 8089 #line 211 2"parser.yy"8090 #line 2113 "parser.yy" 8090 8091 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8091 8092 break; … … 8094 8095 8095 8096 /* Line 1806 of yacc.c */ 8096 #line 212 8"parser.yy"8097 #line 2129 "parser.yy" 8097 8098 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); } 8098 8099 break; … … 8101 8102 8102 8103 /* Line 1806 of yacc.c */ 8103 #line 213 0"parser.yy"8104 #line 2131 "parser.yy" 8104 8105 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8105 8106 break; … … 8108 8109 8109 8110 /* Line 1806 of yacc.c */ 8110 #line 213 2"parser.yy"8111 #line 2133 "parser.yy" 8111 8112 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8112 8113 break; … … 8115 8116 8116 8117 /* Line 1806 of yacc.c */ 8117 #line 213 7"parser.yy"8118 #line 2138 "parser.yy" 8118 8119 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8119 8120 break; … … 8122 8123 8123 8124 /* Line 1806 of yacc.c */ 8124 #line 21 39"parser.yy"8125 #line 2140 "parser.yy" 8125 8126 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8126 8127 break; … … 8129 8130 8130 8131 /* Line 1806 of yacc.c */ 8131 #line 214 1"parser.yy"8132 #line 2142 "parser.yy" 8132 8133 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8133 8134 break; … … 8136 8137 8137 8138 /* Line 1806 of yacc.c */ 8138 #line 214 6"parser.yy"8139 #line 2147 "parser.yy" 8139 8140 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8140 8141 break; … … 8143 8144 8144 8145 /* Line 1806 of yacc.c */ 8145 #line 214 8"parser.yy"8146 #line 2149 "parser.yy" 8146 8147 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8147 8148 break; … … 8150 8151 8151 8152 /* Line 1806 of yacc.c */ 8152 #line 215 0"parser.yy"8153 #line 2151 "parser.yy" 8153 8154 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8154 8155 break; … … 8157 8158 8158 8159 /* Line 1806 of yacc.c */ 8159 #line 216 5"parser.yy"8160 #line 2166 "parser.yy" 8160 8161 { (yyval.decl) = (yyvsp[(1) - (4)].decl)->addIdList( (yyvsp[(3) - (4)].decl) ); } 8161 8162 break; … … 8164 8165 8165 8166 /* Line 1806 of yacc.c */ 8166 #line 216 7"parser.yy"8167 #line 2168 "parser.yy" 8167 8168 { (yyval.decl) = (yyvsp[(2) - (6)].decl)->addIdList( (yyvsp[(5) - (6)].decl) ); } 8168 8169 break; … … 8171 8172 8172 8173 /* Line 1806 of yacc.c */ 8173 #line 21 69"parser.yy"8174 #line 2170 "parser.yy" 8174 8175 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8175 8176 break; … … 8178 8179 8179 8180 /* Line 1806 of yacc.c */ 8180 #line 217 4"parser.yy"8181 #line 2175 "parser.yy" 8181 8182 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8182 8183 break; … … 8185 8186 8186 8187 /* Line 1806 of yacc.c */ 8187 #line 217 6"parser.yy"8188 #line 2177 "parser.yy" 8188 8189 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8189 8190 break; … … 8192 8193 8193 8194 /* Line 1806 of yacc.c */ 8194 #line 217 8"parser.yy"8195 #line 2179 "parser.yy" 8195 8196 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8196 8197 break; … … 8199 8200 8200 8201 /* Line 1806 of yacc.c */ 8201 #line 218 3"parser.yy"8202 #line 2184 "parser.yy" 8202 8203 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8203 8204 break; … … 8206 8207 8207 8208 /* Line 1806 of yacc.c */ 8208 #line 218 5"parser.yy"8209 #line 2186 "parser.yy" 8209 8210 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8210 8211 break; … … 8213 8214 8214 8215 /* Line 1806 of yacc.c */ 8215 #line 218 7"parser.yy"8216 #line 2188 "parser.yy" 8216 8217 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8217 8218 break; … … 8220 8221 8221 8222 /* Line 1806 of yacc.c */ 8222 #line 22 09"parser.yy"8223 #line 2210 "parser.yy" 8223 8224 { 8224 8225 typedefTable.setNextIdentifier( *((yyvsp[(1) - (1)].tok)) ); … … 8230 8231 8231 8232 /* Line 1806 of yacc.c */ 8232 #line 221 4"parser.yy"8233 #line 2215 "parser.yy" 8233 8234 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8234 8235 break; … … 8237 8238 8238 8239 /* Line 1806 of yacc.c */ 8239 #line 22 19"parser.yy"8240 #line 2220 "parser.yy" 8240 8241 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8241 8242 break; … … 8244 8245 8245 8246 /* Line 1806 of yacc.c */ 8246 #line 222 1"parser.yy"8247 #line 2222 "parser.yy" 8247 8248 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8248 8249 break; … … 8251 8252 8252 8253 /* Line 1806 of yacc.c */ 8253 #line 222 3"parser.yy"8254 #line 2224 "parser.yy" 8254 8255 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8255 8256 break; … … 8258 8259 8259 8260 /* Line 1806 of yacc.c */ 8260 #line 222 8"parser.yy"8261 #line 2229 "parser.yy" 8261 8262 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8262 8263 break; … … 8265 8266 8266 8267 /* Line 1806 of yacc.c */ 8267 #line 223 0"parser.yy"8268 #line 2231 "parser.yy" 8268 8269 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8269 8270 break; … … 8272 8273 8273 8274 /* Line 1806 of yacc.c */ 8274 #line 223 2"parser.yy"8275 #line 2233 "parser.yy" 8275 8276 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8276 8277 break; … … 8279 8280 8280 8281 /* Line 1806 of yacc.c */ 8281 #line 223 4"parser.yy"8282 #line 2235 "parser.yy" 8282 8283 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8283 8284 break; … … 8286 8287 8287 8288 /* Line 1806 of yacc.c */ 8288 #line 22 39"parser.yy"8289 #line 2240 "parser.yy" 8289 8290 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); } 8290 8291 break; … … 8293 8294 8294 8295 /* Line 1806 of yacc.c */ 8295 #line 224 1"parser.yy"8296 #line 2242 "parser.yy" 8296 8297 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8297 8298 break; … … 8300 8301 8301 8302 /* Line 1806 of yacc.c */ 8302 #line 224 3"parser.yy"8303 #line 2244 "parser.yy" 8303 8304 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8304 8305 break; … … 8307 8308 8308 8309 /* Line 1806 of yacc.c */ 8309 #line 226 0"parser.yy"8310 #line 2261 "parser.yy" 8310 8311 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8311 8312 break; … … 8314 8315 8315 8316 /* Line 1806 of yacc.c */ 8316 #line 226 2"parser.yy"8317 #line 2263 "parser.yy" 8317 8318 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8318 8319 break; … … 8321 8322 8322 8323 /* Line 1806 of yacc.c */ 8323 #line 226 4"parser.yy"8324 #line 2265 "parser.yy" 8324 8325 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8325 8326 break; … … 8328 8329 8329 8330 /* Line 1806 of yacc.c */ 8330 #line 22 69"parser.yy"8331 #line 2270 "parser.yy" 8331 8332 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8332 8333 break; … … 8335 8336 8336 8337 /* Line 1806 of yacc.c */ 8337 #line 227 1"parser.yy"8338 #line 2272 "parser.yy" 8338 8339 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8339 8340 break; … … 8342 8343 8343 8344 /* Line 1806 of yacc.c */ 8344 #line 227 3"parser.yy"8345 #line 2274 "parser.yy" 8345 8346 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8346 8347 break; … … 8349 8350 8350 8351 /* Line 1806 of yacc.c */ 8351 #line 227 5"parser.yy"8352 #line 2276 "parser.yy" 8352 8353 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8353 8354 break; … … 8356 8357 8357 8358 /* Line 1806 of yacc.c */ 8358 #line 228 0"parser.yy"8359 #line 2281 "parser.yy" 8359 8360 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); } 8360 8361 break; … … 8363 8364 8364 8365 /* Line 1806 of yacc.c */ 8365 #line 228 2"parser.yy"8366 #line 2283 "parser.yy" 8366 8367 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8367 8368 break; … … 8370 8371 8371 8372 /* Line 1806 of yacc.c */ 8372 #line 228 4"parser.yy"8373 #line 2285 "parser.yy" 8373 8374 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8374 8375 break; … … 8377 8378 8378 8379 /* Line 1806 of yacc.c */ 8379 #line 232 2"parser.yy"8380 #line 2323 "parser.yy" 8380 8381 { 8381 8382 typedefTable.setNextIdentifier( *((yyvsp[(1) - (1)].tok)) ); … … 8387 8388 8388 8389 /* Line 1806 of yacc.c */ 8389 #line 233 0"parser.yy"8390 #line 2331 "parser.yy" 8390 8391 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8391 8392 break; … … 8394 8395 8395 8396 /* Line 1806 of yacc.c */ 8396 #line 233 2"parser.yy"8397 #line 2333 "parser.yy" 8397 8398 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8398 8399 break; … … 8401 8402 8402 8403 /* Line 1806 of yacc.c */ 8403 #line 233 4"parser.yy"8404 #line 2335 "parser.yy" 8404 8405 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8405 8406 break; … … 8408 8409 8409 8410 /* Line 1806 of yacc.c */ 8410 #line 23 39"parser.yy"8411 #line 2340 "parser.yy" 8411 8412 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8412 8413 break; … … 8415 8416 8416 8417 /* Line 1806 of yacc.c */ 8417 #line 234 1"parser.yy"8418 #line 2342 "parser.yy" 8418 8419 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8419 8420 break; … … 8422 8423 8423 8424 /* Line 1806 of yacc.c */ 8424 #line 234 6"parser.yy"8425 #line 2347 "parser.yy" 8425 8426 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addParamList( (yyvsp[(4) - (6)].decl) ); } 8426 8427 break; … … 8429 8430 8430 8431 /* Line 1806 of yacc.c */ 8431 #line 234 8"parser.yy"8432 #line 2349 "parser.yy" 8432 8433 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8433 8434 break; … … 8436 8437 8437 8438 /* Line 1806 of yacc.c */ 8438 #line 236 8"parser.yy"8439 #line 2369 "parser.yy" 8439 8440 { (yyval.decl) = DeclarationNode::newPointer( 0 ); } 8440 8441 break; … … 8443 8444 8444 8445 /* Line 1806 of yacc.c */ 8445 #line 237 0"parser.yy"8446 #line 2371 "parser.yy" 8446 8447 { (yyval.decl) = DeclarationNode::newPointer( (yyvsp[(2) - (2)].decl) ); } 8447 8448 break; … … 8450 8451 8451 8452 /* Line 1806 of yacc.c */ 8452 #line 237 2"parser.yy"8453 #line 2373 "parser.yy" 8453 8454 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8454 8455 break; … … 8457 8458 8458 8459 /* Line 1806 of yacc.c */ 8459 #line 237 4"parser.yy"8460 #line 2375 "parser.yy" 8460 8461 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8461 8462 break; … … 8464 8465 8465 8466 /* Line 1806 of yacc.c */ 8466 #line 237 6"parser.yy"8467 #line 2377 "parser.yy" 8467 8468 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8468 8469 break; … … 8471 8472 8472 8473 /* Line 1806 of yacc.c */ 8473 #line 238 2"parser.yy"8474 #line 2383 "parser.yy" 8474 8475 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8475 8476 break; … … 8478 8479 8479 8480 /* Line 1806 of yacc.c */ 8480 #line 238 4"parser.yy"8481 #line 2385 "parser.yy" 8481 8482 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8482 8483 break; … … 8485 8486 8486 8487 /* Line 1806 of yacc.c */ 8487 #line 238 6"parser.yy"8488 #line 2387 "parser.yy" 8488 8489 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8489 8490 break; … … 8492 8493 8493 8494 /* Line 1806 of yacc.c */ 8494 #line 239 1"parser.yy"8495 #line 2392 "parser.yy" 8495 8496 { (yyval.decl) = DeclarationNode::newFunction( 0, 0, (yyvsp[(3) - (5)].decl), 0 ); } 8496 8497 break; … … 8499 8500 8500 8501 /* Line 1806 of yacc.c */ 8501 #line 239 3"parser.yy"8502 #line 2394 "parser.yy" 8502 8503 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8503 8504 break; … … 8506 8507 8507 8508 /* Line 1806 of yacc.c */ 8508 #line 239 5"parser.yy"8509 #line 2396 "parser.yy" 8509 8510 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8510 8511 break; … … 8513 8514 8514 8515 /* Line 1806 of yacc.c */ 8515 #line 240 1"parser.yy"8516 #line 2402 "parser.yy" 8516 8517 { (yyval.decl) = DeclarationNode::newArray( 0, 0, false ); } 8517 8518 break; … … 8520 8521 8521 8522 /* Line 1806 of yacc.c */ 8522 #line 240 3"parser.yy"8523 #line 2404 "parser.yy" 8523 8524 { (yyval.decl) = DeclarationNode::newArray( 0, 0, false )->addArray( (yyvsp[(5) - (5)].decl) ); } 8524 8525 break; … … 8527 8528 8528 8529 /* Line 1806 of yacc.c */ 8529 #line 24 09"parser.yy"8530 #line 2410 "parser.yy" 8530 8531 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(3) - (5)].en), 0, false ); } 8531 8532 break; … … 8534 8535 8535 8536 /* Line 1806 of yacc.c */ 8536 #line 241 1"parser.yy"8537 #line 2412 "parser.yy" 8537 8538 { (yyval.decl) = DeclarationNode::newVarArray( 0 ); } 8538 8539 break; … … 8541 8542 8542 8543 /* Line 1806 of yacc.c */ 8543 #line 241 3"parser.yy"8544 #line 2414 "parser.yy" 8544 8545 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addArray( DeclarationNode::newArray( (yyvsp[(4) - (6)].en), 0, false ) ); } 8545 8546 break; … … 8548 8549 8549 8550 /* Line 1806 of yacc.c */ 8550 #line 241 5"parser.yy"8551 #line 2416 "parser.yy" 8551 8552 { (yyval.decl) = (yyvsp[(1) - (6)].decl)->addArray( DeclarationNode::newVarArray( 0 ) ); } 8552 8553 break; … … 8555 8556 8556 8557 /* Line 1806 of yacc.c */ 8557 #line 243 5"parser.yy"8558 #line 2436 "parser.yy" 8558 8559 { (yyval.decl) = DeclarationNode::newPointer( 0 ); } 8559 8560 break; … … 8562 8563 8563 8564 /* Line 1806 of yacc.c */ 8564 #line 243 7"parser.yy"8565 #line 2438 "parser.yy" 8565 8566 { (yyval.decl) = DeclarationNode::newPointer( (yyvsp[(2) - (2)].decl) ); } 8566 8567 break; … … 8569 8570 8570 8571 /* Line 1806 of yacc.c */ 8571 #line 24 39"parser.yy"8572 #line 2440 "parser.yy" 8572 8573 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8573 8574 break; … … 8576 8577 8577 8578 /* Line 1806 of yacc.c */ 8578 #line 244 1"parser.yy"8579 #line 2442 "parser.yy" 8579 8580 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8580 8581 break; … … 8583 8584 8584 8585 /* Line 1806 of yacc.c */ 8585 #line 244 3"parser.yy"8586 #line 2444 "parser.yy" 8586 8587 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8587 8588 break; … … 8590 8591 8591 8592 /* Line 1806 of yacc.c */ 8592 #line 24 49"parser.yy"8593 #line 2450 "parser.yy" 8593 8594 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8594 8595 break; … … 8597 8598 8598 8599 /* Line 1806 of yacc.c */ 8599 #line 245 1"parser.yy"8600 #line 2452 "parser.yy" 8600 8601 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8601 8602 break; … … 8604 8605 8605 8606 /* Line 1806 of yacc.c */ 8606 #line 245 3"parser.yy"8607 #line 2454 "parser.yy" 8607 8608 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8608 8609 break; … … 8611 8612 8612 8613 /* Line 1806 of yacc.c */ 8613 #line 245 8"parser.yy"8614 #line 2459 "parser.yy" 8614 8615 { (yyval.decl) = DeclarationNode::newFunction( 0, 0, (yyvsp[(3) - (5)].decl), 0 ); } 8615 8616 break; … … 8618 8619 8619 8620 /* Line 1806 of yacc.c */ 8620 #line 246 0"parser.yy"8621 #line 2461 "parser.yy" 8621 8622 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8622 8623 break; … … 8625 8626 8626 8627 /* Line 1806 of yacc.c */ 8627 #line 246 2"parser.yy"8628 #line 2463 "parser.yy" 8628 8629 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8629 8630 break; … … 8632 8633 8633 8634 /* Line 1806 of yacc.c */ 8634 #line 24 69"parser.yy"8635 #line 2470 "parser.yy" 8635 8636 { (yyval.decl) = (yyvsp[(1) - (2)].decl)->addArray( (yyvsp[(2) - (2)].decl) ); } 8636 8637 break; … … 8639 8640 8640 8641 /* Line 1806 of yacc.c */ 8641 #line 248 1"parser.yy"8642 #line 2482 "parser.yy" 8642 8643 { (yyval.decl) = DeclarationNode::newArray( 0, 0, false ); } 8643 8644 break; … … 8646 8647 8647 8648 /* Line 1806 of yacc.c */ 8648 #line 248 4"parser.yy"8649 #line 2485 "parser.yy" 8649 8650 { (yyval.decl) = DeclarationNode::newVarArray( (yyvsp[(3) - (6)].decl) ); } 8650 8651 break; … … 8653 8654 8654 8655 /* Line 1806 of yacc.c */ 8655 #line 248 6"parser.yy"8656 #line 2487 "parser.yy" 8656 8657 { (yyval.decl) = DeclarationNode::newArray( 0, (yyvsp[(3) - (5)].decl), false ); } 8657 8658 break; … … 8660 8661 8661 8662 /* Line 1806 of yacc.c */ 8662 #line 24 89"parser.yy"8663 #line 2490 "parser.yy" 8663 8664 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(4) - (6)].en), (yyvsp[(3) - (6)].decl), false ); } 8664 8665 break; … … 8667 8668 8668 8669 /* Line 1806 of yacc.c */ 8669 #line 249 1"parser.yy"8670 #line 2492 "parser.yy" 8670 8671 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(5) - (7)].en), (yyvsp[(4) - (7)].decl), true ); } 8671 8672 break; … … 8674 8675 8675 8676 /* Line 1806 of yacc.c */ 8676 #line 249 3"parser.yy"8677 #line 2494 "parser.yy" 8677 8678 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(5) - (7)].en), (yyvsp[(3) - (7)].decl), true ); } 8678 8679 break; … … 8681 8682 8682 8683 /* Line 1806 of yacc.c */ 8683 #line 251 2"parser.yy"8684 #line 2513 "parser.yy" 8684 8685 { (yyval.decl) = DeclarationNode::newPointer( 0 ); } 8685 8686 break; … … 8688 8689 8689 8690 /* Line 1806 of yacc.c */ 8690 #line 251 4"parser.yy"8691 #line 2515 "parser.yy" 8691 8692 { (yyval.decl) = DeclarationNode::newPointer( (yyvsp[(2) - (2)].decl) ); } 8692 8693 break; … … 8695 8696 8696 8697 /* Line 1806 of yacc.c */ 8697 #line 251 6"parser.yy"8698 #line 2517 "parser.yy" 8698 8699 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addPointer( DeclarationNode::newPointer( 0 ) ); } 8699 8700 break; … … 8702 8703 8703 8704 /* Line 1806 of yacc.c */ 8704 #line 251 8"parser.yy"8705 #line 2519 "parser.yy" 8705 8706 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addPointer( DeclarationNode::newPointer( (yyvsp[(2) - (3)].decl) ) ); } 8706 8707 break; … … 8709 8710 8710 8711 /* Line 1806 of yacc.c */ 8711 #line 252 0"parser.yy"8712 #line 2521 "parser.yy" 8712 8713 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8713 8714 break; … … 8716 8717 8717 8718 /* Line 1806 of yacc.c */ 8718 #line 252 6"parser.yy"8719 #line 2527 "parser.yy" 8719 8720 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8720 8721 break; … … 8723 8724 8724 8725 /* Line 1806 of yacc.c */ 8725 #line 252 8"parser.yy"8726 #line 2529 "parser.yy" 8726 8727 { (yyval.decl) = (yyvsp[(2) - (4)].decl)->addArray( (yyvsp[(4) - (4)].decl) ); } 8727 8728 break; … … 8730 8731 8731 8732 /* Line 1806 of yacc.c */ 8732 #line 253 0"parser.yy"8733 #line 2531 "parser.yy" 8733 8734 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8734 8735 break; … … 8737 8738 8738 8739 /* Line 1806 of yacc.c */ 8739 #line 253 5"parser.yy"8740 #line 2536 "parser.yy" 8740 8741 { (yyval.decl) = (yyvsp[(2) - (8)].decl)->addParamList( (yyvsp[(6) - (8)].decl) ); } 8741 8742 break; … … 8744 8745 8745 8746 /* Line 1806 of yacc.c */ 8746 #line 253 7"parser.yy"8747 #line 2538 "parser.yy" 8747 8748 { (yyval.decl) = (yyvsp[(2) - (3)].decl); } 8748 8749 break; … … 8751 8752 8752 8753 /* Line 1806 of yacc.c */ 8753 #line 254 7"parser.yy"8754 #line 2548 "parser.yy" 8754 8755 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 8755 8756 break; … … 8758 8759 8759 8760 /* Line 1806 of yacc.c */ 8760 #line 255 7"parser.yy"8761 #line 2558 "parser.yy" 8761 8762 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 8762 8763 break; … … 8765 8766 8766 8767 /* Line 1806 of yacc.c */ 8767 #line 25 59"parser.yy"8768 #line 2560 "parser.yy" 8768 8769 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 8769 8770 break; … … 8772 8773 8773 8774 /* Line 1806 of yacc.c */ 8774 #line 256 1"parser.yy"8775 #line 2562 "parser.yy" 8775 8776 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 8776 8777 break; … … 8779 8780 8780 8781 /* Line 1806 of yacc.c */ 8781 #line 256 3"parser.yy"8782 #line 2564 "parser.yy" 8782 8783 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 8783 8784 break; … … 8786 8787 8787 8788 /* Line 1806 of yacc.c */ 8788 #line 256 5"parser.yy"8789 #line 2566 "parser.yy" 8789 8790 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 8790 8791 break; … … 8793 8794 8794 8795 /* Line 1806 of yacc.c */ 8795 #line 256 7"parser.yy"8796 #line 2568 "parser.yy" 8796 8797 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 8797 8798 break; … … 8800 8801 8801 8802 /* Line 1806 of yacc.c */ 8802 #line 257 4"parser.yy"8803 #line 2575 "parser.yy" 8803 8804 { (yyval.decl) = (yyvsp[(5) - (5)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8804 8805 break; … … 8807 8808 8808 8809 /* Line 1806 of yacc.c */ 8809 #line 257 6"parser.yy"8810 #line 2577 "parser.yy" 8810 8811 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 8811 8812 break; … … 8814 8815 8815 8816 /* Line 1806 of yacc.c */ 8816 #line 257 8"parser.yy"8817 #line 2579 "parser.yy" 8817 8818 { (yyval.decl) = (yyvsp[(6) - (6)].decl)->addNewArray( (yyvsp[(5) - (6)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8818 8819 break; … … 8821 8822 8822 8823 /* Line 1806 of yacc.c */ 8823 #line 258 0"parser.yy"8824 #line 2581 "parser.yy" 8824 8825 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( (yyvsp[(2) - (3)].decl) )->addNewArray( (yyvsp[(1) - (3)].decl) ); } 8825 8826 break; … … 8828 8829 8829 8830 /* Line 1806 of yacc.c */ 8830 #line 258 2"parser.yy"8831 #line 2583 "parser.yy" 8831 8832 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 8832 8833 break; … … 8835 8836 8836 8837 /* Line 1806 of yacc.c */ 8837 #line 258 4"parser.yy"8838 #line 2585 "parser.yy" 8838 8839 { (yyval.decl) = (yyvsp[(5) - (5)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8839 8840 break; … … 8842 8843 8843 8844 /* Line 1806 of yacc.c */ 8844 #line 258 6"parser.yy"8845 #line 2587 "parser.yy" 8845 8846 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 8846 8847 break; … … 8849 8850 8850 8851 /* Line 1806 of yacc.c */ 8851 #line 258 8"parser.yy"8852 #line 2589 "parser.yy" 8852 8853 { (yyval.decl) = (yyvsp[(6) - (6)].decl)->addNewArray( (yyvsp[(5) - (6)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8853 8854 break; … … 8856 8857 8857 8858 /* Line 1806 of yacc.c */ 8858 #line 259 0"parser.yy"8859 #line 2591 "parser.yy" 8859 8860 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewArray( (yyvsp[(2) - (3)].decl) )->addNewArray( (yyvsp[(1) - (3)].decl) ); } 8860 8861 break; … … 8863 8864 8864 8865 /* Line 1806 of yacc.c */ 8865 #line 259 2"parser.yy"8866 #line 2593 "parser.yy" 8866 8867 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 8867 8868 break; … … 8870 8871 8871 8872 /* Line 1806 of yacc.c */ 8872 #line 259 7"parser.yy"8873 #line 2598 "parser.yy" 8873 8874 { (yyval.decl) = DeclarationNode::newVarArray( (yyvsp[(3) - (6)].decl) ); } 8874 8875 break; … … 8877 8878 8878 8879 /* Line 1806 of yacc.c */ 8879 #line 2 599"parser.yy"8880 #line 2600 "parser.yy" 8880 8881 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(4) - (6)].en), (yyvsp[(3) - (6)].decl), false ); } 8881 8882 break; … … 8884 8885 8885 8886 /* Line 1806 of yacc.c */ 8886 #line 260 4"parser.yy"8887 #line 2605 "parser.yy" 8887 8888 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(4) - (6)].en), (yyvsp[(3) - (6)].decl), true ); } 8888 8889 break; … … 8891 8892 8892 8893 /* Line 1806 of yacc.c */ 8893 #line 260 6"parser.yy"8894 #line 2607 "parser.yy" 8894 8895 { (yyval.decl) = DeclarationNode::newArray( (yyvsp[(5) - (7)].en), (yyvsp[(4) - (7)].decl)->addQualifiers( (yyvsp[(3) - (7)].decl) ), true ); } 8895 8896 break; … … 8898 8899 8899 8900 /* Line 1806 of yacc.c */ 8900 #line 263 3"parser.yy"8901 #line 2634 "parser.yy" 8901 8902 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addQualifiers( (yyvsp[(1) - (2)].decl) ); } 8902 8903 break; … … 8905 8906 8906 8907 /* Line 1806 of yacc.c */ 8907 #line 264 4"parser.yy"8908 #line 2645 "parser.yy" 8908 8909 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 8909 8910 break; … … 8912 8913 8913 8914 /* Line 1806 of yacc.c */ 8914 #line 264 6"parser.yy"8915 #line 2647 "parser.yy" 8915 8916 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 8916 8917 break; … … 8919 8920 8920 8921 /* Line 1806 of yacc.c */ 8921 #line 264 8"parser.yy"8922 #line 2649 "parser.yy" 8922 8923 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 8923 8924 break; … … 8926 8927 8927 8928 /* Line 1806 of yacc.c */ 8928 #line 265 0"parser.yy"8929 #line 2651 "parser.yy" 8929 8930 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 8930 8931 break; … … 8933 8934 8934 8935 /* Line 1806 of yacc.c */ 8935 #line 265 2"parser.yy"8936 #line 2653 "parser.yy" 8936 8937 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewPointer( DeclarationNode::newPointer( 0 ) ); } 8937 8938 break; … … 8940 8941 8941 8942 /* Line 1806 of yacc.c */ 8942 #line 265 4"parser.yy"8943 #line 2655 "parser.yy" 8943 8944 { (yyval.decl) = (yyvsp[(3) - (3)].decl)->addNewPointer( DeclarationNode::newPointer( (yyvsp[(1) - (3)].decl) ) ); } 8944 8945 break; … … 8947 8948 8948 8949 /* Line 1806 of yacc.c */ 8949 #line 266 1"parser.yy"8950 #line 2662 "parser.yy" 8950 8951 { (yyval.decl) = (yyvsp[(5) - (5)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8951 8952 break; … … 8954 8955 8955 8956 /* Line 1806 of yacc.c */ 8956 #line 266 3"parser.yy"8957 #line 2664 "parser.yy" 8957 8958 { (yyval.decl) = (yyvsp[(6) - (6)].decl)->addNewArray( (yyvsp[(5) - (6)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8958 8959 break; … … 8961 8962 8962 8963 /* Line 1806 of yacc.c */ 8963 #line 266 5"parser.yy"8964 #line 2666 "parser.yy" 8964 8965 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 8965 8966 break; … … 8968 8969 8969 8970 /* Line 1806 of yacc.c */ 8970 #line 266 7"parser.yy"8971 #line 2668 "parser.yy" 8971 8972 { (yyval.decl) = (yyvsp[(5) - (5)].decl)->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8972 8973 break; … … 8975 8976 8976 8977 /* Line 1806 of yacc.c */ 8977 #line 26 69"parser.yy"8978 #line 2670 "parser.yy" 8978 8979 { (yyval.decl) = (yyvsp[(6) - (6)].decl)->addNewArray( (yyvsp[(5) - (6)].decl) )->addNewArray( DeclarationNode::newArray( 0, 0, false ) ); } 8979 8980 break; … … 8982 8983 8983 8984 /* Line 1806 of yacc.c */ 8984 #line 267 1"parser.yy"8985 #line 2672 "parser.yy" 8985 8986 { (yyval.decl) = (yyvsp[(2) - (2)].decl)->addNewArray( (yyvsp[(1) - (2)].decl) ); } 8986 8987 break; … … 8989 8990 8990 8991 /* Line 1806 of yacc.c */ 8991 #line 267 6"parser.yy"8992 #line 2677 "parser.yy" 8992 8993 { (yyval.decl) = DeclarationNode::newTuple( (yyvsp[(3) - (5)].decl) ); } 8993 8994 break; … … 8996 8997 8997 8998 /* Line 1806 of yacc.c */ 8998 #line 268 1"parser.yy"8999 #line 2682 "parser.yy" 8999 9000 { (yyval.decl) = DeclarationNode::newFunction( 0, DeclarationNode::newTuple( 0 ), (yyvsp[(6) - (7)].decl), 0 ); } 9000 9001 break; … … 9003 9004 9004 9005 /* Line 1806 of yacc.c */ 9005 #line 268 3"parser.yy"9006 #line 2684 "parser.yy" 9006 9007 { (yyval.decl) = DeclarationNode::newFunction( 0, (yyvsp[(1) - (6)].decl), (yyvsp[(4) - (6)].decl), 0 ); } 9007 9008 break; … … 9010 9011 9011 9012 /* Line 1806 of yacc.c */ 9012 #line 268 5"parser.yy"9013 #line 2686 "parser.yy" 9013 9014 { (yyval.decl) = DeclarationNode::newFunction( 0, (yyvsp[(1) - (6)].decl), (yyvsp[(4) - (6)].decl), 0 ); } 9014 9015 break; … … 9017 9018 9018 9019 /* Line 1806 of yacc.c */ 9019 #line 271 1"parser.yy"9020 #line 2712 "parser.yy" 9020 9021 { (yyval.en) = 0; } 9021 9022 break; … … 9024 9025 9025 9026 /* Line 1806 of yacc.c */ 9026 #line 271 3"parser.yy"9027 #line 2714 "parser.yy" 9027 9028 { (yyval.en) = (yyvsp[(2) - (2)].en); } 9028 9029 break; … … 9031 9032 9032 9033 /* Line 1806 of yacc.c */ 9033 #line 903 4"Parser/parser.cc"9034 #line 9035 "Parser/parser.cc" 9034 9035 default: break; 9035 9036 } … … 9262 9263 9263 9264 /* Line 2067 of yacc.c */ 9264 #line 271 6"parser.yy"9265 #line 2717 "parser.yy" 9265 9266 9266 9267 // ----end of grammar---- … … 9271 9272 std::cout << "in file " << yyfilename << " "; 9272 9273 } // if 9273 std::cout << "at line " << yylineno << " reading token \"" << *(yylval.tok.str) << "\"" << std::endl; 9274 // std::cout << "at line " << yylineno << " reading token \"" << *(yylval.tok.str) << "\"" << std::endl; 9275 std::cout << "at line " << yylineno << " reading token \"" << yytext << "\"" << std::endl; 9274 9276 } 9275 9277 -
src/Parser/parser.h
r0b2961f r8a95629 246 246 247 247 /* Line 2068 of yacc.c */ 248 #line 10 7"parser.yy"248 #line 108 "parser.yy" 249 249 250 250 Token tok; -
src/Parser/parser.yy
r0b2961f r8a95629 10 10 // Created On : Sat Sep 1 20:22:55 2001 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Jun 8 20:31:07201513 // Update Count : 103 012 // Last Modified On : Wed Jun 10 14:22:15 2015 13 // Update Count : 1039 14 14 // 15 15 … … 46 46 #define YYDEBUG_LEXER_TEXT (yylval) // lexer loads this up each time 47 47 #define YYDEBUG 1 // get the pretty debugging code to compile 48 extern char *yytext; 48 49 49 50 #undef __GNUC_MINOR__ … … 2722 2723 std::cout << "in file " << yyfilename << " "; 2723 2724 } // if 2724 std::cout << "at line " << yylineno << " reading token \"" << *(yylval.tok.str)<< "\"" << std::endl;2725 std::cout << "at line " << yylineno << " reading token \"" << yytext << "\"" << std::endl; 2725 2726 } 2726 2727 -
src/Tests/SynTree/Forall.c
r0b2961f r8a95629 1 int ?=?( int*, int ); 2 float ?=?( float*, float ); 3 int * ?=?( int **, int * ); 4 float * ?=?( float **, float * ); 5 char ?=?( char*, char ); 6 void (* ?=?( void (**)(void), void (*)(void) ))(void); 7 8 void g1() { 9 forall( type T ) T f( T ); 10 void f( int ); 11 void h( void (*p)(void) ); 12 13 int x; 14 void (*y)(void); 15 char z; 16 float w; 17 18 f( x ); 19 f( y ); 20 f( z ); 21 f( w ); 22 h( f( y ) ); 23 } 24 25 void g2() { 26 forall( type T ) void f( T, T ); 27 forall( type T, type U ) void f( T, U ); 28 29 int x; 30 float y; 31 int *z; 32 float *w; 33 34 f( x, y ); 35 f( z, w ); 36 f( x, z ); 37 } 38 1 39 typedef forall ( type T ) int (*f)( int ); 2 40 -
src/Tests/Syntax/Attributes.c
r0b2961f r8a95629 21 21 return 7; 22 22 } 23 24 int @voon; 25 double @voon; 26 27 int @bort(int); 28 int @bort(double); 29 30 void g( int ); 31 32 void f() { 33 float x; 34 double x; 35 @bort(x); 36 @bort(int); 37 g( @voon ); 38 } 39 40 // Local Variables: // 41 // tab-width: 4 // 42 // End: //
Note: See TracChangeset
for help on using the changeset viewer.