308, 312, 316, 322, 328, 334, 339, 343, 347, 353,
359, 363, 367, 373, 377, 383, 384, 388, 394, 403,
409, 427, 432, 444, 460, 465, 472, 492, 510, 519,
- 538, 537, 552, 551, 582, 585, 592, 591, 602, 608,
- 617, 628, 634, 637, 645, 644, 655, 661, 673, 677,
- 682, 672, 703, 702, 715, 718, 724, 727, 739, 743,
- 738, 761, 760, 776, 777, 781, 785, 789, 793, 797,
- 801, 805, 809, 813, 817, 821, 825, 829, 833, 837,
- 841, 845, 849, 854, 860, 861, 865, 876, 880, 884,
- 888, 893, 897, 907, 911, 916, 924, 928, 929, 940,
- 944, 948, 952, 956, 964, 965, 971, 978, 984, 991,
- 994, 1001, 1007, 1024, 1031, 1032, 1039, 1040, 1059, 1060,
- 1063, 1066, 1070, 1081, 1090, 1096, 1099, 1102, 1109, 1110,
- 1116, 1129, 1144, 1152, 1164, 1169, 1175, 1176, 1177, 1178,
- 1179, 1180, 1186, 1187, 1188, 1189, 1195, 1196, 1197, 1198,
- 1199, 1205, 1206, 1209, 1212, 1213, 1214, 1215, 1216, 1219,
- 1220, 1233, 1237, 1242, 1247, 1252, 1256, 1257, 1260, 1266,
- 1273, 1279, 1286, 1292, 1303, 1317, 1346, 1386, 1411, 1429,
- 1438, 1441, 1449, 1453, 1457, 1464, 1470, 1475, 1487, 1490,
- 1500, 1501, 1507, 1508, 1514, 1518, 1524, 1525, 1531, 1535,
- 1541, 1564, 1569, 1575, 1581, 1588, 1597, 1606, 1621, 1627,
- 1632, 1636, 1643, 1656, 1657, 1663, 1669, 1672, 1676, 1682,
- 1685, 1694, 1697, 1698, 1702, 1703, 1709, 1710, 1711, 1712,
- 1713, 1715, 1714, 1729, 1734, 1738, 1742, 1746, 1750, 1755,
- 1774, 1780, 1788, 1792, 1798, 1802, 1808, 1812, 1818, 1822,
- 1831, 1835, 1839, 1843, 1849, 1852, 1860, 1861, 1863, 1864,
- 1867, 1870, 1873, 1876, 1879, 1882, 1885, 1888, 1891, 1894,
- 1897, 1900, 1903, 1906, 1912, 1916, 1920, 1924, 1928, 1932,
- 1952, 1959, 1970, 1971, 1972, 1975, 1976, 1979, 1983, 1993,
- 1997, 2001, 2005, 2009, 2013, 2017, 2023, 2029, 2037, 2045,
- 2051, 2058, 2074, 2096, 2100, 2106, 2109, 2112, 2116, 2126,
- 2130, 2145, 2153, 2154, 2166, 2167, 2170, 2174, 2180, 2184,
- 2190, 2194
+ 538, 537, 552, 551, 583, 586, 593, 592, 603, 609,
+ 618, 629, 635, 638, 646, 645, 656, 662, 674, 678,
+ 683, 673, 704, 703, 716, 719, 725, 728, 740, 744,
+ 739, 762, 761, 777, 778, 782, 786, 790, 794, 798,
+ 802, 806, 810, 814, 818, 822, 826, 830, 834, 838,
+ 842, 846, 850, 855, 861, 862, 866, 877, 881, 885,
+ 889, 894, 898, 908, 912, 917, 925, 929, 930, 941,
+ 945, 949, 953, 957, 965, 966, 972, 979, 985, 992,
+ 995, 1002, 1008, 1025, 1032, 1033, 1040, 1041, 1060, 1061,
+ 1064, 1067, 1071, 1082, 1091, 1097, 1100, 1103, 1110, 1111,
+ 1117, 1130, 1145, 1153, 1165, 1170, 1176, 1177, 1178, 1179,
+ 1180, 1181, 1187, 1188, 1189, 1190, 1196, 1197, 1198, 1199,
+ 1200, 1206, 1207, 1210, 1213, 1214, 1215, 1216, 1217, 1220,
+ 1221, 1234, 1238, 1243, 1248, 1253, 1257, 1258, 1261, 1267,
+ 1274, 1280, 1287, 1293, 1304, 1318, 1347, 1387, 1412, 1430,
+ 1439, 1442, 1450, 1454, 1458, 1465, 1471, 1476, 1488, 1491,
+ 1501, 1502, 1508, 1509, 1515, 1519, 1525, 1526, 1532, 1536,
+ 1542, 1565, 1570, 1576, 1582, 1589, 1598, 1607, 1622, 1628,
+ 1633, 1637, 1644, 1657, 1658, 1664, 1670, 1673, 1677, 1683,
+ 1686, 1695, 1698, 1699, 1703, 1704, 1710, 1711, 1712, 1713,
+ 1714, 1716, 1715, 1730, 1736, 1740, 1744, 1748, 1752, 1757,
+ 1776, 1782, 1790, 1794, 1800, 1804, 1810, 1814, 1820, 1824,
+ 1833, 1837, 1841, 1845, 1851, 1854, 1862, 1863, 1865, 1866,
+ 1869, 1872, 1875, 1878, 1881, 1884, 1887, 1890, 1893, 1896,
+ 1899, 1902, 1905, 1908, 1914, 1918, 1922, 1926, 1930, 1934,
+ 1954, 1961, 1972, 1973, 1974, 1977, 1978, 1981, 1985, 1995,
+ 1999, 2003, 2007, 2011, 2015, 2019, 2025, 2031, 2039, 2047,
+ 2053, 2060, 2076, 2098, 2102, 2108, 2111, 2114, 2118, 2128,
+ 2132, 2147, 2155, 2156, 2168, 2169, 2172, 2176, 2182, 2186,
+ 2192, 2196
};
#endif
// This is so that the stmt_list action doesn't look at
// the case tokens if the stmt_list is empty.
yylast = yychar;
+ (yyvsp[(1) - (1)].node)->xoffset = block;
}
break;
case 63:
/* Line 1806 of yacc.c */
-#line 562 "go.y"
+#line 563 "go.y"
{
int last;
case 64:
/* Line 1806 of yacc.c */
-#line 582 "go.y"
+#line 583 "go.y"
{
(yyval.list) = nil;
}
case 65:
/* Line 1806 of yacc.c */
-#line 586 "go.y"
+#line 587 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node));
}
case 66:
/* Line 1806 of yacc.c */
-#line 592 "go.y"
+#line 593 "go.y"
{
markdcl();
}
case 67:
/* Line 1806 of yacc.c */
-#line 596 "go.y"
+#line 597 "go.y"
{
(yyval.list) = (yyvsp[(3) - (4)].list);
popdcl();
case 68:
/* Line 1806 of yacc.c */
-#line 603 "go.y"
+#line 604 "go.y"
{
(yyval.node) = nod(ORANGE, N, (yyvsp[(4) - (4)].node));
(yyval.node)->list = (yyvsp[(1) - (4)].list);
case 69:
/* Line 1806 of yacc.c */
-#line 609 "go.y"
+#line 610 "go.y"
{
(yyval.node) = nod(ORANGE, N, (yyvsp[(4) - (4)].node));
(yyval.node)->list = (yyvsp[(1) - (4)].list);
case 70:
/* Line 1806 of yacc.c */
-#line 618 "go.y"
+#line 619 "go.y"
{
// init ; test ; incr
if((yyvsp[(5) - (5)].node) != N && (yyvsp[(5) - (5)].node)->colas != 0)
case 71:
/* Line 1806 of yacc.c */
-#line 629 "go.y"
+#line 630 "go.y"
{
// normal test
(yyval.node) = nod(OFOR, N, N);
case 73:
/* Line 1806 of yacc.c */
-#line 638 "go.y"
+#line 639 "go.y"
{
(yyval.node) = (yyvsp[(1) - (2)].node);
(yyval.node)->nbody = concat((yyval.node)->nbody, (yyvsp[(2) - (2)].list));
case 74:
/* Line 1806 of yacc.c */
-#line 645 "go.y"
+#line 646 "go.y"
{
markdcl();
}
case 75:
/* Line 1806 of yacc.c */
-#line 649 "go.y"
+#line 650 "go.y"
{
(yyval.node) = (yyvsp[(3) - (3)].node);
popdcl();
case 76:
/* Line 1806 of yacc.c */
-#line 656 "go.y"
+#line 657 "go.y"
{
// test
(yyval.node) = nod(OIF, N, N);
case 77:
/* Line 1806 of yacc.c */
-#line 662 "go.y"
+#line 663 "go.y"
{
// init ; test
(yyval.node) = nod(OIF, N, N);
case 78:
/* Line 1806 of yacc.c */
-#line 673 "go.y"
+#line 674 "go.y"
{
markdcl();
}
case 79:
/* Line 1806 of yacc.c */
-#line 677 "go.y"
+#line 678 "go.y"
{
if((yyvsp[(3) - (3)].node)->ntest == N)
yyerror("missing condition in if statement");
case 80:
/* Line 1806 of yacc.c */
-#line 682 "go.y"
+#line 683 "go.y"
{
(yyvsp[(3) - (5)].node)->nbody = (yyvsp[(5) - (5)].list);
}
case 81:
/* Line 1806 of yacc.c */
-#line 686 "go.y"
+#line 687 "go.y"
{
Node *n;
NodeList *nn;
case 82:
/* Line 1806 of yacc.c */
-#line 703 "go.y"
+#line 704 "go.y"
{
markdcl();
}
case 83:
/* Line 1806 of yacc.c */
-#line 707 "go.y"
+#line 708 "go.y"
{
if((yyvsp[(4) - (5)].node)->ntest == N)
yyerror("missing condition in if statement");
case 84:
/* Line 1806 of yacc.c */
-#line 715 "go.y"
+#line 716 "go.y"
{
(yyval.list) = nil;
}
case 85:
/* Line 1806 of yacc.c */
-#line 719 "go.y"
+#line 720 "go.y"
{
(yyval.list) = concat((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].list));
}
case 86:
/* Line 1806 of yacc.c */
-#line 724 "go.y"
+#line 725 "go.y"
{
(yyval.list) = nil;
}
case 87:
/* Line 1806 of yacc.c */
-#line 728 "go.y"
+#line 729 "go.y"
{
NodeList *node;
case 88:
/* Line 1806 of yacc.c */
-#line 739 "go.y"
+#line 740 "go.y"
{
markdcl();
}
case 89:
/* Line 1806 of yacc.c */
-#line 743 "go.y"
+#line 744 "go.y"
{
Node *n;
n = (yyvsp[(3) - (3)].node)->ntest;
case 90:
/* Line 1806 of yacc.c */
-#line 751 "go.y"
+#line 752 "go.y"
{
(yyval.node) = (yyvsp[(3) - (7)].node);
(yyval.node)->op = OSWITCH;
case 91:
/* Line 1806 of yacc.c */
-#line 761 "go.y"
+#line 762 "go.y"
{
typesw = nod(OXXX, typesw, N);
}
case 92:
/* Line 1806 of yacc.c */
-#line 765 "go.y"
+#line 766 "go.y"
{
(yyval.node) = nod(OSELECT, N, N);
(yyval.node)->lineno = typesw->lineno;
case 94:
/* Line 1806 of yacc.c */
-#line 778 "go.y"
+#line 779 "go.y"
{
(yyval.node) = nod(OOROR, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 95:
/* Line 1806 of yacc.c */
-#line 782 "go.y"
+#line 783 "go.y"
{
(yyval.node) = nod(OANDAND, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 96:
/* Line 1806 of yacc.c */
-#line 786 "go.y"
+#line 787 "go.y"
{
(yyval.node) = nod(OEQ, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 97:
/* Line 1806 of yacc.c */
-#line 790 "go.y"
+#line 791 "go.y"
{
(yyval.node) = nod(ONE, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 98:
/* Line 1806 of yacc.c */
-#line 794 "go.y"
+#line 795 "go.y"
{
(yyval.node) = nod(OLT, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 99:
/* Line 1806 of yacc.c */
-#line 798 "go.y"
+#line 799 "go.y"
{
(yyval.node) = nod(OLE, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 100:
/* Line 1806 of yacc.c */
-#line 802 "go.y"
+#line 803 "go.y"
{
(yyval.node) = nod(OGE, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 101:
/* Line 1806 of yacc.c */
-#line 806 "go.y"
+#line 807 "go.y"
{
(yyval.node) = nod(OGT, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 102:
/* Line 1806 of yacc.c */
-#line 810 "go.y"
+#line 811 "go.y"
{
(yyval.node) = nod(OADD, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 103:
/* Line 1806 of yacc.c */
-#line 814 "go.y"
+#line 815 "go.y"
{
(yyval.node) = nod(OSUB, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 104:
/* Line 1806 of yacc.c */
-#line 818 "go.y"
+#line 819 "go.y"
{
(yyval.node) = nod(OOR, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 105:
/* Line 1806 of yacc.c */
-#line 822 "go.y"
+#line 823 "go.y"
{
(yyval.node) = nod(OXOR, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 106:
/* Line 1806 of yacc.c */
-#line 826 "go.y"
+#line 827 "go.y"
{
(yyval.node) = nod(OMUL, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 107:
/* Line 1806 of yacc.c */
-#line 830 "go.y"
+#line 831 "go.y"
{
(yyval.node) = nod(ODIV, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 108:
/* Line 1806 of yacc.c */
-#line 834 "go.y"
+#line 835 "go.y"
{
(yyval.node) = nod(OMOD, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 109:
/* Line 1806 of yacc.c */
-#line 838 "go.y"
+#line 839 "go.y"
{
(yyval.node) = nod(OAND, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 110:
/* Line 1806 of yacc.c */
-#line 842 "go.y"
+#line 843 "go.y"
{
(yyval.node) = nod(OANDNOT, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 111:
/* Line 1806 of yacc.c */
-#line 846 "go.y"
+#line 847 "go.y"
{
(yyval.node) = nod(OLSH, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 112:
/* Line 1806 of yacc.c */
-#line 850 "go.y"
+#line 851 "go.y"
{
(yyval.node) = nod(ORSH, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 113:
/* Line 1806 of yacc.c */
-#line 855 "go.y"
+#line 856 "go.y"
{
(yyval.node) = nod(OSEND, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 115:
/* Line 1806 of yacc.c */
-#line 862 "go.y"
+#line 863 "go.y"
{
(yyval.node) = nod(OIND, (yyvsp[(2) - (2)].node), N);
}
case 116:
/* Line 1806 of yacc.c */
-#line 866 "go.y"
+#line 867 "go.y"
{
if((yyvsp[(2) - (2)].node)->op == OCOMPLIT) {
// Special case for &T{...}: turn into (*T){...}.
case 117:
/* Line 1806 of yacc.c */
-#line 877 "go.y"
+#line 878 "go.y"
{
(yyval.node) = nod(OPLUS, (yyvsp[(2) - (2)].node), N);
}
case 118:
/* Line 1806 of yacc.c */
-#line 881 "go.y"
+#line 882 "go.y"
{
(yyval.node) = nod(OMINUS, (yyvsp[(2) - (2)].node), N);
}
case 119:
/* Line 1806 of yacc.c */
-#line 885 "go.y"
+#line 886 "go.y"
{
(yyval.node) = nod(ONOT, (yyvsp[(2) - (2)].node), N);
}
case 120:
/* Line 1806 of yacc.c */
-#line 889 "go.y"
+#line 890 "go.y"
{
yyerror("the bitwise complement operator is ^");
(yyval.node) = nod(OCOM, (yyvsp[(2) - (2)].node), N);
case 121:
/* Line 1806 of yacc.c */
-#line 894 "go.y"
+#line 895 "go.y"
{
(yyval.node) = nod(OCOM, (yyvsp[(2) - (2)].node), N);
}
case 122:
/* Line 1806 of yacc.c */
-#line 898 "go.y"
+#line 899 "go.y"
{
(yyval.node) = nod(ORECV, (yyvsp[(2) - (2)].node), N);
}
case 123:
/* Line 1806 of yacc.c */
-#line 908 "go.y"
+#line 909 "go.y"
{
(yyval.node) = nod(OCALL, (yyvsp[(1) - (3)].node), N);
}
case 124:
/* Line 1806 of yacc.c */
-#line 912 "go.y"
+#line 913 "go.y"
{
(yyval.node) = nod(OCALL, (yyvsp[(1) - (5)].node), N);
(yyval.node)->list = (yyvsp[(3) - (5)].list);
case 125:
/* Line 1806 of yacc.c */
-#line 917 "go.y"
+#line 918 "go.y"
{
(yyval.node) = nod(OCALL, (yyvsp[(1) - (6)].node), N);
(yyval.node)->list = (yyvsp[(3) - (6)].list);
case 126:
/* Line 1806 of yacc.c */
-#line 925 "go.y"
+#line 926 "go.y"
{
(yyval.node) = nodlit((yyvsp[(1) - (1)].val));
}
case 128:
/* Line 1806 of yacc.c */
-#line 930 "go.y"
+#line 931 "go.y"
{
if((yyvsp[(1) - (3)].node)->op == OPACK) {
Sym *s;
case 129:
/* Line 1806 of yacc.c */
-#line 941 "go.y"
+#line 942 "go.y"
{
(yyval.node) = nod(ODOTTYPE, (yyvsp[(1) - (5)].node), (yyvsp[(4) - (5)].node));
}
case 130:
/* Line 1806 of yacc.c */
-#line 945 "go.y"
+#line 946 "go.y"
{
(yyval.node) = nod(OTYPESW, N, (yyvsp[(1) - (5)].node));
}
case 131:
/* Line 1806 of yacc.c */
-#line 949 "go.y"
+#line 950 "go.y"
{
(yyval.node) = nod(OINDEX, (yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node));
}
case 132:
/* Line 1806 of yacc.c */
-#line 953 "go.y"
+#line 954 "go.y"
{
(yyval.node) = nod(OSLICE, (yyvsp[(1) - (6)].node), nod(OKEY, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node)));
}
case 133:
/* Line 1806 of yacc.c */
-#line 957 "go.y"
+#line 958 "go.y"
{
if((yyvsp[(5) - (8)].node) == N)
yyerror("middle index required in 3-index slice");
case 135:
/* Line 1806 of yacc.c */
-#line 966 "go.y"
+#line 967 "go.y"
{
// conversion
(yyval.node) = nod(OCALL, (yyvsp[(1) - (5)].node), N);
case 136:
/* Line 1806 of yacc.c */
-#line 972 "go.y"
+#line 973 "go.y"
{
(yyval.node) = (yyvsp[(3) - (5)].node);
(yyval.node)->right = (yyvsp[(1) - (5)].node);
case 137:
/* Line 1806 of yacc.c */
-#line 979 "go.y"
+#line 980 "go.y"
{
(yyval.node) = (yyvsp[(3) - (5)].node);
(yyval.node)->right = (yyvsp[(1) - (5)].node);
case 138:
/* Line 1806 of yacc.c */
-#line 985 "go.y"
+#line 986 "go.y"
{
yyerror("cannot parenthesize type in composite literal");
(yyval.node) = (yyvsp[(5) - (7)].node);
case 140:
/* Line 1806 of yacc.c */
-#line 994 "go.y"
+#line 995 "go.y"
{
// composite expression.
// make node early so we get the right line number.
case 141:
/* Line 1806 of yacc.c */
-#line 1002 "go.y"
+#line 1003 "go.y"
{
(yyval.node) = nod(OKEY, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
}
case 142:
/* Line 1806 of yacc.c */
-#line 1008 "go.y"
+#line 1009 "go.y"
{
// These nodes do not carry line numbers.
// Since a composite literal commonly spans several lines,
case 143:
/* Line 1806 of yacc.c */
-#line 1025 "go.y"
+#line 1026 "go.y"
{
(yyval.node) = (yyvsp[(2) - (4)].node);
(yyval.node)->list = (yyvsp[(3) - (4)].list);
case 145:
/* Line 1806 of yacc.c */
-#line 1033 "go.y"
+#line 1034 "go.y"
{
(yyval.node) = (yyvsp[(2) - (4)].node);
(yyval.node)->list = (yyvsp[(3) - (4)].list);
case 147:
/* Line 1806 of yacc.c */
-#line 1041 "go.y"
+#line 1042 "go.y"
{
(yyval.node) = (yyvsp[(2) - (3)].node);
case 151:
/* Line 1806 of yacc.c */
-#line 1067 "go.y"
+#line 1068 "go.y"
{
(yyval.i) = LBODY;
}
case 152:
/* Line 1806 of yacc.c */
-#line 1071 "go.y"
+#line 1072 "go.y"
{
(yyval.i) = '{';
}
case 153:
/* Line 1806 of yacc.c */
-#line 1082 "go.y"
+#line 1083 "go.y"
{
if((yyvsp[(1) - (1)].sym) == S)
(yyval.node) = N;
case 154:
/* Line 1806 of yacc.c */
-#line 1091 "go.y"
+#line 1092 "go.y"
{
(yyval.node) = dclname((yyvsp[(1) - (1)].sym));
}
case 155:
/* Line 1806 of yacc.c */
-#line 1096 "go.y"
+#line 1097 "go.y"
{
(yyval.node) = N;
}
case 157:
/* Line 1806 of yacc.c */
-#line 1103 "go.y"
+#line 1104 "go.y"
{
(yyval.sym) = (yyvsp[(1) - (1)].sym);
// during imports, unqualified non-exported identifiers are from builtinpkg
case 159:
/* Line 1806 of yacc.c */
-#line 1111 "go.y"
+#line 1112 "go.y"
{
(yyval.sym) = S;
}
case 160:
/* Line 1806 of yacc.c */
-#line 1117 "go.y"
+#line 1118 "go.y"
{
Pkg *p;
case 161:
/* Line 1806 of yacc.c */
-#line 1130 "go.y"
+#line 1131 "go.y"
{
Pkg *p;
case 162:
/* Line 1806 of yacc.c */
-#line 1145 "go.y"
+#line 1146 "go.y"
{
(yyval.node) = oldname((yyvsp[(1) - (1)].sym));
if((yyval.node)->pack != N)
case 164:
/* Line 1806 of yacc.c */
-#line 1165 "go.y"
+#line 1166 "go.y"
{
yyerror("final argument in variadic function missing type");
(yyval.node) = nod(ODDD, typenod(typ(TINTER)), N);
case 165:
/* Line 1806 of yacc.c */
-#line 1170 "go.y"
+#line 1171 "go.y"
{
(yyval.node) = nod(ODDD, (yyvsp[(2) - (2)].node), N);
}
case 171:
/* Line 1806 of yacc.c */
-#line 1181 "go.y"
+#line 1182 "go.y"
{
(yyval.node) = nod(OTPAREN, (yyvsp[(2) - (3)].node), N);
}
case 175:
/* Line 1806 of yacc.c */
-#line 1190 "go.y"
+#line 1191 "go.y"
{
(yyval.node) = nod(OIND, (yyvsp[(2) - (2)].node), N);
}
case 180:
/* Line 1806 of yacc.c */
-#line 1200 "go.y"
+#line 1201 "go.y"
{
(yyval.node) = nod(OTPAREN, (yyvsp[(2) - (3)].node), N);
}
case 190:
/* Line 1806 of yacc.c */
-#line 1221 "go.y"
+#line 1222 "go.y"
{
if((yyvsp[(1) - (3)].node)->op == OPACK) {
Sym *s;
case 191:
/* Line 1806 of yacc.c */
-#line 1234 "go.y"
+#line 1235 "go.y"
{
(yyval.node) = nod(OTARRAY, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
}
case 192:
/* Line 1806 of yacc.c */
-#line 1238 "go.y"
+#line 1239 "go.y"
{
// array literal of nelem
(yyval.node) = nod(OTARRAY, nod(ODDD, N, N), (yyvsp[(4) - (4)].node));
case 193:
/* Line 1806 of yacc.c */
-#line 1243 "go.y"
+#line 1244 "go.y"
{
(yyval.node) = nod(OTCHAN, (yyvsp[(2) - (2)].node), N);
(yyval.node)->etype = Cboth;
case 194:
/* Line 1806 of yacc.c */
-#line 1248 "go.y"
+#line 1249 "go.y"
{
(yyval.node) = nod(OTCHAN, (yyvsp[(3) - (3)].node), N);
(yyval.node)->etype = Csend;
case 195:
/* Line 1806 of yacc.c */
-#line 1253 "go.y"
+#line 1254 "go.y"
{
(yyval.node) = nod(OTMAP, (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
}
case 198:
/* Line 1806 of yacc.c */
-#line 1261 "go.y"
+#line 1262 "go.y"
{
(yyval.node) = nod(OIND, (yyvsp[(2) - (2)].node), N);
}
case 199:
/* Line 1806 of yacc.c */
-#line 1267 "go.y"
+#line 1268 "go.y"
{
(yyval.node) = nod(OTCHAN, (yyvsp[(3) - (3)].node), N);
(yyval.node)->etype = Crecv;
case 200:
/* Line 1806 of yacc.c */
-#line 1274 "go.y"
+#line 1275 "go.y"
{
(yyval.node) = nod(OTSTRUCT, N, N);
(yyval.node)->list = (yyvsp[(3) - (5)].list);
case 201:
/* Line 1806 of yacc.c */
-#line 1280 "go.y"
+#line 1281 "go.y"
{
(yyval.node) = nod(OTSTRUCT, N, N);
fixlbrace((yyvsp[(2) - (3)].i));
case 202:
/* Line 1806 of yacc.c */
-#line 1287 "go.y"
+#line 1288 "go.y"
{
(yyval.node) = nod(OTINTER, N, N);
(yyval.node)->list = (yyvsp[(3) - (5)].list);
case 203:
/* Line 1806 of yacc.c */
-#line 1293 "go.y"
+#line 1294 "go.y"
{
(yyval.node) = nod(OTINTER, N, N);
fixlbrace((yyvsp[(2) - (3)].i));
case 204:
/* Line 1806 of yacc.c */
-#line 1304 "go.y"
+#line 1305 "go.y"
{
(yyval.node) = (yyvsp[(2) - (3)].node);
if((yyval.node) == N)
case 205:
/* Line 1806 of yacc.c */
-#line 1318 "go.y"
+#line 1319 "go.y"
{
Node *t;
case 206:
/* Line 1806 of yacc.c */
-#line 1347 "go.y"
+#line 1348 "go.y"
{
Node *rcvr, *t;
case 207:
/* Line 1806 of yacc.c */
-#line 1387 "go.y"
+#line 1388 "go.y"
{
Sym *s;
Type *t;
case 208:
/* Line 1806 of yacc.c */
-#line 1412 "go.y"
+#line 1413 "go.y"
{
(yyval.node) = methodname1(newname((yyvsp[(4) - (8)].sym)), (yyvsp[(2) - (8)].list)->n->right);
(yyval.node)->type = functype((yyvsp[(2) - (8)].list)->n, (yyvsp[(6) - (8)].list), (yyvsp[(8) - (8)].list));
case 209:
/* Line 1806 of yacc.c */
-#line 1430 "go.y"
+#line 1431 "go.y"
{
(yyvsp[(3) - (5)].list) = checkarglist((yyvsp[(3) - (5)].list), 1);
(yyval.node) = nod(OTFUNC, N, N);
case 210:
/* Line 1806 of yacc.c */
-#line 1438 "go.y"
+#line 1439 "go.y"
{
(yyval.list) = nil;
}
case 211:
/* Line 1806 of yacc.c */
-#line 1442 "go.y"
+#line 1443 "go.y"
{
(yyval.list) = (yyvsp[(2) - (3)].list);
if((yyval.list) == nil)
case 212:
/* Line 1806 of yacc.c */
-#line 1450 "go.y"
+#line 1451 "go.y"
{
(yyval.list) = nil;
}
case 213:
/* Line 1806 of yacc.c */
-#line 1454 "go.y"
+#line 1455 "go.y"
{
(yyval.list) = list1(nod(ODCLFIELD, N, (yyvsp[(1) - (1)].node)));
}
case 214:
/* Line 1806 of yacc.c */
-#line 1458 "go.y"
+#line 1459 "go.y"
{
(yyvsp[(2) - (3)].list) = checkarglist((yyvsp[(2) - (3)].list), 0);
(yyval.list) = (yyvsp[(2) - (3)].list);
case 215:
/* Line 1806 of yacc.c */
-#line 1465 "go.y"
+#line 1466 "go.y"
{
closurehdr((yyvsp[(1) - (1)].node));
}
case 216:
/* Line 1806 of yacc.c */
-#line 1471 "go.y"
+#line 1472 "go.y"
{
(yyval.node) = closurebody((yyvsp[(3) - (4)].list));
fixlbrace((yyvsp[(2) - (4)].i));
case 217:
/* Line 1806 of yacc.c */
-#line 1476 "go.y"
+#line 1477 "go.y"
{
(yyval.node) = closurebody(nil);
}
case 218:
/* Line 1806 of yacc.c */
-#line 1487 "go.y"
+#line 1488 "go.y"
{
(yyval.list) = nil;
}
case 219:
/* Line 1806 of yacc.c */
-#line 1491 "go.y"
+#line 1492 "go.y"
{
(yyval.list) = concat((yyvsp[(1) - (3)].list), (yyvsp[(2) - (3)].list));
if(nsyntaxerrors == 0)
case 221:
/* Line 1806 of yacc.c */
-#line 1502 "go.y"
+#line 1503 "go.y"
{
(yyval.list) = concat((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list));
}
case 223:
/* Line 1806 of yacc.c */
-#line 1509 "go.y"
+#line 1510 "go.y"
{
(yyval.list) = concat((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list));
}
case 224:
/* Line 1806 of yacc.c */
-#line 1515 "go.y"
+#line 1516 "go.y"
{
(yyval.list) = list1((yyvsp[(1) - (1)].node));
}
case 225:
/* Line 1806 of yacc.c */
-#line 1519 "go.y"
+#line 1520 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
}
case 227:
/* Line 1806 of yacc.c */
-#line 1526 "go.y"
+#line 1527 "go.y"
{
(yyval.list) = concat((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list));
}
case 228:
/* Line 1806 of yacc.c */
-#line 1532 "go.y"
+#line 1533 "go.y"
{
(yyval.list) = list1((yyvsp[(1) - (1)].node));
}
case 229:
/* Line 1806 of yacc.c */
-#line 1536 "go.y"
+#line 1537 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
}
case 230:
/* Line 1806 of yacc.c */
-#line 1542 "go.y"
+#line 1543 "go.y"
{
NodeList *l;
case 231:
/* Line 1806 of yacc.c */
-#line 1565 "go.y"
+#line 1566 "go.y"
{
(yyvsp[(1) - (2)].node)->val = (yyvsp[(2) - (2)].val);
(yyval.list) = list1((yyvsp[(1) - (2)].node));
case 232:
/* Line 1806 of yacc.c */
-#line 1570 "go.y"
+#line 1571 "go.y"
{
(yyvsp[(2) - (4)].node)->val = (yyvsp[(4) - (4)].val);
(yyval.list) = list1((yyvsp[(2) - (4)].node));
case 233:
/* Line 1806 of yacc.c */
-#line 1576 "go.y"
+#line 1577 "go.y"
{
(yyvsp[(2) - (3)].node)->right = nod(OIND, (yyvsp[(2) - (3)].node)->right, N);
(yyvsp[(2) - (3)].node)->val = (yyvsp[(3) - (3)].val);
case 234:
/* Line 1806 of yacc.c */
-#line 1582 "go.y"
+#line 1583 "go.y"
{
(yyvsp[(3) - (5)].node)->right = nod(OIND, (yyvsp[(3) - (5)].node)->right, N);
(yyvsp[(3) - (5)].node)->val = (yyvsp[(5) - (5)].val);
case 235:
/* Line 1806 of yacc.c */
-#line 1589 "go.y"
+#line 1590 "go.y"
{
(yyvsp[(3) - (5)].node)->right = nod(OIND, (yyvsp[(3) - (5)].node)->right, N);
(yyvsp[(3) - (5)].node)->val = (yyvsp[(5) - (5)].val);
case 236:
/* Line 1806 of yacc.c */
-#line 1598 "go.y"
+#line 1599 "go.y"
{
Node *n;
case 237:
/* Line 1806 of yacc.c */
-#line 1607 "go.y"
+#line 1608 "go.y"
{
Pkg *pkg;
case 238:
/* Line 1806 of yacc.c */
-#line 1622 "go.y"
+#line 1623 "go.y"
{
(yyval.node) = embedded((yyvsp[(1) - (1)].sym), localpkg);
}
case 239:
/* Line 1806 of yacc.c */
-#line 1628 "go.y"
+#line 1629 "go.y"
{
(yyval.node) = nod(ODCLFIELD, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
ifacedcl((yyval.node));
case 240:
/* Line 1806 of yacc.c */
-#line 1633 "go.y"
+#line 1634 "go.y"
{
(yyval.node) = nod(ODCLFIELD, N, oldname((yyvsp[(1) - (1)].sym)));
}
case 241:
/* Line 1806 of yacc.c */
-#line 1637 "go.y"
+#line 1638 "go.y"
{
(yyval.node) = nod(ODCLFIELD, N, oldname((yyvsp[(2) - (3)].sym)));
yyerror("cannot parenthesize embedded type");
case 242:
/* Line 1806 of yacc.c */
-#line 1644 "go.y"
+#line 1645 "go.y"
{
// without func keyword
(yyvsp[(2) - (4)].list) = checkarglist((yyvsp[(2) - (4)].list), 1);
case 244:
/* Line 1806 of yacc.c */
-#line 1658 "go.y"
+#line 1659 "go.y"
{
(yyval.node) = nod(ONONAME, N, N);
(yyval.node)->sym = (yyvsp[(1) - (2)].sym);
case 245:
/* Line 1806 of yacc.c */
-#line 1664 "go.y"
+#line 1665 "go.y"
{
(yyval.node) = nod(ONONAME, N, N);
(yyval.node)->sym = (yyvsp[(1) - (2)].sym);
case 247:
/* Line 1806 of yacc.c */
-#line 1673 "go.y"
+#line 1674 "go.y"
{
(yyval.list) = list1((yyvsp[(1) - (1)].node));
}
case 248:
/* Line 1806 of yacc.c */
-#line 1677 "go.y"
+#line 1678 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
}
case 249:
/* Line 1806 of yacc.c */
-#line 1682 "go.y"
+#line 1683 "go.y"
{
(yyval.list) = nil;
}
case 250:
/* Line 1806 of yacc.c */
-#line 1686 "go.y"
+#line 1687 "go.y"
{
(yyval.list) = (yyvsp[(1) - (2)].list);
}
case 251:
/* Line 1806 of yacc.c */
-#line 1694 "go.y"
+#line 1695 "go.y"
{
(yyval.node) = N;
}
case 253:
/* Line 1806 of yacc.c */
-#line 1699 "go.y"
+#line 1700 "go.y"
{
(yyval.node) = liststmt((yyvsp[(1) - (1)].list));
}
case 255:
/* Line 1806 of yacc.c */
-#line 1704 "go.y"
+#line 1705 "go.y"
{
(yyval.node) = N;
}
case 261:
/* Line 1806 of yacc.c */
-#line 1715 "go.y"
+#line 1716 "go.y"
{
(yyvsp[(1) - (2)].node) = nod(OLABEL, (yyvsp[(1) - (2)].node), N);
(yyvsp[(1) - (2)].node)->sym = dclstack; // context, for goto restrictions
case 262:
/* Line 1806 of yacc.c */
-#line 1720 "go.y"
+#line 1721 "go.y"
{
NodeList *l;
case 263:
/* Line 1806 of yacc.c */
-#line 1730 "go.y"
+#line 1731 "go.y"
{
// will be converted to OFALL
(yyval.node) = nod(OXFALL, N, N);
+ (yyval.node)->xoffset = block;
}
break;
case 264:
/* Line 1806 of yacc.c */
-#line 1735 "go.y"
+#line 1737 "go.y"
{
(yyval.node) = nod(OBREAK, (yyvsp[(2) - (2)].node), N);
}
case 265:
/* Line 1806 of yacc.c */
-#line 1739 "go.y"
+#line 1741 "go.y"
{
(yyval.node) = nod(OCONTINUE, (yyvsp[(2) - (2)].node), N);
}
case 266:
/* Line 1806 of yacc.c */
-#line 1743 "go.y"
+#line 1745 "go.y"
{
(yyval.node) = nod(OPROC, (yyvsp[(2) - (2)].node), N);
}
case 267:
/* Line 1806 of yacc.c */
-#line 1747 "go.y"
+#line 1749 "go.y"
{
(yyval.node) = nod(ODEFER, (yyvsp[(2) - (2)].node), N);
}
case 268:
/* Line 1806 of yacc.c */
-#line 1751 "go.y"
+#line 1753 "go.y"
{
(yyval.node) = nod(OGOTO, (yyvsp[(2) - (2)].node), N);
(yyval.node)->sym = dclstack; // context, for goto restrictions
case 269:
/* Line 1806 of yacc.c */
-#line 1756 "go.y"
+#line 1758 "go.y"
{
(yyval.node) = nod(ORETURN, N, N);
(yyval.node)->list = (yyvsp[(2) - (2)].list);
case 270:
/* Line 1806 of yacc.c */
-#line 1775 "go.y"
+#line 1777 "go.y"
{
(yyval.list) = nil;
if((yyvsp[(1) - (1)].node) != N)
case 271:
/* Line 1806 of yacc.c */
-#line 1781 "go.y"
+#line 1783 "go.y"
{
(yyval.list) = (yyvsp[(1) - (3)].list);
if((yyvsp[(3) - (3)].node) != N)
case 272:
/* Line 1806 of yacc.c */
-#line 1789 "go.y"
+#line 1791 "go.y"
{
(yyval.list) = list1((yyvsp[(1) - (1)].node));
}
case 273:
/* Line 1806 of yacc.c */
-#line 1793 "go.y"
+#line 1795 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
}
case 274:
/* Line 1806 of yacc.c */
-#line 1799 "go.y"
+#line 1801 "go.y"
{
(yyval.list) = list1((yyvsp[(1) - (1)].node));
}
case 275:
/* Line 1806 of yacc.c */
-#line 1803 "go.y"
+#line 1805 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
}
case 276:
/* Line 1806 of yacc.c */
-#line 1809 "go.y"
+#line 1811 "go.y"
{
(yyval.list) = list1((yyvsp[(1) - (1)].node));
}
case 277:
/* Line 1806 of yacc.c */
-#line 1813 "go.y"
+#line 1815 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
}
case 278:
/* Line 1806 of yacc.c */
-#line 1819 "go.y"
+#line 1821 "go.y"
{
(yyval.list) = list1((yyvsp[(1) - (1)].node));
}
case 279:
/* Line 1806 of yacc.c */
-#line 1823 "go.y"
+#line 1825 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
}
case 280:
/* Line 1806 of yacc.c */
-#line 1832 "go.y"
+#line 1834 "go.y"
{
(yyval.list) = list1((yyvsp[(1) - (1)].node));
}
case 281:
/* Line 1806 of yacc.c */
-#line 1836 "go.y"
+#line 1838 "go.y"
{
(yyval.list) = list1((yyvsp[(1) - (1)].node));
}
case 282:
/* Line 1806 of yacc.c */
-#line 1840 "go.y"
+#line 1842 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
}
case 283:
/* Line 1806 of yacc.c */
-#line 1844 "go.y"
+#line 1846 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
}
case 284:
/* Line 1806 of yacc.c */
-#line 1849 "go.y"
+#line 1851 "go.y"
{
(yyval.list) = nil;
}
case 285:
/* Line 1806 of yacc.c */
-#line 1853 "go.y"
+#line 1855 "go.y"
{
(yyval.list) = (yyvsp[(1) - (2)].list);
}
case 290:
/* Line 1806 of yacc.c */
-#line 1867 "go.y"
+#line 1869 "go.y"
{
(yyval.node) = N;
}
case 292:
/* Line 1806 of yacc.c */
-#line 1873 "go.y"
+#line 1875 "go.y"
{
(yyval.list) = nil;
}
case 294:
/* Line 1806 of yacc.c */
-#line 1879 "go.y"
+#line 1881 "go.y"
{
(yyval.node) = N;
}
case 296:
/* Line 1806 of yacc.c */
-#line 1885 "go.y"
+#line 1887 "go.y"
{
(yyval.list) = nil;
}
case 298:
/* Line 1806 of yacc.c */
-#line 1891 "go.y"
+#line 1893 "go.y"
{
(yyval.list) = nil;
}
case 300:
/* Line 1806 of yacc.c */
-#line 1897 "go.y"
+#line 1899 "go.y"
{
(yyval.list) = nil;
}
case 302:
/* Line 1806 of yacc.c */
-#line 1903 "go.y"
+#line 1905 "go.y"
{
(yyval.val).ctype = CTxxx;
}
case 304:
/* Line 1806 of yacc.c */
-#line 1913 "go.y"
+#line 1915 "go.y"
{
importimport((yyvsp[(2) - (4)].sym), (yyvsp[(3) - (4)].val).u.sval);
}
case 305:
/* Line 1806 of yacc.c */
-#line 1917 "go.y"
+#line 1919 "go.y"
{
importvar((yyvsp[(2) - (4)].sym), (yyvsp[(3) - (4)].type));
}
case 306:
/* Line 1806 of yacc.c */
-#line 1921 "go.y"
+#line 1923 "go.y"
{
importconst((yyvsp[(2) - (5)].sym), types[TIDEAL], (yyvsp[(4) - (5)].node));
}
case 307:
/* Line 1806 of yacc.c */
-#line 1925 "go.y"
+#line 1927 "go.y"
{
importconst((yyvsp[(2) - (6)].sym), (yyvsp[(3) - (6)].type), (yyvsp[(5) - (6)].node));
}
case 308:
/* Line 1806 of yacc.c */
-#line 1929 "go.y"
+#line 1931 "go.y"
{
importtype((yyvsp[(2) - (4)].type), (yyvsp[(3) - (4)].type));
}
case 309:
/* Line 1806 of yacc.c */
-#line 1933 "go.y"
+#line 1935 "go.y"
{
if((yyvsp[(2) - (4)].node) == N) {
dclcontext = PEXTERN; // since we skip the funcbody below
case 310:
/* Line 1806 of yacc.c */
-#line 1953 "go.y"
+#line 1955 "go.y"
{
(yyval.sym) = (yyvsp[(1) - (1)].sym);
structpkg = (yyval.sym)->pkg;
case 311:
/* Line 1806 of yacc.c */
-#line 1960 "go.y"
+#line 1962 "go.y"
{
(yyval.type) = pkgtype((yyvsp[(1) - (1)].sym));
importsym((yyvsp[(1) - (1)].sym), OTYPE);
case 317:
/* Line 1806 of yacc.c */
-#line 1980 "go.y"
+#line 1982 "go.y"
{
(yyval.type) = pkgtype((yyvsp[(1) - (1)].sym));
}
case 318:
/* Line 1806 of yacc.c */
-#line 1984 "go.y"
+#line 1986 "go.y"
{
// predefined name like uint8
(yyvsp[(1) - (1)].sym) = pkglookup((yyvsp[(1) - (1)].sym)->name, builtinpkg);
case 319:
/* Line 1806 of yacc.c */
-#line 1994 "go.y"
+#line 1996 "go.y"
{
(yyval.type) = aindex(N, (yyvsp[(3) - (3)].type));
}
case 320:
/* Line 1806 of yacc.c */
-#line 1998 "go.y"
+#line 2000 "go.y"
{
(yyval.type) = aindex(nodlit((yyvsp[(2) - (4)].val)), (yyvsp[(4) - (4)].type));
}
case 321:
/* Line 1806 of yacc.c */
-#line 2002 "go.y"
+#line 2004 "go.y"
{
(yyval.type) = maptype((yyvsp[(3) - (5)].type), (yyvsp[(5) - (5)].type));
}
case 322:
/* Line 1806 of yacc.c */
-#line 2006 "go.y"
+#line 2008 "go.y"
{
(yyval.type) = tostruct((yyvsp[(3) - (4)].list));
}
case 323:
/* Line 1806 of yacc.c */
-#line 2010 "go.y"
+#line 2012 "go.y"
{
(yyval.type) = tointerface((yyvsp[(3) - (4)].list));
}
case 324:
/* Line 1806 of yacc.c */
-#line 2014 "go.y"
+#line 2016 "go.y"
{
(yyval.type) = ptrto((yyvsp[(2) - (2)].type));
}
case 325:
/* Line 1806 of yacc.c */
-#line 2018 "go.y"
+#line 2020 "go.y"
{
(yyval.type) = typ(TCHAN);
(yyval.type)->type = (yyvsp[(2) - (2)].type);
case 326:
/* Line 1806 of yacc.c */
-#line 2024 "go.y"
+#line 2026 "go.y"
{
(yyval.type) = typ(TCHAN);
(yyval.type)->type = (yyvsp[(3) - (4)].type);
case 327:
/* Line 1806 of yacc.c */
-#line 2030 "go.y"
+#line 2032 "go.y"
{
(yyval.type) = typ(TCHAN);
(yyval.type)->type = (yyvsp[(3) - (3)].type);
case 328:
/* Line 1806 of yacc.c */
-#line 2038 "go.y"
+#line 2040 "go.y"
{
(yyval.type) = typ(TCHAN);
(yyval.type)->type = (yyvsp[(3) - (3)].type);
case 329:
/* Line 1806 of yacc.c */
-#line 2046 "go.y"
+#line 2048 "go.y"
{
(yyval.type) = functype(nil, (yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].list));
}
case 330:
/* Line 1806 of yacc.c */
-#line 2052 "go.y"
+#line 2054 "go.y"
{
(yyval.node) = nod(ODCLFIELD, N, typenod((yyvsp[(2) - (3)].type)));
if((yyvsp[(1) - (3)].sym))
case 331:
/* Line 1806 of yacc.c */
-#line 2059 "go.y"
+#line 2061 "go.y"
{
Type *t;
case 332:
/* Line 1806 of yacc.c */
-#line 2075 "go.y"
+#line 2077 "go.y"
{
Sym *s;
Pkg *p;
case 333:
/* Line 1806 of yacc.c */
-#line 2097 "go.y"
+#line 2099 "go.y"
{
(yyval.node) = nod(ODCLFIELD, newname((yyvsp[(1) - (5)].sym)), typenod(functype(fakethis(), (yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].list))));
}
case 334:
/* Line 1806 of yacc.c */
-#line 2101 "go.y"
+#line 2103 "go.y"
{
(yyval.node) = nod(ODCLFIELD, N, typenod((yyvsp[(1) - (1)].type)));
}
case 335:
/* Line 1806 of yacc.c */
-#line 2106 "go.y"
+#line 2108 "go.y"
{
(yyval.list) = nil;
}
case 337:
/* Line 1806 of yacc.c */
-#line 2113 "go.y"
+#line 2115 "go.y"
{
(yyval.list) = (yyvsp[(2) - (3)].list);
}
case 338:
/* Line 1806 of yacc.c */
-#line 2117 "go.y"
+#line 2119 "go.y"
{
(yyval.list) = list1(nod(ODCLFIELD, N, typenod((yyvsp[(1) - (1)].type))));
}
case 339:
/* Line 1806 of yacc.c */
-#line 2127 "go.y"
+#line 2129 "go.y"
{
(yyval.node) = nodlit((yyvsp[(1) - (1)].val));
}
case 340:
/* Line 1806 of yacc.c */
-#line 2131 "go.y"
+#line 2133 "go.y"
{
(yyval.node) = nodlit((yyvsp[(2) - (2)].val));
switch((yyval.node)->val.ctype){
case 341:
/* Line 1806 of yacc.c */
-#line 2146 "go.y"
+#line 2148 "go.y"
{
(yyval.node) = oldname(pkglookup((yyvsp[(1) - (1)].sym)->name, builtinpkg));
if((yyval.node)->op != OLITERAL)
case 343:
/* Line 1806 of yacc.c */
-#line 2155 "go.y"
+#line 2157 "go.y"
{
if((yyvsp[(2) - (5)].node)->val.ctype == CTRUNE && (yyvsp[(4) - (5)].node)->val.ctype == CTINT) {
(yyval.node) = (yyvsp[(2) - (5)].node);
case 346:
/* Line 1806 of yacc.c */
-#line 2171 "go.y"
+#line 2173 "go.y"
{
(yyval.list) = list1((yyvsp[(1) - (1)].node));
}
case 347:
/* Line 1806 of yacc.c */
-#line 2175 "go.y"
+#line 2177 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
}
case 348:
/* Line 1806 of yacc.c */
-#line 2181 "go.y"
+#line 2183 "go.y"
{
(yyval.list) = list1((yyvsp[(1) - (1)].node));
}
case 349:
/* Line 1806 of yacc.c */
-#line 2185 "go.y"
+#line 2187 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
}
case 350:
/* Line 1806 of yacc.c */
-#line 2191 "go.y"
+#line 2193 "go.y"
{
(yyval.list) = list1((yyvsp[(1) - (1)].node));
}
case 351:
/* Line 1806 of yacc.c */
-#line 2195 "go.y"
+#line 2197 "go.y"
{
(yyval.list) = list((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
}
/* Line 1806 of yacc.c */
-#line 5490 "y.tab.c"
+#line 5492 "y.tab.c"
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
/* Line 2067 of yacc.c */
-#line 2199 "go.y"
+#line 2201 "go.y"
static void