/* "%code top" blocks. */
#line 1 "src/parser_proc_grammar.y" /* glr.c:221 */
-#include "php_psi_stdinc.h"
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#else
+# include "php_config.h"
+#endif
-#line 57 "src/parser_proc.c" /* glr.c:221 */
+#line 61 "src/parser_proc.c" /* glr.c:221 */
/* Substitute the variable and function names. */
/* Unqualified %code blocks. */
-#line 5 "src/parser_proc_grammar.y" /* glr.c:261 */
+#line 9 "src/parser_proc_grammar.y" /* glr.c:261 */
#include <assert.h>
#include <stdarg.h>
/* end code */
-#line 184 "src/parser_proc.c" /* glr.c:261 */
+#line 188 "src/parser_proc.c" /* glr.c:261 */
#include <stdio.h>
#include <stdlib.h>
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const unsigned short yyrline[] =
{
- 0, 408, 408, 408, 408, 408, 408, 408, 408, 408,
- 408, 408, 408, 408, 408, 408, 408, 408, 408, 408,
- 409, 409, 409, 409, 410, 410, 410, 410, 410, 410,
- 410, 410, 410, 410, 410, 410, 410, 410, 410, 410,
- 410, 410, 410, 410, 410, 410, 411, 411, 411, 411,
- 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
- 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
- 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
- 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
- 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
- 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
- 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
- 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
- 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
- 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
- 411, 411, 411, 411, 411, 411, 411, 411, 411, 411,
- 411, 411, 411, 411, 412, 412, 412, 412, 412, 412,
- 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
- 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
- 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
- 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
- 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
+ 0, 412, 412, 412, 412, 412, 412, 412, 412, 412,
412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
- 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
- 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
- 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
- 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
- 412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
- 416, 417, 420, 421, 424, 425, 426, 427, 433, 437,
- 440, 443, 446, 452, 455, 458, 461, 464, 470, 476,
- 479, 485, 508, 512, 516, 521, 525, 529, 533, 540,
- 541, 545, 546, 550, 551, 552, 556, 557, 561, 562,
- 566, 567, 568, 572, 573, 577, 582, 587, 592, 601,
- 604, 607, 608, 614, 619, 627, 630, 634, 638, 645,
- 649, 653, 657, 662, 673, 684, 689, 694, 698, 704,
- 715, 718, 722, 730, 734, 740, 744, 751, 755, 759,
- 766, 767, 768, 772, 786, 792, 795, 801, 804, 810,
- 811, 819, 830, 839, 851, 852, 856, 866, 875, 887,
- 888, 891, 897, 898, 902, 906, 910, 915, 920, 928,
- 929, 930, 933, 939, 942, 945, 951, 952, 956, 959,
- 962, 968, 971, 974, 982, 994, 997, 1000, 1003, 1010,
- 1013, 1023, 1026, 1029, 1032, 1033, 1034, 1038, 1041, 1044,
- 1055, 1062, 1072, 1075, 1081, 1084, 1091, 1127, 1130, 1136,
- 1139, 1145, 1151, 1152, 1153, 1154, 1155, 1156, 1160, 1164,
- 1165, 1169, 1170, 1174, 1175, 1182, 1183, 1187, 1194, 1205,
- 1212, 1220, 1244, 1273, 1280, 1291, 1337, 1378, 1393, 1396,
- 1399, 1405, 1408, 1414, 1429, 1432, 1461, 1469, 1497, 1502,
- 1510, 1520, 1530, 1533, 1537, 1543, 1557, 1574, 1577, 1583,
- 1590, 1597, 1605, 1616, 1623, 1626, 1632, 1637, 1645, 1649,
- 1653, 1657, 1661, 1665, 1672, 1676, 1680, 1684, 1688, 1692,
- 1698, 1702, 1709, 1712, 1724, 1728, 1732, 1739, 1752, 1765,
- 1778, 1781, 1788, 1789, 1793, 1796, 1799, 1802, 1808, 1812,
- 1819, 1822, 1825, 1840, 1841, 1842, 1843, 1847, 1850, 1856,
- 1857, 1863, 1866, 1872, 1873, 1877, 1878, 1888, 1891, 1898,
- 1903, 1908, 1918, 1921, 1927, 1930, 1936, 1943, 1950, 1957,
- 1958, 1962, 1963, 1964, 1965, 1966, 1970, 1971, 1972, 1973,
- 1977, 1980, 1986, 1989, 1992, 1995, 1998, 2004, 2008, 2016,
- 2017, 2021, 2028, 2031, 2034, 2037, 2041, 2044, 2050, 2054,
- 2062, 2069, 2074, 2082, 2090, 2091, 2092, 2093, 2094, 2095,
- 2096, 2097, 2098, 2099, 2103, 2106, 2112, 2115, 2121, 2122,
- 2126, 2129, 2135, 2138, 2144, 2151, 2155, 2162, 2165, 2168,
- 2174, 2181, 2184, 2187, 2194, 2199, 2207, 2208, 2209, 2210,
- 2211, 2212, 2213, 2214, 2218, 2221, 2227, 2230, 2236, 2243,
- 2244, 2248, 2255, 2258, 2264, 2272, 2275, 2281
+ 413, 413, 413, 413, 414, 414, 414, 414, 414, 414,
+ 414, 414, 414, 414, 414, 414, 414, 414, 414, 414,
+ 414, 414, 414, 414, 414, 414, 415, 415, 415, 415,
+ 415, 415, 415, 415, 415, 415, 415, 415, 415, 415,
+ 415, 415, 415, 415, 415, 415, 415, 415, 415, 415,
+ 415, 415, 415, 415, 415, 415, 415, 415, 415, 415,
+ 415, 415, 415, 415, 415, 415, 415, 415, 415, 415,
+ 415, 415, 415, 415, 415, 415, 415, 415, 415, 415,
+ 415, 415, 415, 415, 415, 415, 415, 415, 415, 415,
+ 415, 415, 415, 415, 415, 415, 415, 415, 415, 415,
+ 415, 415, 415, 415, 415, 415, 415, 415, 415, 415,
+ 415, 415, 415, 415, 415, 415, 415, 415, 415, 415,
+ 415, 415, 415, 415, 415, 415, 415, 415, 415, 415,
+ 415, 415, 415, 415, 415, 415, 415, 415, 415, 415,
+ 415, 415, 415, 415, 416, 416, 416, 416, 416, 416,
+ 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 416, 416, 416, 416, 416, 416, 416, 416, 416, 416,
+ 420, 421, 424, 425, 428, 429, 430, 431, 437, 441,
+ 444, 447, 450, 456, 459, 462, 465, 468, 474, 480,
+ 483, 489, 512, 516, 520, 525, 529, 533, 537, 544,
+ 545, 549, 550, 554, 555, 556, 560, 561, 565, 566,
+ 570, 571, 572, 576, 577, 581, 586, 591, 596, 605,
+ 608, 611, 612, 618, 623, 631, 634, 638, 642, 649,
+ 653, 657, 661, 666, 677, 688, 693, 698, 702, 708,
+ 719, 722, 726, 734, 738, 744, 748, 755, 759, 763,
+ 770, 771, 772, 776, 790, 796, 799, 805, 808, 814,
+ 815, 823, 834, 843, 855, 856, 860, 870, 879, 891,
+ 892, 895, 901, 902, 906, 910, 914, 919, 924, 932,
+ 933, 934, 937, 943, 946, 949, 955, 956, 960, 963,
+ 966, 972, 975, 978, 986, 998, 1001, 1004, 1007, 1014,
+ 1017, 1027, 1030, 1033, 1036, 1037, 1038, 1042, 1045, 1048,
+ 1059, 1066, 1076, 1079, 1085, 1088, 1095, 1131, 1134, 1140,
+ 1143, 1149, 1155, 1156, 1157, 1158, 1159, 1160, 1164, 1168,
+ 1169, 1173, 1174, 1178, 1179, 1186, 1187, 1191, 1198, 1209,
+ 1216, 1224, 1248, 1277, 1284, 1295, 1341, 1382, 1397, 1400,
+ 1403, 1409, 1412, 1418, 1433, 1436, 1465, 1473, 1501, 1506,
+ 1514, 1524, 1534, 1537, 1541, 1547, 1561, 1578, 1581, 1587,
+ 1594, 1601, 1609, 1620, 1627, 1630, 1636, 1641, 1649, 1653,
+ 1657, 1661, 1665, 1669, 1676, 1680, 1684, 1688, 1692, 1696,
+ 1702, 1706, 1713, 1716, 1728, 1732, 1736, 1743, 1756, 1769,
+ 1782, 1785, 1792, 1793, 1797, 1800, 1803, 1806, 1812, 1816,
+ 1823, 1826, 1829, 1844, 1845, 1846, 1847, 1851, 1854, 1860,
+ 1861, 1867, 1870, 1876, 1877, 1881, 1882, 1892, 1895, 1902,
+ 1907, 1912, 1922, 1925, 1931, 1934, 1940, 1947, 1954, 1961,
+ 1962, 1966, 1967, 1968, 1969, 1970, 1974, 1975, 1976, 1977,
+ 1981, 1984, 1990, 1993, 1996, 1999, 2002, 2008, 2012, 2020,
+ 2021, 2025, 2032, 2035, 2038, 2041, 2045, 2048, 2054, 2058,
+ 2066, 2073, 2078, 2086, 2094, 2095, 2096, 2097, 2098, 2099,
+ 2100, 2101, 2102, 2103, 2107, 2110, 2116, 2119, 2125, 2126,
+ 2130, 2133, 2139, 2142, 2148, 2155, 2159, 2166, 2169, 2172,
+ 2178, 2185, 2188, 2191, 2198, 2203, 2211, 2212, 2213, 2214,
+ 2215, 2216, 2217, 2218, 2222, 2225, 2231, 2234, 2240, 2247,
+ 2248, 2252, 2259, 2262, 2268, 2276, 2279, 2285
};
#endif
switch (yyn)
{
case 287:
-#line 427 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 431 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if ((*(struct psi_cpp_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
psi_cpp_exp_exec((*(struct psi_cpp_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), P->preproc, PSI_DATA(P));
psi_cpp_exp_free(&(*(struct psi_cpp_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
}
-#line 4495 "src/parser_proc.c" /* glr.c:821 */
+#line 4499 "src/parser_proc.c" /* glr.c:821 */
break;
case 288:
-#line 433 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 437 "src/parser_proc_grammar.y" /* glr.c:821 */
{
char *libname = strdup((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text->val);
P->file.libnames = psi_plist_add(P->file.libnames, &libname);
}
-#line 4504 "src/parser_proc.c" /* glr.c:821 */
+#line 4508 "src/parser_proc.c" /* glr.c:821 */
break;
case 289:
-#line 437 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 441 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_const(P, (*(struct psi_const **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4512 "src/parser_proc.c" /* glr.c:821 */
+#line 4516 "src/parser_proc.c" /* glr.c:821 */
break;
case 290:
-#line 440 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 444 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_decl(P, (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4520 "src/parser_proc.c" /* glr.c:821 */
+#line 4524 "src/parser_proc.c" /* glr.c:821 */
break;
case 291:
-#line 443 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 447 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_decl_extvars(P, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4528 "src/parser_proc.c" /* glr.c:821 */
+#line 4532 "src/parser_proc.c" /* glr.c:821 */
break;
case 292:
-#line 446 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 450 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if (P->flags & PSI_DEBUG) {
P->error(PSI_DATA(P), (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->token, PSI_NOTICE, "Ignored decl: %s", (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->var->name->val);
}
psi_decl_free(&(*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4539 "src/parser_proc.c" /* glr.c:821 */
+#line 4543 "src/parser_proc.c" /* glr.c:821 */
break;
case 293:
-#line 452 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 456 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_typedef(P, (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4547 "src/parser_proc.c" /* glr.c:821 */
+#line 4551 "src/parser_proc.c" /* glr.c:821 */
break;
case 294:
-#line 455 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 459 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_struct(P, (*(struct psi_decl_struct **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4555 "src/parser_proc.c" /* glr.c:821 */
+#line 4559 "src/parser_proc.c" /* glr.c:821 */
break;
case 295:
-#line 458 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 462 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_union(P, (*(struct psi_decl_union **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4563 "src/parser_proc.c" /* glr.c:821 */
+#line 4567 "src/parser_proc.c" /* glr.c:821 */
break;
case 296:
-#line 461 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 465 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_enum(P, (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4571 "src/parser_proc.c" /* glr.c:821 */
+#line 4575 "src/parser_proc.c" /* glr.c:821 */
break;
case 297:
-#line 464 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 468 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_parser_proc_add_impl(P, (*(struct psi_impl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4579 "src/parser_proc.c" /* glr.c:821 */
+#line 4583 "src/parser_proc.c" /* glr.c:821 */
break;
case 298:
-#line 470 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 474 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 4587 "src/parser_proc.c" /* glr.c:821 */
+#line 4591 "src/parser_proc.c" /* glr.c:821 */
break;
case 299:
-#line 476 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 480 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_cpp_exp **)(&(*yyvalp))) = NULL;
}
-#line 4595 "src/parser_proc.c" /* glr.c:821 */
+#line 4599 "src/parser_proc.c" /* glr.c:821 */
break;
case 300:
-#line 479 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 483 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_cpp_exp **)(&(*yyvalp))) = (*(struct psi_cpp_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 4603 "src/parser_proc.c" /* glr.c:821 */
+#line 4607 "src/parser_proc.c" /* glr.c:821 */
break;
case 301:
-#line 485 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 489 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if ((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
struct psi_token *msg = NULL;
}
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 4631 "src/parser_proc.c" /* glr.c:821 */
+#line 4635 "src/parser_proc.c" /* glr.c:821 */
break;
case 302:
-#line 508 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 512 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_cpp_exp **)(&(*yyvalp))) = psi_cpp_exp_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))));
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 4640 "src/parser_proc.c" /* glr.c:821 */
+#line 4644 "src/parser_proc.c" /* glr.c:821 */
break;
case 303:
-#line 512 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 516 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_cpp_exp **)(&(*yyvalp))) = psi_cpp_exp_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, NULL);
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4649 "src/parser_proc.c" /* glr.c:821 */
+#line 4653 "src/parser_proc.c" /* glr.c:821 */
break;
case 304:
-#line 516 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 520 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_cpp_exp **)(&(*yyvalp))) = psi_cpp_exp_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))));
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 4659 "src/parser_proc.c" /* glr.c:821 */
+#line 4663 "src/parser_proc.c" /* glr.c:821 */
break;
case 305:
-#line 521 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 525 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_cpp_exp **)(&(*yyvalp))) = psi_cpp_exp_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, (*(struct psi_cpp_macro_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 4668 "src/parser_proc.c" /* glr.c:821 */
+#line 4672 "src/parser_proc.c" /* glr.c:821 */
break;
case 306:
-#line 525 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 529 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_cpp_exp **)(&(*yyvalp))) = psi_cpp_exp_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 4677 "src/parser_proc.c" /* glr.c:821 */
+#line 4681 "src/parser_proc.c" /* glr.c:821 */
break;
case 307:
-#line 529 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 533 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_cpp_exp **)(&(*yyvalp))) = psi_cpp_exp_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, NULL);
(*(struct psi_cpp_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4686 "src/parser_proc.c" /* glr.c:821 */
+#line 4690 "src/parser_proc.c" /* glr.c:821 */
break;
case 308:
-#line 533 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 537 "src/parser_proc_grammar.y" /* glr.c:821 */
{
psi_plist_free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_cpp_exp **)(&(*yyvalp))) = NULL;
}
-#line 4695 "src/parser_proc.c" /* glr.c:821 */
+#line 4699 "src/parser_proc.c" /* glr.c:821 */
break;
case 325:
-#line 577 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 581 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_cpp_macro_decl **)(&(*yyvalp))) = psi_cpp_macro_decl_init(NULL, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), NULL);
(*(struct psi_cpp_macro_decl **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 4705 "src/parser_proc.c" /* glr.c:821 */
+#line 4709 "src/parser_proc.c" /* glr.c:821 */
break;
case 326:
-#line 582 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 586 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_cpp_macro_decl **)(&(*yyvalp))) = psi_cpp_macro_decl_init((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), NULL);
(*(struct psi_cpp_macro_decl **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)));
}
-#line 4715 "src/parser_proc.c" /* glr.c:821 */
+#line 4719 "src/parser_proc.c" /* glr.c:821 */
break;
case 327:
-#line 587 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 591 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_cpp_macro_decl **)(&(*yyvalp))) = psi_cpp_macro_decl_init(NULL, psi_num_exp_tokens((*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), NULL), (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_cpp_macro_decl **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 4725 "src/parser_proc.c" /* glr.c:821 */
+#line 4729 "src/parser_proc.c" /* glr.c:821 */
break;
case 328:
-#line 592 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 596 "src/parser_proc_grammar.y" /* glr.c:821 */
{
struct psi_plist *list = psi_plist_init((psi_plist_dtor) psi_token_free);
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_cpp_macro_decl **)(&(*yyvalp))) = psi_cpp_macro_decl_init(NULL, psi_plist_add(list, &(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))), NULL);
(*(struct psi_cpp_macro_decl **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 4736 "src/parser_proc.c" /* glr.c:821 */
+#line 4740 "src/parser_proc.c" /* glr.c:821 */
break;
case 329:
-#line 601 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 605 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_init(NULL);
}
-#line 4744 "src/parser_proc.c" /* glr.c:821 */
+#line 4748 "src/parser_proc.c" /* glr.c:821 */
break;
case 330:
-#line 604 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 608 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_init(NULL); /* FIXME */
}
-#line 4752 "src/parser_proc.c" /* glr.c:821 */
+#line 4756 "src/parser_proc.c" /* glr.c:821 */
break;
case 332:
-#line 608 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 612 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
}
-#line 4760 "src/parser_proc.c" /* glr.c:821 */
+#line 4764 "src/parser_proc.c" /* glr.c:821 */
break;
case 333:
-#line 614 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 618 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_token_free), &(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4770 "src/parser_proc.c" /* glr.c:821 */
+#line 4774 "src/parser_proc.c" /* glr.c:821 */
break;
case 334:
-#line 619 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 623 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), &(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4780 "src/parser_proc.c" /* glr.c:821 */
+#line 4784 "src/parser_proc.c" /* glr.c:821 */
break;
case 335:
-#line 627 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 631 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 4788 "src/parser_proc.c" /* glr.c:821 */
+#line 4792 "src/parser_proc.c" /* glr.c:821 */
break;
case 337:
-#line 634 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 638 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_token_free), &(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4797 "src/parser_proc.c" /* glr.c:821 */
+#line 4801 "src/parser_proc.c" /* glr.c:821 */
break;
case 338:
-#line 638 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 642 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), &(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4806 "src/parser_proc.c" /* glr.c:821 */
+#line 4810 "src/parser_proc.c" /* glr.c:821 */
break;
case 339:
-#line 645 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 649 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_unary((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->type, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 4815 "src/parser_proc.c" /* glr.c:821 */
+#line 4819 "src/parser_proc.c" /* glr.c:821 */
break;
case 340:
-#line 649 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 653 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_unary((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 4824 "src/parser_proc.c" /* glr.c:821 */
+#line 4828 "src/parser_proc.c" /* glr.c:821 */
break;
case 341:
-#line 653 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 657 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_binary((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 4833 "src/parser_proc.c" /* glr.c:821 */
+#line 4837 "src/parser_proc.c" /* glr.c:821 */
break;
case 342:
-#line 657 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 661 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_ternary((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->type, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)), (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 4842 "src/parser_proc.c" /* glr.c:821 */
+#line 4846 "src/parser_proc.c" /* glr.c:821 */
break;
case 343:
-#line 662 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 666 "src/parser_proc_grammar.y" /* glr.c:821 */
{
{
uint8_t exists;
(*(struct psi_num_exp **)(&(*yyvalp)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
}
-#line 4858 "src/parser_proc.c" /* glr.c:821 */
+#line 4862 "src/parser_proc.c" /* glr.c:821 */
break;
case 344:
-#line 673 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 677 "src/parser_proc_grammar.y" /* glr.c:821 */
{
{
uint8_t exists;
(*(struct psi_num_exp **)(&(*yyvalp)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 4874 "src/parser_proc.c" /* glr.c:821 */
+#line 4878 "src/parser_proc.c" /* glr.c:821 */
break;
case 345:
-#line 684 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 688 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_num(psi_number_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->flags));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4884 "src/parser_proc.c" /* glr.c:821 */
+#line 4888 "src/parser_proc.c" /* glr.c:821 */
break;
case 346:
-#line 689 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 693 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_num(psi_number_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, 0));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4894 "src/parser_proc.c" /* glr.c:821 */
+#line 4898 "src/parser_proc.c" /* glr.c:821 */
break;
case 347:
-#line 694 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 698 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_num((*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
}
-#line 4903 "src/parser_proc.c" /* glr.c:821 */
+#line 4907 "src/parser_proc.c" /* glr.c:821 */
break;
case 348:
-#line 698 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 702 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_num(psi_number_init(PSI_T_DEFINE, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, 0));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4914 "src/parser_proc.c" /* glr.c:821 */
+#line 4918 "src/parser_proc.c" /* glr.c:821 */
break;
case 349:
-#line 704 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 708 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_num(psi_number_init(PSI_T_FUNCTION,
(*(struct psi_num_exp **)(&(*yyvalp)))->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->data.n->data.call->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 4927 "src/parser_proc.c" /* glr.c:821 */
+#line 4931 "src/parser_proc.c" /* glr.c:821 */
break;
case 350:
-#line 715 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 719 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 4935 "src/parser_proc.c" /* glr.c:821 */
+#line 4939 "src/parser_proc.c" /* glr.c:821 */
break;
case 352:
-#line 722 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 726 "src/parser_proc_grammar.y" /* glr.c:821 */
{
/* TODO: clang include test macros */
uint8_t no = 1;
exp->data.n->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_num_exp_free), &exp);
}
-#line 4948 "src/parser_proc.c" /* glr.c:821 */
+#line 4952 "src/parser_proc.c" /* glr.c:821 */
break;
case 353:
-#line 730 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 734 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_num_exp_free),
&(*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4957 "src/parser_proc.c" /* glr.c:821 */
+#line 4961 "src/parser_proc.c" /* glr.c:821 */
break;
case 354:
-#line 734 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 738 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), &(*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4965 "src/parser_proc.c" /* glr.c:821 */
+#line 4969 "src/parser_proc.c" /* glr.c:821 */
break;
case 355:
-#line 740 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 744 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_const **)(&(*yyvalp))) = psi_const_init((*(struct psi_impl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)), (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text, (*(struct psi_impl_def_val **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_const **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 4974 "src/parser_proc.c" /* glr.c:821 */
+#line 4978 "src/parser_proc.c" /* glr.c:821 */
break;
case 356:
-#line 744 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 748 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_const **)(&(*yyvalp))) = psi_const_init(NULL, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text, (*(struct psi_impl_def_val **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_const **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 4983 "src/parser_proc.c" /* glr.c:821 */
+#line 4987 "src/parser_proc.c" /* glr.c:821 */
break;
case 357:
-#line 751 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 755 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl_def_val **)(&(*yyvalp))) = psi_impl_def_val_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text);
(*(struct psi_impl_def_val **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 4992 "src/parser_proc.c" /* glr.c:821 */
+#line 4996 "src/parser_proc.c" /* glr.c:821 */
break;
case 358:
-#line 755 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 759 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl_def_val **)(&(*yyvalp))) = psi_impl_def_val_init(PSI_T_NUMBER, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_impl_def_val **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
}
-#line 5001 "src/parser_proc.c" /* glr.c:821 */
+#line 5005 "src/parser_proc.c" /* glr.c:821 */
break;
case 359:
-#line 759 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 763 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl_def_val **)(&(*yyvalp))) = psi_impl_def_val_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text);
(*(struct psi_impl_def_val **)(&(*yyvalp)))->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5010 "src/parser_proc.c" /* glr.c:821 */
+#line 5014 "src/parser_proc.c" /* glr.c:821 */
break;
case 363:
-#line 772 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 776 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 5018 "src/parser_proc.c" /* glr.c:821 */
+#line 5022 "src/parser_proc.c" /* glr.c:821 */
break;
case 364:
-#line 786 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 790 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 5026 "src/parser_proc.c" /* glr.c:821 */
+#line 5030 "src/parser_proc.c" /* glr.c:821 */
break;
case 365:
-#line 792 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 796 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5034 "src/parser_proc.c" /* glr.c:821 */
+#line 5038 "src/parser_proc.c" /* glr.c:821 */
break;
case 366:
-#line 795 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 799 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5042 "src/parser_proc.c" /* glr.c:821 */
+#line 5046 "src/parser_proc.c" /* glr.c:821 */
break;
case 367:
-#line 801 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 805 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5050 "src/parser_proc.c" /* glr.c:821 */
+#line 5054 "src/parser_proc.c" /* glr.c:821 */
break;
case 368:
-#line 804 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 808 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5058 "src/parser_proc.c" /* glr.c:821 */
+#line 5062 "src/parser_proc.c" /* glr.c:821 */
break;
case 370:
-#line 811 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 815 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
psi_decl_type_init(PSI_T_FUNCTION, (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->var->name),
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->token);
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.func = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5071 "src/parser_proc.c" /* glr.c:821 */
+#line 5075 "src/parser_proc.c" /* glr.c:821 */
break;
case 371:
-#line 819 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 823 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.enm = (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
psi_parser_proc_add_enum(P, (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 5087 "src/parser_proc.c" /* glr.c:821 */
+#line 5091 "src/parser_proc.c" /* glr.c:821 */
break;
case 372:
-#line 830 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 834 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(psi_decl_type_init(PSI_T_STRUCT, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text), (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.strct->size = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)).len;
psi_parser_proc_add_struct(P, (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.strct);
}
-#line 5101 "src/parser_proc.c" /* glr.c:821 */
+#line 5105 "src/parser_proc.c" /* glr.c:821 */
break;
case 373:
-#line 839 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 843 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(psi_decl_type_init(PSI_T_UNION, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text), (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.unn->size = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)).len;
psi_parser_proc_add_union(P, (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.unn);
}
-#line 5115 "src/parser_proc.c" /* glr.c:821 */
+#line 5119 "src/parser_proc.c" /* glr.c:821 */
break;
case 375:
-#line 852 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 856 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init((*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), psi_decl_var_init(NULL, 0, 0));
(*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
}
-#line 5124 "src/parser_proc.c" /* glr.c:821 */
+#line 5128 "src/parser_proc.c" /* glr.c:821 */
break;
case 376:
-#line 856 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 860 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
psi_decl_type_init(PSI_T_ENUM, (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->name),
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.enm = (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
psi_parser_proc_add_enum(P, (*(struct psi_decl_enum **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5139 "src/parser_proc.c" /* glr.c:821 */
+#line 5143 "src/parser_proc.c" /* glr.c:821 */
break;
case 377:
-#line 866 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 870 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(psi_decl_type_init(PSI_T_STRUCT, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->text), psi_decl_var_init(NULL, 0, 0));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.strct->size = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)).len;
psi_parser_proc_add_struct(P, (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.strct);
}
-#line 5153 "src/parser_proc.c" /* glr.c:821 */
+#line 5157 "src/parser_proc.c" /* glr.c:821 */
break;
case 378:
-#line 875 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 879 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(psi_decl_type_init(PSI_T_UNION, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->text), psi_decl_var_init(NULL, 0, 0));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.unn->size = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)).len;
psi_parser_proc_add_union(P, (*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.unn);
}
-#line 5167 "src/parser_proc.c" /* glr.c:821 */
+#line 5171 "src/parser_proc.c" /* glr.c:821 */
break;
case 380:
-#line 888 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 892 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_type **)(&(*yyvalp))) = (*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5175 "src/parser_proc.c" /* glr.c:821 */
+#line 5179 "src/parser_proc.c" /* glr.c:821 */
break;
case 381:
-#line 891 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 895 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_type **)(&(*yyvalp))) = (*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 5183 "src/parser_proc.c" /* glr.c:821 */
+#line 5187 "src/parser_proc.c" /* glr.c:821 */
break;
case 384:
-#line 902 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 906 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_type **)(&(*yyvalp))) = psi_decl_type_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text);
(*(struct psi_decl_type **)(&(*yyvalp)))->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5192 "src/parser_proc.c" /* glr.c:821 */
+#line 5196 "src/parser_proc.c" /* glr.c:821 */
break;
case 386:
-#line 910 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 914 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_type **)(&(*yyvalp))) = psi_decl_type_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text);
(*(struct psi_decl_type **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5202 "src/parser_proc.c" /* glr.c:821 */
+#line 5206 "src/parser_proc.c" /* glr.c:821 */
break;
case 387:
-#line 915 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 919 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_type **)(&(*yyvalp))) = psi_decl_type_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text);
(*(struct psi_decl_type **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5212 "src/parser_proc.c" /* glr.c:821 */
+#line 5216 "src/parser_proc.c" /* glr.c:821 */
break;
case 388:
-#line 920 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 924 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_type **)(&(*yyvalp))) = psi_decl_type_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text);
(*(struct psi_decl_type **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5222 "src/parser_proc.c" /* glr.c:821 */
+#line 5226 "src/parser_proc.c" /* glr.c:821 */
break;
case 391:
-#line 930 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 934 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5230 "src/parser_proc.c" /* glr.c:821 */
+#line 5234 "src/parser_proc.c" /* glr.c:821 */
break;
case 392:
-#line 933 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 937 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5238 "src/parser_proc.c" /* glr.c:821 */
+#line 5242 "src/parser_proc.c" /* glr.c:821 */
break;
case 393:
-#line 939 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 943 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5246 "src/parser_proc.c" /* glr.c:821 */
+#line 5250 "src/parser_proc.c" /* glr.c:821 */
break;
case 394:
-#line 942 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 946 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5254 "src/parser_proc.c" /* glr.c:821 */
+#line 5258 "src/parser_proc.c" /* glr.c:821 */
break;
case 395:
-#line 945 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 949 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_cat(" ", 2, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5262 "src/parser_proc.c" /* glr.c:821 */
+#line 5266 "src/parser_proc.c" /* glr.c:821 */
break;
case 398:
-#line 956 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 960 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5270 "src/parser_proc.c" /* glr.c:821 */
+#line 5274 "src/parser_proc.c" /* glr.c:821 */
break;
case 399:
-#line 959 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 963 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5278 "src/parser_proc.c" /* glr.c:821 */
+#line 5282 "src/parser_proc.c" /* glr.c:821 */
break;
case 400:
-#line 962 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 966 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_cat(" ", 2, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5286 "src/parser_proc.c" /* glr.c:821 */
+#line 5290 "src/parser_proc.c" /* glr.c:821 */
break;
case 401:
-#line 968 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 972 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5294 "src/parser_proc.c" /* glr.c:821 */
+#line 5298 "src/parser_proc.c" /* glr.c:821 */
break;
case 402:
-#line 971 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 975 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5302 "src/parser_proc.c" /* glr.c:821 */
+#line 5306 "src/parser_proc.c" /* glr.c:821 */
break;
case 403:
-#line 974 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 978 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_cat(" ", 2, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 5315 "src/parser_proc.c" /* glr.c:821 */
+#line 5319 "src/parser_proc.c" /* glr.c:821 */
break;
case 404:
-#line 982 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 986 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_cat(" ", 2, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
}
-#line 5329 "src/parser_proc.c" /* glr.c:821 */
+#line 5333 "src/parser_proc.c" /* glr.c:821 */
break;
case 405:
-#line 994 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 998 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 5337 "src/parser_proc.c" /* glr.c:821 */
+#line 5341 "src/parser_proc.c" /* glr.c:821 */
break;
case 406:
-#line 997 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1001 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5345 "src/parser_proc.c" /* glr.c:821 */
+#line 5349 "src/parser_proc.c" /* glr.c:821 */
break;
case 407:
-#line 1000 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1004 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5353 "src/parser_proc.c" /* glr.c:821 */
+#line 5357 "src/parser_proc.c" /* glr.c:821 */
break;
case 408:
-#line 1003 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1007 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_cat(" ", 2, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 5365 "src/parser_proc.c" /* glr.c:821 */
+#line 5369 "src/parser_proc.c" /* glr.c:821 */
break;
case 409:
-#line 1010 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1014 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5373 "src/parser_proc.c" /* glr.c:821 */
+#line 5377 "src/parser_proc.c" /* glr.c:821 */
break;
case 410:
-#line 1013 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1017 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_cat(" ", 2, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 5385 "src/parser_proc.c" /* glr.c:821 */
+#line 5389 "src/parser_proc.c" /* glr.c:821 */
break;
case 411:
-#line 1023 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1027 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 5393 "src/parser_proc.c" /* glr.c:821 */
+#line 5397 "src/parser_proc.c" /* glr.c:821 */
break;
case 413:
-#line 1029 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1033 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 5401 "src/parser_proc.c" /* glr.c:821 */
+#line 5405 "src/parser_proc.c" /* glr.c:821 */
break;
case 417:
-#line 1038 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1042 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 5409 "src/parser_proc.c" /* glr.c:821 */
+#line 5413 "src/parser_proc.c" /* glr.c:821 */
break;
case 418:
-#line 1041 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1045 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5417 "src/parser_proc.c" /* glr.c:821 */
+#line 5421 "src/parser_proc.c" /* glr.c:821 */
break;
case 419:
-#line 1044 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1048 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_cat(" ", 2, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 5430 "src/parser_proc.c" /* glr.c:821 */
+#line 5434 "src/parser_proc.c" /* glr.c:821 */
break;
case 420:
-#line 1055 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1059 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl **)(&(*yyvalp))) = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))) {
psi_token_free(&(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 5442 "src/parser_proc.c" /* glr.c:821 */
+#line 5446 "src/parser_proc.c" /* glr.c:821 */
break;
case 421:
-#line 1062 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1066 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl **)(&(*yyvalp))) = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))) {
psi_token_free(&(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 5454 "src/parser_proc.c" /* glr.c:821 */
+#line 5458 "src/parser_proc.c" /* glr.c:821 */
break;
case 422:
-#line 1072 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1076 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 5462 "src/parser_proc.c" /* glr.c:821 */
+#line 5466 "src/parser_proc.c" /* glr.c:821 */
break;
case 423:
-#line 1075 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1079 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 5470 "src/parser_proc.c" /* glr.c:821 */
+#line 5474 "src/parser_proc.c" /* glr.c:821 */
break;
case 424:
-#line 1081 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1085 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5478 "src/parser_proc.c" /* glr.c:821 */
+#line 5482 "src/parser_proc.c" /* glr.c:821 */
break;
case 425:
-#line 1084 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1088 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = psi_token_cat("", 2, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
psi_token_free(&(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 5487 "src/parser_proc.c" /* glr.c:821 */
+#line 5491 "src/parser_proc.c" /* glr.c:821 */
break;
case 426:
-#line 1091 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1095 "src/parser_proc_grammar.y" /* glr.c:821 */
{
struct psi_plist *list = psi_plist_init((psi_plist_dtor) psi_decl_extvar_free);
(*(struct psi_plist **)(&(*yyvalp))) = list;
}
-#line 5525 "src/parser_proc.c" /* glr.c:821 */
+#line 5529 "src/parser_proc.c" /* glr.c:821 */
break;
case 427:
-#line 1127 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1131 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 5533 "src/parser_proc.c" /* glr.c:821 */
+#line 5537 "src/parser_proc.c" /* glr.c:821 */
break;
case 428:
-#line 1130 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1134 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5541 "src/parser_proc.c" /* glr.c:821 */
+#line 5545 "src/parser_proc.c" /* glr.c:821 */
break;
case 429:
-#line 1136 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1140 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_decl_var_free), &(*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5549 "src/parser_proc.c" /* glr.c:821 */
+#line 5553 "src/parser_proc.c" /* glr.c:821 */
break;
case 430:
-#line 1139 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1143 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), &(*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5557 "src/parser_proc.c" /* glr.c:821 */
+#line 5561 "src/parser_proc.c" /* glr.c:821 */
break;
case 431:
-#line 1145 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1149 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl **)(&(*yyvalp))) = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 5565 "src/parser_proc.c" /* glr.c:821 */
+#line 5569 "src/parser_proc.c" /* glr.c:821 */
break;
case 444:
-#line 1175 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1179 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl **)(&(*yyvalp))) = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_decl **)(&(*yyvalp)))->abi = psi_decl_abi_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text);
}
-#line 5574 "src/parser_proc.c" /* glr.c:821 */
+#line 5578 "src/parser_proc.c" /* glr.c:821 */
break;
case 447:
-#line 1187 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1191 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 5586 "src/parser_proc.c" /* glr.c:821 */
+#line 5590 "src/parser_proc.c" /* glr.c:821 */
break;
case 448:
-#line 1194 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1198 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)));
(*(struct psi_decl **)(&(*yyvalp)))->varargs = 1;
(*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 5599 "src/parser_proc.c" /* glr.c:821 */
+#line 5603 "src/parser_proc.c" /* glr.c:821 */
break;
case 449:
-#line 1205 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1209 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 5611 "src/parser_proc.c" /* glr.c:821 */
+#line 5615 "src/parser_proc.c" /* glr.c:821 */
break;
case 450:
-#line 1212 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1216 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)));
(*(struct psi_decl **)(&(*yyvalp)))->varargs = 1;
(*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 5624 "src/parser_proc.c" /* glr.c:821 */
+#line 5628 "src/parser_proc.c" /* glr.c:821 */
break;
case 451:
-#line 1220 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1224 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(void) (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-9)].yystate.yysemantics.yysval));
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-8)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init(func, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)));
}
-#line 5653 "src/parser_proc.c" /* glr.c:821 */
+#line 5657 "src/parser_proc.c" /* glr.c:821 */
break;
case 452:
-#line 1244 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1248 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(void) (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-12)].yystate.yysemantics.yysval));
(void) (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-10)].yystate.yysemantics.yysval));
(*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init(func, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)));
}
-#line 5684 "src/parser_proc.c" /* glr.c:821 */
+#line 5688 "src/parser_proc.c" /* glr.c:821 */
break;
case 453:
-#line 1273 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1277 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 5696 "src/parser_proc.c" /* glr.c:821 */
+#line 5700 "src/parser_proc.c" /* glr.c:821 */
break;
case 454:
-#line 1280 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1284 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl **)(&(*yyvalp))) = psi_decl_init((*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)));
(*(struct psi_decl **)(&(*yyvalp)))->varargs = 1;
(*(struct psi_decl **)(&(*yyvalp)))->func->var->array_size = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
}
-#line 5709 "src/parser_proc.c" /* glr.c:821 */
+#line 5713 "src/parser_proc.c" /* glr.c:821 */
break;
case 455:
-#line 1291 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1295 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(void) (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_decl_arg **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 5721 "src/parser_proc.c" /* glr.c:821 */
+#line 5725 "src/parser_proc.c" /* glr.c:821 */
break;
case 456:
-#line 1337 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1341 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(void) (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init((*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)), psi_decl_var_init(NULL, (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)), 0));
(*(struct psi_decl_arg **)(&(*yyvalp)))->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
(*(struct psi_decl_arg **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 5732 "src/parser_proc.c" /* glr.c:821 */
+#line 5736 "src/parser_proc.c" /* glr.c:821 */
break;
case 458:
-#line 1393 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1397 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 5740 "src/parser_proc.c" /* glr.c:821 */
+#line 5744 "src/parser_proc.c" /* glr.c:821 */
break;
case 459:
-#line 1396 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1400 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 5748 "src/parser_proc.c" /* glr.c:821 */
+#line 5752 "src/parser_proc.c" /* glr.c:821 */
break;
case 460:
-#line 1399 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1403 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5756 "src/parser_proc.c" /* glr.c:821 */
+#line 5760 "src/parser_proc.c" /* glr.c:821 */
break;
case 461:
-#line 1405 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1409 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_decl_arg_free), &(*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5764 "src/parser_proc.c" /* glr.c:821 */
+#line 5768 "src/parser_proc.c" /* glr.c:821 */
break;
case 462:
-#line 1408 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1412 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), &(*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5772 "src/parser_proc.c" /* glr.c:821 */
+#line 5776 "src/parser_proc.c" /* glr.c:821 */
break;
case 463:
-#line 1414 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1418 "src/parser_proc_grammar.y" /* glr.c:821 */
{
char digest[17];
struct psi_token *name;
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->token);
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.func = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5792 "src/parser_proc.c" /* glr.c:821 */
+#line 5796 "src/parser_proc.c" /* glr.c:821 */
break;
case 464:
-#line 1429 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1433 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = (*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5800 "src/parser_proc.c" /* glr.c:821 */
+#line 5804 "src/parser_proc.c" /* glr.c:821 */
break;
case 465:
-#line 1432 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1436 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
(*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)),
psi_decl_var_init(NULL, (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)))
);
}
-#line 5811 "src/parser_proc.c" /* glr.c:821 */
+#line 5815 "src/parser_proc.c" /* glr.c:821 */
break;
case 466:
-#line 1461 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1465 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init(
psi_decl_type_init(PSI_T_FUNCTION, (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->var->name),
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->token = psi_token_copy((*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->func->token);
(*(struct psi_decl_arg **)(&(*yyvalp)))->type->real.func = (*(struct psi_decl **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5824 "src/parser_proc.c" /* glr.c:821 */
+#line 5828 "src/parser_proc.c" /* glr.c:821 */
break;
case 467:
-#line 1469 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1473 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&(*yyvalp))) = psi_decl_arg_init((*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 5832 "src/parser_proc.c" /* glr.c:821 */
+#line 5836 "src/parser_proc.c" /* glr.c:821 */
break;
case 468:
-#line 1497 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1501 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_var **)(&(*yyvalp))) = psi_decl_var_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text, (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)) + !! (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_decl_var **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 5842 "src/parser_proc.c" /* glr.c:821 */
+#line 5846 "src/parser_proc.c" /* glr.c:821 */
break;
case 469:
-#line 1502 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1506 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_var **)(&(*yyvalp))) = psi_decl_var_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text, !! (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_decl_var **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 5852 "src/parser_proc.c" /* glr.c:821 */
+#line 5856 "src/parser_proc.c" /* glr.c:821 */
break;
case 470:
-#line 1510 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1514 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_union **)(&(*yyvalp))) = psi_decl_union_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->text, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_decl_union **)(&(*yyvalp)))->size = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)).len;
(*(struct psi_decl_union **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 5864 "src/parser_proc.c" /* glr.c:821 */
+#line 5868 "src/parser_proc.c" /* glr.c:821 */
break;
case 471:
-#line 1520 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1524 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_struct **)(&(*yyvalp))) = psi_decl_struct_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->text, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_decl_struct **)(&(*yyvalp)))->size = (*(struct psi_layout*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)).len;
(*(struct psi_decl_struct **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 5876 "src/parser_proc.c" /* glr.c:821 */
+#line 5880 "src/parser_proc.c" /* glr.c:821 */
break;
case 472:
-#line 1530 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1534 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 5884 "src/parser_proc.c" /* glr.c:821 */
+#line 5888 "src/parser_proc.c" /* glr.c:821 */
break;
case 474:
-#line 1537 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1541 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 5892 "src/parser_proc.c" /* glr.c:821 */
+#line 5896 "src/parser_proc.c" /* glr.c:821 */
break;
case 475:
-#line 1543 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1547 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->layout = (*(struct psi_layout **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_decl_arg_free), &(*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 5911 "src/parser_proc.c" /* glr.c:821 */
+#line 5915 "src/parser_proc.c" /* glr.c:821 */
break;
case 476:
-#line 1557 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1561 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->layout = (*(struct psi_layout **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)), &(*(struct psi_decl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
free((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
}
-#line 5930 "src/parser_proc.c" /* glr.c:821 */
+#line 5934 "src/parser_proc.c" /* glr.c:821 */
break;
case 477:
-#line 1574 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1578 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 5938 "src/parser_proc.c" /* glr.c:821 */
+#line 5942 "src/parser_proc.c" /* glr.c:821 */
break;
case 478:
-#line 1577 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1581 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 5946 "src/parser_proc.c" /* glr.c:821 */
+#line 5950 "src/parser_proc.c" /* glr.c:821 */
break;
case 479:
-#line 1583 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1587 "src/parser_proc_grammar.y" /* glr.c:821 */
{
{
struct psi_decl_arg *arg = psi_decl_arg_init(NULL, (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_decl_arg_free), &arg);
}
}
-#line 5958 "src/parser_proc.c" /* glr.c:821 */
+#line 5962 "src/parser_proc.c" /* glr.c:821 */
break;
case 480:
-#line 1590 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1594 "src/parser_proc_grammar.y" /* glr.c:821 */
{
{
struct psi_decl_arg *arg = psi_decl_arg_init(NULL, (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)), &arg);
}
}
-#line 5970 "src/parser_proc.c" /* glr.c:821 */
+#line 5974 "src/parser_proc.c" /* glr.c:821 */
break;
case 481:
-#line 1597 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1601 "src/parser_proc_grammar.y" /* glr.c:821 */
{
{
struct psi_decl_var *var = psi_decl_var_init(NULL, 0, 0);
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_decl_arg_free), &arg);
}
}
-#line 5983 "src/parser_proc.c" /* glr.c:821 */
+#line 5987 "src/parser_proc.c" /* glr.c:821 */
break;
case 482:
-#line 1605 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1609 "src/parser_proc_grammar.y" /* glr.c:821 */
{
{
struct psi_decl_var *var = psi_decl_var_init(NULL, 0, 0);
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), &arg);
}
}
-#line 5996 "src/parser_proc.c" /* glr.c:821 */
+#line 6000 "src/parser_proc.c" /* glr.c:821 */
break;
case 483:
-#line 1616 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1620 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_decl_enum **)(&(*yyvalp))) = psi_decl_enum_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval))->text, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
(*(struct psi_decl_enum **)(&(*yyvalp)))->token = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval));
}
-#line 6005 "src/parser_proc.c" /* glr.c:821 */
+#line 6009 "src/parser_proc.c" /* glr.c:821 */
break;
case 484:
-#line 1623 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1627 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_decl_enum_item_free), &(*(struct psi_decl_enum_item **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6013 "src/parser_proc.c" /* glr.c:821 */
+#line 6017 "src/parser_proc.c" /* glr.c:821 */
break;
case 485:
-#line 1626 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1630 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), &(*(struct psi_decl_enum_item **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6021 "src/parser_proc.c" /* glr.c:821 */
+#line 6025 "src/parser_proc.c" /* glr.c:821 */
break;
case 486:
-#line 1632 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1636 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_enum_item **)(&(*yyvalp))) = psi_decl_enum_item_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, NULL);
(*(struct psi_decl_enum_item **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6031 "src/parser_proc.c" /* glr.c:821 */
+#line 6035 "src/parser_proc.c" /* glr.c:821 */
break;
case 487:
-#line 1637 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1641 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_decl_enum_item **)(&(*yyvalp))) = psi_decl_enum_item_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->text, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_decl_enum_item **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 6041 "src/parser_proc.c" /* glr.c:821 */
+#line 6045 "src/parser_proc.c" /* glr.c:821 */
break;
case 488:
-#line 1645 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1649 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_num((*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
}
-#line 6050 "src/parser_proc.c" /* glr.c:821 */
+#line 6054 "src/parser_proc.c" /* glr.c:821 */
break;
case 489:
-#line 1649 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1653 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_cast((*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->token);
}
-#line 6059 "src/parser_proc.c" /* glr.c:821 */
+#line 6063 "src/parser_proc.c" /* glr.c:821 */
break;
case 490:
-#line 1653 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1657 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_unary(PSI_T_LPAREN, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 6068 "src/parser_proc.c" /* glr.c:821 */
+#line 6072 "src/parser_proc.c" /* glr.c:821 */
break;
case 491:
-#line 1657 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1661 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_binary((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 6077 "src/parser_proc.c" /* glr.c:821 */
+#line 6081 "src/parser_proc.c" /* glr.c:821 */
break;
case 492:
-#line 1661 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1665 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_unary((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->type, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 6086 "src/parser_proc.c" /* glr.c:821 */
+#line 6090 "src/parser_proc.c" /* glr.c:821 */
break;
case 493:
-#line 1665 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1669 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_num_exp **)(&(*yyvalp))) = psi_num_exp_init_ternary((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->type, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)), (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_num_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 6095 "src/parser_proc.c" /* glr.c:821 */
+#line 6099 "src/parser_proc.c" /* glr.c:821 */
break;
case 494:
-#line 1672 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1676 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_number **)(&(*yyvalp))) = psi_number_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->flags);
(*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6104 "src/parser_proc.c" /* glr.c:821 */
+#line 6108 "src/parser_proc.c" /* glr.c:821 */
break;
case 495:
-#line 1676 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1680 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_number **)(&(*yyvalp))) = psi_number_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, 0);
(*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6113 "src/parser_proc.c" /* glr.c:821 */
+#line 6117 "src/parser_proc.c" /* glr.c:821 */
break;
case 496:
-#line 1680 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1684 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_number **)(&(*yyvalp))) = psi_number_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, 0);
(*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6122 "src/parser_proc.c" /* glr.c:821 */
+#line 6126 "src/parser_proc.c" /* glr.c:821 */
break;
case 497:
-#line 1684 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1688 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_number **)(&(*yyvalp))) = psi_number_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, 0);
(*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6131 "src/parser_proc.c" /* glr.c:821 */
+#line 6135 "src/parser_proc.c" /* glr.c:821 */
break;
case 498:
-#line 1688 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1692 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_NAME, (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), 0);
(*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
}
-#line 6140 "src/parser_proc.c" /* glr.c:821 */
+#line 6144 "src/parser_proc.c" /* glr.c:821 */
break;
case 499:
-#line 1692 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1696 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_number **)(&(*yyvalp))) = (*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 6148 "src/parser_proc.c" /* glr.c:821 */
+#line 6152 "src/parser_proc.c" /* glr.c:821 */
break;
case 500:
-#line 1698 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1702 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_number **)(&(*yyvalp))) = (*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
(*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 6157 "src/parser_proc.c" /* glr.c:821 */
+#line 6161 "src/parser_proc.c" /* glr.c:821 */
break;
case 501:
-#line 1702 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1706 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_number **)(&(*yyvalp))) = (*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_number **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 6166 "src/parser_proc.c" /* glr.c:821 */
+#line 6170 "src/parser_proc.c" /* glr.c:821 */
break;
case 502:
-#line 1709 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1713 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_number **)(&(*yyvalp))) = (*(struct psi_number **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 6174 "src/parser_proc.c" /* glr.c:821 */
+#line 6178 "src/parser_proc.c" /* glr.c:821 */
break;
case 503:
-#line 1712 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1716 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if ((*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
int8_t sizeof_void_p = sizeof(void *);
(*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_SIZEOF, (*(struct psi_decl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), 0);
}
}
-#line 6188 "src/parser_proc.c" /* glr.c:821 */
+#line 6192 "src/parser_proc.c" /* glr.c:821 */
break;
case 504:
-#line 1724 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1728 "src/parser_proc_grammar.y" /* glr.c:821 */
{
int8_t sizeof_void_p = sizeof(void *);
(*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_INT8, &sizeof_void_p, 0);
}
-#line 6197 "src/parser_proc.c" /* glr.c:821 */
+#line 6201 "src/parser_proc.c" /* glr.c:821 */
break;
case 505:
-#line 1728 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1732 "src/parser_proc_grammar.y" /* glr.c:821 */
{
int8_t sizeof_a = sizeof('a');
(*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_INT8, &sizeof_a, 0);
}
-#line 6206 "src/parser_proc.c" /* glr.c:821 */
+#line 6210 "src/parser_proc.c" /* glr.c:821 */
break;
case 506:
-#line 1732 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1736 "src/parser_proc_grammar.y" /* glr.c:821 */
{
uint64_t len = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text->len + 1;
(*(struct psi_number **)(&(*yyvalp))) = psi_number_init(PSI_T_UINT64, &len, 0);
}
-#line 6215 "src/parser_proc.c" /* glr.c:821 */
+#line 6219 "src/parser_proc.c" /* glr.c:821 */
break;
case 507:
-#line 1739 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1743 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_append("@", psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))), 1, digest);
}
}
-#line 6230 "src/parser_proc.c" /* glr.c:821 */
+#line 6234 "src/parser_proc.c" /* glr.c:821 */
break;
case 508:
-#line 1752 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1756 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_append("@", psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))), 1, digest);
}
}
-#line 6245 "src/parser_proc.c" /* glr.c:821 */
+#line 6249 "src/parser_proc.c" /* glr.c:821 */
break;
case 509:
-#line 1765 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1769 "src/parser_proc_grammar.y" /* glr.c:821 */
{
if ((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))) {
(*(struct psi_token **)(&(*yyvalp))) = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_token **)(&(*yyvalp))) = psi_token_append("@", psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))), 1, digest);
}
}
-#line 6260 "src/parser_proc.c" /* glr.c:821 */
+#line 6264 "src/parser_proc.c" /* glr.c:821 */
break;
case 510:
-#line 1778 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1782 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = NULL;
}
-#line 6268 "src/parser_proc.c" /* glr.c:821 */
+#line 6272 "src/parser_proc.c" /* glr.c:821 */
break;
case 511:
-#line 1781 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1785 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&(*yyvalp))) = (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_token **)(&(*yyvalp)))->type = PSI_T_NAME;
}
-#line 6277 "src/parser_proc.c" /* glr.c:821 */
+#line 6281 "src/parser_proc.c" /* glr.c:821 */
break;
case 514:
-#line 1793 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1797 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_layout **)(&(*yyvalp))) = NULL;
}
-#line 6285 "src/parser_proc.c" /* glr.c:821 */
+#line 6289 "src/parser_proc.c" /* glr.c:821 */
break;
case 515:
-#line 1796 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1800 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_layout **)(&(*yyvalp))) = psi_layout_init(0, 0, psi_layout_init(0, atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text->val), NULL));
}
-#line 6293 "src/parser_proc.c" /* glr.c:821 */
+#line 6297 "src/parser_proc.c" /* glr.c:821 */
break;
case 516:
-#line 1799 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1803 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_layout **)(&(*yyvalp))) = psi_layout_init(atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text->val), atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text->val), NULL);
}
-#line 6301 "src/parser_proc.c" /* glr.c:821 */
+#line 6305 "src/parser_proc.c" /* glr.c:821 */
break;
case 517:
-#line 1802 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1806 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_layout **)(&(*yyvalp))) = psi_layout_init(atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text->val), atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text->val), psi_layout_init(0, atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-7)].yystate.yysemantics.yysval))->text->val), NULL));
}
-#line 6309 "src/parser_proc.c" /* glr.c:821 */
+#line 6313 "src/parser_proc.c" /* glr.c:821 */
break;
case 518:
-#line 1808 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1812 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_layout*)(&(*yyvalp))).pos = 0;
(*(struct psi_layout*)(&(*yyvalp))).len = 0;
}
-#line 6318 "src/parser_proc.c" /* glr.c:821 */
+#line 6322 "src/parser_proc.c" /* glr.c:821 */
break;
case 519:
-#line 1812 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1816 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_layout*)(&(*yyvalp))).pos = atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text->val);
(*(struct psi_layout*)(&(*yyvalp))).len = atol((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))->text->val);
}
-#line 6327 "src/parser_proc.c" /* glr.c:821 */
+#line 6331 "src/parser_proc.c" /* glr.c:821 */
break;
case 520:
-#line 1819 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1823 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = 0;
}
-#line 6335 "src/parser_proc.c" /* glr.c:821 */
+#line 6339 "src/parser_proc.c" /* glr.c:821 */
break;
case 521:
-#line 1822 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1826 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = 0;
}
-#line 6343 "src/parser_proc.c" /* glr.c:821 */
+#line 6347 "src/parser_proc.c" /* glr.c:821 */
break;
case 522:
-#line 1825 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1829 "src/parser_proc_grammar.y" /* glr.c:821 */
{
struct psi_validate_scope scope = {0};
psi_validate_scope_ctor(&scope);
psi_num_exp_free(&(*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
psi_validate_scope_dtor(&scope);
}
-#line 6360 "src/parser_proc.c" /* glr.c:821 */
+#line 6364 "src/parser_proc.c" /* glr.c:821 */
break;
case 527:
-#line 1847 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1851 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = 0;
}
-#line 6368 "src/parser_proc.c" /* glr.c:821 */
+#line 6372 "src/parser_proc.c" /* glr.c:821 */
break;
case 528:
-#line 1850 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1854 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 6376 "src/parser_proc.c" /* glr.c:821 */
+#line 6380 "src/parser_proc.c" /* glr.c:821 */
break;
case 530:
-#line 1857 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1861 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 6384 "src/parser_proc.c" /* glr.c:821 */
+#line 6388 "src/parser_proc.c" /* glr.c:821 */
break;
case 531:
-#line 1863 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1867 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = 1;
}
-#line 6392 "src/parser_proc.c" /* glr.c:821 */
+#line 6396 "src/parser_proc.c" /* glr.c:821 */
break;
case 532:
-#line 1866 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1870 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(size_t*)(&(*yyvalp))) = (*(size_t*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)) + 1;
}
-#line 6400 "src/parser_proc.c" /* glr.c:821 */
+#line 6404 "src/parser_proc.c" /* glr.c:821 */
break;
case 537:
-#line 1888 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1892 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl **)(&(*yyvalp))) = psi_impl_init((*(struct psi_impl_func **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
}
-#line 6408 "src/parser_proc.c" /* glr.c:821 */
+#line 6412 "src/parser_proc.c" /* glr.c:821 */
break;
case 538:
-#line 1891 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1895 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl **)(&(*yyvalp))) = psi_impl_init((*(struct psi_impl_func **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_impl_func **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->static_memory = 1;
}
-#line 6417 "src/parser_proc.c" /* glr.c:821 */
+#line 6421 "src/parser_proc.c" /* glr.c:821 */
break;
case 539:
-#line 1898 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1902 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl_func **)(&(*yyvalp))) = psi_impl_func_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval))->text, NULL, (*(struct psi_impl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_impl_func **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)));
(*(struct psi_impl_func **)(&(*yyvalp)))->return_reference = (*(bool*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval));
}
-#line 6427 "src/parser_proc.c" /* glr.c:821 */
+#line 6431 "src/parser_proc.c" /* glr.c:821 */
break;
case 540:
-#line 1903 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1907 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl_func **)(&(*yyvalp))) = psi_impl_func_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval))->text, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)), (*(struct psi_impl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_impl_func **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)));
(*(struct psi_impl_func **)(&(*yyvalp)))->return_reference = (*(bool*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval));
}
-#line 6437 "src/parser_proc.c" /* glr.c:821 */
+#line 6441 "src/parser_proc.c" /* glr.c:821 */
break;
case 541:
-#line 1908 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1912 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl_func **)(&(*yyvalp))) = psi_impl_func_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-10)].yystate.yysemantics.yysval))->text, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-8)].yystate.yysemantics.yysval)), (*(struct psi_impl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_impl_func **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-10)].yystate.yysemantics.yysval)));
(*(struct psi_impl_func **)(&(*yyvalp)))->vararg = psi_impl_arg_init((*(struct psi_impl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)), psi_impl_var_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text, (*(bool*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval))), NULL);
(*(struct psi_impl_func **)(&(*yyvalp)))->vararg->var->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 6449 "src/parser_proc.c" /* glr.c:821 */
+#line 6453 "src/parser_proc.c" /* glr.c:821 */
break;
case 542:
-#line 1918 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1922 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_impl_arg_free), &(*(struct psi_impl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6457 "src/parser_proc.c" /* glr.c:821 */
+#line 6461 "src/parser_proc.c" /* glr.c:821 */
break;
case 543:
-#line 1921 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1925 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), &(*(struct psi_impl_arg **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6465 "src/parser_proc.c" /* glr.c:821 */
+#line 6469 "src/parser_proc.c" /* glr.c:821 */
break;
case 544:
-#line 1927 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1931 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl_arg **)(&(*yyvalp))) = psi_impl_arg_init((*(struct psi_impl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), (*(struct psi_impl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)), NULL);
}
-#line 6473 "src/parser_proc.c" /* glr.c:821 */
+#line 6477 "src/parser_proc.c" /* glr.c:821 */
break;
case 545:
-#line 1930 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1934 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl_arg **)(&(*yyvalp))) = psi_impl_arg_init((*(struct psi_impl_type **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)), (*(struct psi_impl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), (*(struct psi_impl_def_val **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6481 "src/parser_proc.c" /* glr.c:821 */
+#line 6485 "src/parser_proc.c" /* glr.c:821 */
break;
case 546:
-#line 1936 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1940 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl_var **)(&(*yyvalp))) = psi_impl_var_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text, (*(bool*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_impl_var **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6490 "src/parser_proc.c" /* glr.c:821 */
+#line 6494 "src/parser_proc.c" /* glr.c:821 */
break;
case 547:
-#line 1943 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1947 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl_type **)(&(*yyvalp))) = psi_impl_type_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text);
(*(struct psi_impl_type **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6499 "src/parser_proc.c" /* glr.c:821 */
+#line 6503 "src/parser_proc.c" /* glr.c:821 */
break;
case 548:
-#line 1950 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1954 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_impl_type **)(&(*yyvalp))) = psi_impl_type_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->text);
(*(struct psi_impl_type **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6508 "src/parser_proc.c" /* glr.c:821 */
+#line 6512 "src/parser_proc.c" /* glr.c:821 */
break;
case 560:
-#line 1977 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1981 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_impl_stmt_free), &(*(struct psi_token ***)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6516 "src/parser_proc.c" /* glr.c:821 */
+#line 6520 "src/parser_proc.c" /* glr.c:821 */
break;
case 561:
-#line 1980 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1984 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)), &(*(struct psi_token ***)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6524 "src/parser_proc.c" /* glr.c:821 */
+#line 6528 "src/parser_proc.c" /* glr.c:821 */
break;
case 562:
-#line 1986 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1990 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_return_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 6532 "src/parser_proc.c" /* glr.c:821 */
+#line 6536 "src/parser_proc.c" /* glr.c:821 */
break;
case 563:
-#line 1989 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1993 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_let_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 6540 "src/parser_proc.c" /* glr.c:821 */
+#line 6544 "src/parser_proc.c" /* glr.c:821 */
break;
case 564:
-#line 1992 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1996 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_set_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 6548 "src/parser_proc.c" /* glr.c:821 */
+#line 6552 "src/parser_proc.c" /* glr.c:821 */
break;
case 565:
-#line 1995 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 1999 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_assert_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 6556 "src/parser_proc.c" /* glr.c:821 */
+#line 6560 "src/parser_proc.c" /* glr.c:821 */
break;
case 566:
-#line 1998 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2002 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token ***)(&(*yyvalp))) = (struct psi_token **) (*(struct psi_free_stmt **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 6564 "src/parser_proc.c" /* glr.c:821 */
+#line 6568 "src/parser_proc.c" /* glr.c:821 */
break;
case 567:
-#line 2004 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2008 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_stmt **)(&(*yyvalp))) = psi_let_stmt_init((*(struct psi_let_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_let_stmt **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 6573 "src/parser_proc.c" /* glr.c:821 */
+#line 6577 "src/parser_proc.c" /* glr.c:821 */
break;
case 568:
-#line 2008 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2012 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_stmt **)(&(*yyvalp))) = psi_let_stmt_init(psi_let_exp_init_ex((*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)), PSI_LET_TMP, (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval))));
(*(struct psi_let_stmt **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)));
(*(struct psi_let_stmt **)(&(*yyvalp)))->exp->is_reference = (*(bool*)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
}
-#line 6583 "src/parser_proc.c" /* glr.c:821 */
+#line 6587 "src/parser_proc.c" /* glr.c:821 */
break;
case 570:
-#line 2017 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2021 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = (*(struct psi_let_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_let_exp **)(&(*yyvalp)))->is_reference = true;
}
-#line 6592 "src/parser_proc.c" /* glr.c:821 */
+#line 6596 "src/parser_proc.c" /* glr.c:821 */
break;
case 571:
-#line 2021 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2025 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = (*(struct psi_let_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_let_exp **)(&(*yyvalp)))->is_reference = false;
}
-#line 6601 "src/parser_proc.c" /* glr.c:821 */
+#line 6605 "src/parser_proc.c" /* glr.c:821 */
break;
case 572:
-#line 2028 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2032 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = psi_let_exp_init(PSI_LET_NULL, NULL);
}
-#line 6609 "src/parser_proc.c" /* glr.c:821 */
+#line 6613 "src/parser_proc.c" /* glr.c:821 */
break;
case 573:
-#line 2031 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2035 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = psi_let_exp_init_ex(NULL, PSI_LET_NUMEXP, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6617 "src/parser_proc.c" /* glr.c:821 */
+#line 6621 "src/parser_proc.c" /* glr.c:821 */
break;
case 574:
-#line 2034 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2038 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = psi_let_exp_init(PSI_LET_CALLOC, (*(struct psi_let_calloc **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6625 "src/parser_proc.c" /* glr.c:821 */
+#line 6629 "src/parser_proc.c" /* glr.c:821 */
break;
case 575:
-#line 2037 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2041 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = psi_let_exp_init(PSI_LET_CALLOC, (*(struct psi_let_calloc **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
(*(struct psi_let_calloc **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->static_memory = 1;
}
-#line 6634 "src/parser_proc.c" /* glr.c:821 */
+#line 6638 "src/parser_proc.c" /* glr.c:821 */
break;
case 576:
-#line 2041 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2045 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = psi_let_exp_init(PSI_LET_CALLBACK, (*(struct psi_let_callback **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6642 "src/parser_proc.c" /* glr.c:821 */
+#line 6646 "src/parser_proc.c" /* glr.c:821 */
break;
case 577:
-#line 2044 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2048 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = psi_let_exp_init_ex(NULL, PSI_LET_FUNC, (*(struct psi_let_func **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6650 "src/parser_proc.c" /* glr.c:821 */
+#line 6654 "src/parser_proc.c" /* glr.c:821 */
break;
case 578:
-#line 2050 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2054 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = (*(struct psi_let_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_let_exp **)(&(*yyvalp)))->var = (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
}
-#line 6659 "src/parser_proc.c" /* glr.c:821 */
+#line 6663 "src/parser_proc.c" /* glr.c:821 */
break;
case 579:
-#line 2054 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2058 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_exp **)(&(*yyvalp))) = (*(struct psi_let_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_let_exp **)(&(*yyvalp)))->is_reference = 1;
(*(struct psi_let_exp **)(&(*yyvalp)))->var = (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval));
}
-#line 6669 "src/parser_proc.c" /* glr.c:821 */
+#line 6673 "src/parser_proc.c" /* glr.c:821 */
break;
case 580:
-#line 2062 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2066 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_calloc **)(&(*yyvalp))) = psi_let_calloc_init((*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)), (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_let_calloc **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)));
}
-#line 6678 "src/parser_proc.c" /* glr.c:821 */
+#line 6682 "src/parser_proc.c" /* glr.c:821 */
break;
case 581:
-#line 2069 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2073 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_callback **)(&(*yyvalp))) = psi_let_callback_init(psi_let_func_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval))->text, (*(struct psi_impl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval))), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), NULL);
(*(struct psi_let_callback **)(&(*yyvalp)))->func->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)));
(*(struct psi_let_callback **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-7)].yystate.yysemantics.yysval)));
}
-#line 6688 "src/parser_proc.c" /* glr.c:821 */
+#line 6692 "src/parser_proc.c" /* glr.c:821 */
break;
case 582:
-#line 2074 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2078 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_callback **)(&(*yyvalp))) = psi_let_callback_init(psi_let_func_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval))->text, (*(struct psi_impl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval))), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-9)].yystate.yysemantics.yysval)));
(*(struct psi_let_callback **)(&(*yyvalp)))->func->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-6)].yystate.yysemantics.yysval)));
(*(struct psi_let_callback **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-11)].yystate.yysemantics.yysval)));
}
-#line 6698 "src/parser_proc.c" /* glr.c:821 */
+#line 6702 "src/parser_proc.c" /* glr.c:821 */
break;
case 583:
-#line 2082 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2086 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_let_func **)(&(*yyvalp))) = psi_let_func_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval))->text, (*(struct psi_impl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
(*(struct psi_let_func **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)));
(*(struct psi_let_func **)(&(*yyvalp)))->inner = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 6708 "src/parser_proc.c" /* glr.c:821 */
+#line 6712 "src/parser_proc.c" /* glr.c:821 */
break;
case 594:
-#line 2103 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2107 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 6716 "src/parser_proc.c" /* glr.c:821 */
+#line 6720 "src/parser_proc.c" /* glr.c:821 */
break;
case 595:
-#line 2106 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2110 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 6724 "src/parser_proc.c" /* glr.c:821 */
+#line 6728 "src/parser_proc.c" /* glr.c:821 */
break;
case 596:
-#line 2112 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2116 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_let_exp_free), &(*(struct psi_let_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6732 "src/parser_proc.c" /* glr.c:821 */
+#line 6736 "src/parser_proc.c" /* glr.c:821 */
break;
case 597:
-#line 2115 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2119 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), &(*(struct psi_let_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6740 "src/parser_proc.c" /* glr.c:821 */
+#line 6744 "src/parser_proc.c" /* glr.c:821 */
break;
case 600:
-#line 2126 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2130 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 6748 "src/parser_proc.c" /* glr.c:821 */
+#line 6752 "src/parser_proc.c" /* glr.c:821 */
break;
case 601:
-#line 2129 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2133 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 6756 "src/parser_proc.c" /* glr.c:821 */
+#line 6760 "src/parser_proc.c" /* glr.c:821 */
break;
case 602:
-#line 2135 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2139 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_set_exp_free), &(*(struct psi_set_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6764 "src/parser_proc.c" /* glr.c:821 */
+#line 6768 "src/parser_proc.c" /* glr.c:821 */
break;
case 603:
-#line 2138 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2142 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), &(*(struct psi_set_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6772 "src/parser_proc.c" /* glr.c:821 */
+#line 6776 "src/parser_proc.c" /* glr.c:821 */
break;
case 604:
-#line 2144 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2148 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_return_stmt **)(&(*yyvalp))) = psi_return_stmt_init((*(struct psi_return_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_return_stmt **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 6781 "src/parser_proc.c" /* glr.c:821 */
+#line 6785 "src/parser_proc.c" /* glr.c:821 */
break;
case 605:
-#line 2151 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2155 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_return_exp **)(&(*yyvalp))) = psi_return_exp_init((*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)), (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)), psi_set_exp_init(PSI_SET_FUNC, (*(struct psi_set_func **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))));
(*(struct psi_return_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval))->token);
}
-#line 6790 "src/parser_proc.c" /* glr.c:821 */
+#line 6794 "src/parser_proc.c" /* glr.c:821 */
break;
case 606:
-#line 2155 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2159 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_return_exp **)(&(*yyvalp))) = psi_return_exp_init(NULL, NULL, psi_set_exp_init(PSI_SET_FUNC, (*(struct psi_set_func **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))));
(*(struct psi_return_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_set_func **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval))->token);
}
-#line 6799 "src/parser_proc.c" /* glr.c:821 */
+#line 6803 "src/parser_proc.c" /* glr.c:821 */
break;
case 607:
-#line 2162 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2166 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 6807 "src/parser_proc.c" /* glr.c:821 */
+#line 6811 "src/parser_proc.c" /* glr.c:821 */
break;
case 608:
-#line 2165 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2169 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 6815 "src/parser_proc.c" /* glr.c:821 */
+#line 6819 "src/parser_proc.c" /* glr.c:821 */
break;
case 609:
-#line 2168 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2172 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 6823 "src/parser_proc.c" /* glr.c:821 */
+#line 6827 "src/parser_proc.c" /* glr.c:821 */
break;
case 610:
-#line 2174 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2178 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_set_stmt **)(&(*yyvalp))) = psi_set_stmt_init((*(struct psi_set_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_set_stmt **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 6832 "src/parser_proc.c" /* glr.c:821 */
+#line 6836 "src/parser_proc.c" /* glr.c:821 */
break;
case 611:
-#line 2181 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2185 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_set_exp **)(&(*yyvalp))) = psi_set_exp_init(PSI_SET_FUNC, (*(struct psi_set_func **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6840 "src/parser_proc.c" /* glr.c:821 */
+#line 6844 "src/parser_proc.c" /* glr.c:821 */
break;
case 612:
-#line 2184 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2188 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_set_exp **)(&(*yyvalp))) = psi_set_exp_init(PSI_SET_NUMEXP, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6848 "src/parser_proc.c" /* glr.c:821 */
+#line 6852 "src/parser_proc.c" /* glr.c:821 */
break;
case 613:
-#line 2187 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2191 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_set_exp **)(&(*yyvalp))) = (*(struct psi_set_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
(*(struct psi_set_exp **)(&(*yyvalp)))->var = (*(struct psi_impl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval));
}
-#line 6857 "src/parser_proc.c" /* glr.c:821 */
+#line 6861 "src/parser_proc.c" /* glr.c:821 */
break;
case 614:
-#line 2194 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2198 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_set_func **)(&(*yyvalp))) = psi_set_func_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval))->text, (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
(*(struct psi_set_func **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-4)].yystate.yysemantics.yysval)));
(*(struct psi_set_func **)(&(*yyvalp)))->inner = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval));
}
-#line 6867 "src/parser_proc.c" /* glr.c:821 */
+#line 6871 "src/parser_proc.c" /* glr.c:821 */
break;
case 615:
-#line 2199 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2203 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_set_func **)(&(*yyvalp))) = psi_set_func_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval))->type, (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval))->text, (*(struct psi_decl_var **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
(*(struct psi_set_func **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-5)].yystate.yysemantics.yysval)));
(*(struct psi_set_func **)(&(*yyvalp)))->recursive = 1;
}
-#line 6877 "src/parser_proc.c" /* glr.c:821 */
+#line 6881 "src/parser_proc.c" /* glr.c:821 */
break;
case 624:
-#line 2218 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2222 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = NULL;
}
-#line 6885 "src/parser_proc.c" /* glr.c:821 */
+#line 6889 "src/parser_proc.c" /* glr.c:821 */
break;
case 625:
-#line 2221 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2225 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval));
}
-#line 6893 "src/parser_proc.c" /* glr.c:821 */
+#line 6897 "src/parser_proc.c" /* glr.c:821 */
break;
case 626:
-#line 2227 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2231 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_set_exp_free), &(*(struct psi_set_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6901 "src/parser_proc.c" /* glr.c:821 */
+#line 6905 "src/parser_proc.c" /* glr.c:821 */
break;
case 627:
-#line 2230 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2234 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), &(*(struct psi_set_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6909 "src/parser_proc.c" /* glr.c:821 */
+#line 6913 "src/parser_proc.c" /* glr.c:821 */
break;
case 628:
-#line 2236 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2240 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_assert_stmt **)(&(*yyvalp))) = psi_assert_stmt_init((enum psi_assert_kind) (*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval))->type, (*(struct psi_num_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_assert_stmt **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 6918 "src/parser_proc.c" /* glr.c:821 */
+#line 6922 "src/parser_proc.c" /* glr.c:821 */
break;
case 631:
-#line 2248 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2252 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_free_stmt **)(&(*yyvalp))) = psi_free_stmt_init((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_free_stmt **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)));
}
-#line 6927 "src/parser_proc.c" /* glr.c:821 */
+#line 6931 "src/parser_proc.c" /* glr.c:821 */
break;
case 632:
-#line 2255 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2259 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add(psi_plist_init((psi_plist_dtor) psi_free_exp_free), &(*(struct psi_free_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6935 "src/parser_proc.c" /* glr.c:821 */
+#line 6939 "src/parser_proc.c" /* glr.c:821 */
break;
case 633:
-#line 2258 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2262 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_plist **)(&(*yyvalp))) = psi_plist_add((*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-2)].yystate.yysemantics.yysval)), &(*(struct psi_free_exp **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (0)].yystate.yysemantics.yysval)));
}
-#line 6943 "src/parser_proc.c" /* glr.c:821 */
+#line 6947 "src/parser_proc.c" /* glr.c:821 */
break;
case 634:
-#line 2264 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2268 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->type = PSI_T_NAME;
(*(struct psi_free_exp **)(&(*yyvalp))) = psi_free_exp_init((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval))->text, (*(struct psi_plist **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-1)].yystate.yysemantics.yysval)));
(*(struct psi_free_exp **)(&(*yyvalp)))->token = psi_token_copy((*(struct psi_token **)(&((yyGLRStackItem const *)yyvsp)[YYFILL (-3)].yystate.yysemantics.yysval)));
}
-#line 6953 "src/parser_proc.c" /* glr.c:821 */
+#line 6957 "src/parser_proc.c" /* glr.c:821 */
break;
case 635:
-#line 2272 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2276 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(bool*)(&(*yyvalp))) = false;
}
-#line 6961 "src/parser_proc.c" /* glr.c:821 */
+#line 6965 "src/parser_proc.c" /* glr.c:821 */
break;
case 636:
-#line 2275 "src/parser_proc_grammar.y" /* glr.c:821 */
+#line 2279 "src/parser_proc_grammar.y" /* glr.c:821 */
{
(*(bool*)(&(*yyvalp))) = true;
}
-#line 6969 "src/parser_proc.c" /* glr.c:821 */
+#line 6973 "src/parser_proc.c" /* glr.c:821 */
break;
-#line 6973 "src/parser_proc.c" /* glr.c:821 */
+#line 6977 "src/parser_proc.c" /* glr.c:821 */
default: break;
}
switch (yytype)
{
case 141: /* binary_op_token */
-#line 290 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 294 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7024 "src/parser_proc.c" /* glr.c:851 */
+#line 7028 "src/parser_proc.c" /* glr.c:851 */
break;
case 142: /* unary_op_token */
-#line 290 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 294 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7030 "src/parser_proc.c" /* glr.c:851 */
+#line 7034 "src/parser_proc.c" /* glr.c:851 */
break;
case 143: /* name_token */
-#line 290 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 294 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7036 "src/parser_proc.c" /* glr.c:851 */
+#line 7040 "src/parser_proc.c" /* glr.c:851 */
break;
case 144: /* any_noeol_token */
-#line 290 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 294 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7042 "src/parser_proc.c" /* glr.c:851 */
+#line 7046 "src/parser_proc.c" /* glr.c:851 */
break;
case 149: /* lib */
-#line 284 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 288 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7048 "src/parser_proc.c" /* glr.c:851 */
+#line 7052 "src/parser_proc.c" /* glr.c:851 */
break;
case 150: /* cpp */
-#line 299 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 303 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_cpp_exp_free(&(*(struct psi_cpp_exp **)(&(*yyvaluep))));}
-#line 7054 "src/parser_proc.c" /* glr.c:851 */
+#line 7058 "src/parser_proc.c" /* glr.c:851 */
break;
case 151: /* cpp_exp */
-#line 299 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 303 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_cpp_exp_free(&(*(struct psi_cpp_exp **)(&(*yyvaluep))));}
-#line 7060 "src/parser_proc.c" /* glr.c:851 */
+#line 7064 "src/parser_proc.c" /* glr.c:851 */
break;
case 153: /* cpp_message_token */
-#line 287 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 291 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7066 "src/parser_proc.c" /* glr.c:851 */
+#line 7070 "src/parser_proc.c" /* glr.c:851 */
break;
case 154: /* cpp_include_token */
-#line 287 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 291 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7072 "src/parser_proc.c" /* glr.c:851 */
+#line 7076 "src/parser_proc.c" /* glr.c:851 */
break;
case 155: /* cpp_header_token */
-#line 287 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 291 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7078 "src/parser_proc.c" /* glr.c:851 */
+#line 7082 "src/parser_proc.c" /* glr.c:851 */
break;
case 156: /* cpp_no_arg_token */
-#line 287 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 291 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7084 "src/parser_proc.c" /* glr.c:851 */
+#line 7088 "src/parser_proc.c" /* glr.c:851 */
break;
case 157: /* cpp_name_arg_token */
-#line 287 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 291 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7090 "src/parser_proc.c" /* glr.c:851 */
+#line 7094 "src/parser_proc.c" /* glr.c:851 */
break;
case 158: /* cpp_exp_arg_token */
-#line 287 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 291 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7096 "src/parser_proc.c" /* glr.c:851 */
+#line 7100 "src/parser_proc.c" /* glr.c:851 */
break;
case 159: /* cpp_macro_decl */
-#line 301 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 305 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_cpp_macro_decl_free(&(*(struct psi_cpp_macro_decl **)(&(*yyvaluep))));}
-#line 7102 "src/parser_proc.c" /* glr.c:851 */
+#line 7106 "src/parser_proc.c" /* glr.c:851 */
break;
case 160: /* cpp_macro_sig */
-#line 303 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 307 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7108 "src/parser_proc.c" /* glr.c:851 */
+#line 7112 "src/parser_proc.c" /* glr.c:851 */
break;
case 161: /* cpp_macro_sig_args */
-#line 303 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 307 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7114 "src/parser_proc.c" /* glr.c:851 */
+#line 7118 "src/parser_proc.c" /* glr.c:851 */
break;
case 162: /* cpp_macro_decl_tokens */
-#line 303 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 307 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7120 "src/parser_proc.c" /* glr.c:851 */
+#line 7124 "src/parser_proc.c" /* glr.c:851 */
break;
case 163: /* cpp_macro_decl_token_list */
-#line 303 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 307 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7126 "src/parser_proc.c" /* glr.c:851 */
+#line 7130 "src/parser_proc.c" /* glr.c:851 */
break;
case 164: /* cpp_macro_exp */
-#line 305 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 309 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_num_exp_free(&(*(struct psi_num_exp **)(&(*yyvaluep))));}
-#line 7132 "src/parser_proc.c" /* glr.c:851 */
+#line 7136 "src/parser_proc.c" /* glr.c:851 */
break;
case 165: /* cpp_macro_call_args */
-#line 303 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 307 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7138 "src/parser_proc.c" /* glr.c:851 */
+#line 7142 "src/parser_proc.c" /* glr.c:851 */
break;
case 166: /* cpp_macro_call_arg_list */
-#line 303 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 307 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7144 "src/parser_proc.c" /* glr.c:851 */
+#line 7148 "src/parser_proc.c" /* glr.c:851 */
break;
case 167: /* constant */
-#line 311 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 315 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_const_free(&(*(struct psi_const **)(&(*yyvaluep))));}
-#line 7150 "src/parser_proc.c" /* glr.c:851 */
+#line 7154 "src/parser_proc.c" /* glr.c:851 */
break;
case 168: /* impl_def_val */
-#line 313 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 317 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_def_val_free(&(*(struct psi_impl_def_val **)(&(*yyvaluep))));}
-#line 7156 "src/parser_proc.c" /* glr.c:851 */
+#line 7160 "src/parser_proc.c" /* glr.c:851 */
break;
case 169: /* impl_def_val_token */
-#line 308 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 312 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7162 "src/parser_proc.c" /* glr.c:851 */
+#line 7166 "src/parser_proc.c" /* glr.c:851 */
break;
case 170: /* decl_typedef */
-#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 7168 "src/parser_proc.c" /* glr.c:851 */
+#line 7172 "src/parser_proc.c" /* glr.c:851 */
break;
case 171: /* typedef */
-#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 7174 "src/parser_proc.c" /* glr.c:851 */
+#line 7178 "src/parser_proc.c" /* glr.c:851 */
break;
case 172: /* typedef_anon */
-#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 7180 "src/parser_proc.c" /* glr.c:851 */
+#line 7184 "src/parser_proc.c" /* glr.c:851 */
break;
case 173: /* typedef_decl */
-#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 7186 "src/parser_proc.c" /* glr.c:851 */
+#line 7190 "src/parser_proc.c" /* glr.c:851 */
break;
case 174: /* typedef_anon_decl */
-#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 7192 "src/parser_proc.c" /* glr.c:851 */
+#line 7196 "src/parser_proc.c" /* glr.c:851 */
break;
case 175: /* qualified_decl_type */
-#line 322 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_type_free(&(*(struct psi_decl_type **)(&(*yyvaluep))));}
-#line 7198 "src/parser_proc.c" /* glr.c:851 */
+#line 7202 "src/parser_proc.c" /* glr.c:851 */
break;
case 177: /* decl_type */
-#line 322 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_type_free(&(*(struct psi_decl_type **)(&(*yyvaluep))));}
-#line 7204 "src/parser_proc.c" /* glr.c:851 */
+#line 7208 "src/parser_proc.c" /* glr.c:851 */
break;
case 178: /* decl_type_complex */
-#line 322 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_type_free(&(*(struct psi_decl_type **)(&(*yyvaluep))));}
-#line 7210 "src/parser_proc.c" /* glr.c:851 */
+#line 7214 "src/parser_proc.c" /* glr.c:851 */
break;
case 179: /* decl_type_simple */
-#line 316 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 320 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7216 "src/parser_proc.c" /* glr.c:851 */
+#line 7220 "src/parser_proc.c" /* glr.c:851 */
break;
case 180: /* decl_real_type */
-#line 316 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 320 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7222 "src/parser_proc.c" /* glr.c:851 */
+#line 7226 "src/parser_proc.c" /* glr.c:851 */
break;
case 181: /* int_signed */
-#line 296 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 300 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7228 "src/parser_proc.c" /* glr.c:851 */
+#line 7232 "src/parser_proc.c" /* glr.c:851 */
break;
case 182: /* int_width */
-#line 293 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 297 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7234 "src/parser_proc.c" /* glr.c:851 */
+#line 7238 "src/parser_proc.c" /* glr.c:851 */
break;
case 183: /* decl_int_type */
-#line 316 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 320 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7240 "src/parser_proc.c" /* glr.c:851 */
+#line 7244 "src/parser_proc.c" /* glr.c:851 */
break;
case 184: /* int_signed_types */
-#line 293 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 297 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7246 "src/parser_proc.c" /* glr.c:851 */
+#line 7250 "src/parser_proc.c" /* glr.c:851 */
break;
case 185: /* signed_short_types */
-#line 296 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 300 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7252 "src/parser_proc.c" /* glr.c:851 */
+#line 7256 "src/parser_proc.c" /* glr.c:851 */
break;
case 186: /* signed_long_types */
-#line 296 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 300 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7258 "src/parser_proc.c" /* glr.c:851 */
+#line 7262 "src/parser_proc.c" /* glr.c:851 */
break;
case 187: /* int_width_types */
-#line 293 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 297 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7264 "src/parser_proc.c" /* glr.c:851 */
+#line 7268 "src/parser_proc.c" /* glr.c:851 */
break;
case 188: /* decl_stmt */
-#line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 7270 "src/parser_proc.c" /* glr.c:851 */
+#line 7274 "src/parser_proc.c" /* glr.c:851 */
break;
case 189: /* decl_asm */
-#line 319 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 323 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7276 "src/parser_proc.c" /* glr.c:851 */
+#line 7280 "src/parser_proc.c" /* glr.c:851 */
break;
case 190: /* quoted_strings */
-#line 319 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 323 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7282 "src/parser_proc.c" /* glr.c:851 */
+#line 7286 "src/parser_proc.c" /* glr.c:851 */
break;
case 191: /* decl_extvar_stmt */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7288 "src/parser_proc.c" /* glr.c:851 */
+#line 7292 "src/parser_proc.c" /* glr.c:851 */
break;
case 192: /* decl_extvar_list */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7294 "src/parser_proc.c" /* glr.c:851 */
+#line 7298 "src/parser_proc.c" /* glr.c:851 */
break;
case 193: /* decl_vars */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7300 "src/parser_proc.c" /* glr.c:851 */
+#line 7304 "src/parser_proc.c" /* glr.c:851 */
break;
case 194: /* ignored_decl */
-#line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 7306 "src/parser_proc.c" /* glr.c:851 */
+#line 7310 "src/parser_proc.c" /* glr.c:851 */
break;
case 199: /* decl */
-#line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 7312 "src/parser_proc.c" /* glr.c:851 */
+#line 7316 "src/parser_proc.c" /* glr.c:851 */
break;
case 200: /* decl_body */
-#line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 7318 "src/parser_proc.c" /* glr.c:851 */
+#line 7322 "src/parser_proc.c" /* glr.c:851 */
break;
case 201: /* decl_func_body */
-#line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 7324 "src/parser_proc.c" /* glr.c:851 */
+#line 7328 "src/parser_proc.c" /* glr.c:851 */
break;
case 202: /* decl_functor_body */
-#line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 7330 "src/parser_proc.c" /* glr.c:851 */
+#line 7334 "src/parser_proc.c" /* glr.c:851 */
break;
case 203: /* decl_anon_functor_body */
-#line 324 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_free(&(*(struct psi_decl **)(&(*yyvaluep))));}
-#line 7336 "src/parser_proc.c" /* glr.c:851 */
+#line 7340 "src/parser_proc.c" /* glr.c:851 */
break;
case 204: /* decl_functor */
-#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 7342 "src/parser_proc.c" /* glr.c:851 */
+#line 7346 "src/parser_proc.c" /* glr.c:851 */
break;
case 205: /* decl_anon_functor */
-#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 7348 "src/parser_proc.c" /* glr.c:851 */
+#line 7352 "src/parser_proc.c" /* glr.c:851 */
break;
case 206: /* decl_func */
-#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 7354 "src/parser_proc.c" /* glr.c:851 */
+#line 7358 "src/parser_proc.c" /* glr.c:851 */
break;
case 207: /* decl_args */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7360 "src/parser_proc.c" /* glr.c:851 */
+#line 7364 "src/parser_proc.c" /* glr.c:851 */
break;
case 208: /* decl_arg_list */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7366 "src/parser_proc.c" /* glr.c:851 */
+#line 7370 "src/parser_proc.c" /* glr.c:851 */
break;
case 209: /* decl_anon_arg */
-#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 7372 "src/parser_proc.c" /* glr.c:851 */
+#line 7376 "src/parser_proc.c" /* glr.c:851 */
break;
case 210: /* decl_arg */
-#line 326 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_arg_free(&(*(struct psi_decl_arg **)(&(*yyvaluep))));}
-#line 7378 "src/parser_proc.c" /* glr.c:851 */
+#line 7382 "src/parser_proc.c" /* glr.c:851 */
break;
case 211: /* decl_var */
-#line 328 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 332 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_var_free(&(*(struct psi_decl_var **)(&(*yyvaluep))));}
-#line 7384 "src/parser_proc.c" /* glr.c:851 */
+#line 7388 "src/parser_proc.c" /* glr.c:851 */
break;
case 212: /* decl_union */
-#line 332 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 336 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_union_free(&(*(struct psi_decl_union **)(&(*yyvaluep))));}
-#line 7390 "src/parser_proc.c" /* glr.c:851 */
+#line 7394 "src/parser_proc.c" /* glr.c:851 */
break;
case 213: /* decl_struct */
-#line 330 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_struct_free(&(*(struct psi_decl_struct **)(&(*yyvaluep))));}
-#line 7396 "src/parser_proc.c" /* glr.c:851 */
+#line 7400 "src/parser_proc.c" /* glr.c:851 */
break;
case 214: /* decl_struct_args */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7402 "src/parser_proc.c" /* glr.c:851 */
+#line 7406 "src/parser_proc.c" /* glr.c:851 */
break;
case 215: /* struct_args_block */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7408 "src/parser_proc.c" /* glr.c:851 */
+#line 7412 "src/parser_proc.c" /* glr.c:851 */
break;
case 216: /* struct_args */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7414 "src/parser_proc.c" /* glr.c:851 */
+#line 7418 "src/parser_proc.c" /* glr.c:851 */
break;
case 217: /* struct_arg_var_list */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7420 "src/parser_proc.c" /* glr.c:851 */
+#line 7424 "src/parser_proc.c" /* glr.c:851 */
break;
case 218: /* decl_vars_with_layout */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7426 "src/parser_proc.c" /* glr.c:851 */
+#line 7430 "src/parser_proc.c" /* glr.c:851 */
break;
case 219: /* decl_enum */
-#line 334 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_enum_free(&(*(struct psi_decl_enum **)(&(*yyvaluep))));}
-#line 7432 "src/parser_proc.c" /* glr.c:851 */
+#line 7436 "src/parser_proc.c" /* glr.c:851 */
break;
case 220: /* decl_enum_items */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7438 "src/parser_proc.c" /* glr.c:851 */
+#line 7442 "src/parser_proc.c" /* glr.c:851 */
break;
case 221: /* decl_enum_item */
-#line 336 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 340 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_decl_enum_item_free(&(*(struct psi_decl_enum_item **)(&(*yyvaluep))));}
-#line 7444 "src/parser_proc.c" /* glr.c:851 */
+#line 7448 "src/parser_proc.c" /* glr.c:851 */
break;
case 222: /* num_exp */
-#line 394 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 398 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_num_exp_free(&(*(struct psi_num_exp **)(&(*yyvaluep))));}
-#line 7450 "src/parser_proc.c" /* glr.c:851 */
+#line 7454 "src/parser_proc.c" /* glr.c:851 */
break;
case 223: /* number */
-#line 396 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 400 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_number_free(&(*(struct psi_number **)(&(*yyvaluep))));}
-#line 7456 "src/parser_proc.c" /* glr.c:851 */
+#line 7460 "src/parser_proc.c" /* glr.c:851 */
break;
case 224: /* sizeof */
-#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 350 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_number_free(&(*(struct psi_number **)(&(*yyvaluep))));}
-#line 7462 "src/parser_proc.c" /* glr.c:851 */
+#line 7466 "src/parser_proc.c" /* glr.c:851 */
break;
case 225: /* sizeof_body */
-#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 350 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_number_free(&(*(struct psi_number **)(&(*yyvaluep))));}
-#line 7468 "src/parser_proc.c" /* glr.c:851 */
+#line 7472 "src/parser_proc.c" /* glr.c:851 */
break;
case 226: /* sizeof_body_notypes */
-#line 346 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 350 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_number_free(&(*(struct psi_number **)(&(*yyvaluep))));}
-#line 7474 "src/parser_proc.c" /* glr.c:851 */
+#line 7478 "src/parser_proc.c" /* glr.c:851 */
break;
case 227: /* enum_name */
-#line 284 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 288 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7480 "src/parser_proc.c" /* glr.c:851 */
+#line 7484 "src/parser_proc.c" /* glr.c:851 */
break;
case 228: /* union_name */
-#line 284 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 288 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7486 "src/parser_proc.c" /* glr.c:851 */
+#line 7490 "src/parser_proc.c" /* glr.c:851 */
break;
case 229: /* struct_name */
-#line 284 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 288 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7492 "src/parser_proc.c" /* glr.c:851 */
+#line 7496 "src/parser_proc.c" /* glr.c:851 */
break;
case 230: /* optional_name */
-#line 284 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 288 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7498 "src/parser_proc.c" /* glr.c:851 */
+#line 7502 "src/parser_proc.c" /* glr.c:851 */
break;
case 232: /* decl_layout */
-#line 343 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 347 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_layout_free(&(*(struct psi_layout **)(&(*yyvaluep))));}
-#line 7504 "src/parser_proc.c" /* glr.c:851 */
+#line 7508 "src/parser_proc.c" /* glr.c:851 */
break;
case 233: /* align_and_size */
-#line 341 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 345 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7510 "src/parser_proc.c" /* glr.c:851 */
+#line 7514 "src/parser_proc.c" /* glr.c:851 */
break;
case 234: /* array_size */
-#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 403 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7516 "src/parser_proc.c" /* glr.c:851 */
+#line 7520 "src/parser_proc.c" /* glr.c:851 */
break;
case 236: /* indirection */
-#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 403 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7522 "src/parser_proc.c" /* glr.c:851 */
+#line 7526 "src/parser_proc.c" /* glr.c:851 */
break;
case 237: /* pointers */
-#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 403 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7528 "src/parser_proc.c" /* glr.c:851 */
+#line 7532 "src/parser_proc.c" /* glr.c:851 */
break;
case 238: /* asterisks */
-#line 399 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 403 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7534 "src/parser_proc.c" /* glr.c:851 */
+#line 7538 "src/parser_proc.c" /* glr.c:851 */
break;
case 241: /* impl */
-#line 349 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 353 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_free(&(*(struct psi_impl **)(&(*yyvaluep))));}
-#line 7540 "src/parser_proc.c" /* glr.c:851 */
+#line 7544 "src/parser_proc.c" /* glr.c:851 */
break;
case 242: /* impl_func */
-#line 351 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 355 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_func_free(&(*(struct psi_impl_func **)(&(*yyvaluep))));}
-#line 7546 "src/parser_proc.c" /* glr.c:851 */
+#line 7550 "src/parser_proc.c" /* glr.c:851 */
break;
case 243: /* impl_args */
-#line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 395 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7552 "src/parser_proc.c" /* glr.c:851 */
+#line 7556 "src/parser_proc.c" /* glr.c:851 */
break;
case 244: /* impl_arg */
-#line 353 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 357 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_arg_free(&(*(struct psi_impl_arg **)(&(*yyvaluep))));}
-#line 7558 "src/parser_proc.c" /* glr.c:851 */
+#line 7562 "src/parser_proc.c" /* glr.c:851 */
break;
case 245: /* impl_var */
-#line 357 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 361 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_var_free(&(*(struct psi_impl_var **)(&(*yyvaluep))));}
-#line 7564 "src/parser_proc.c" /* glr.c:851 */
+#line 7568 "src/parser_proc.c" /* glr.c:851 */
break;
case 246: /* impl_type */
-#line 355 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 359 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_type_free(&(*(struct psi_impl_type **)(&(*yyvaluep))));}
-#line 7570 "src/parser_proc.c" /* glr.c:851 */
+#line 7574 "src/parser_proc.c" /* glr.c:851 */
break;
case 247: /* impl_type_restricted */
-#line 355 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 359 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_type_free(&(*(struct psi_impl_type **)(&(*yyvaluep))));}
-#line 7576 "src/parser_proc.c" /* glr.c:851 */
+#line 7580 "src/parser_proc.c" /* glr.c:851 */
break;
case 248: /* impl_type_token */
-#line 389 "src/parser_proc_grammar.y" /* glr.c:851 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7582 "src/parser_proc.c" /* glr.c:851 */
+#line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7586 "src/parser_proc.c" /* glr.c:851 */
break;
case 249: /* impl_type_restricted_token */
-#line 389 "src/parser_proc_grammar.y" /* glr.c:851 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7588 "src/parser_proc.c" /* glr.c:851 */
+#line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7592 "src/parser_proc.c" /* glr.c:851 */
break;
case 250: /* impl_type_extended_token */
-#line 389 "src/parser_proc_grammar.y" /* glr.c:851 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7594 "src/parser_proc.c" /* glr.c:851 */
+#line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7598 "src/parser_proc.c" /* glr.c:851 */
break;
case 251: /* impl_stmts */
-#line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 395 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7600 "src/parser_proc.c" /* glr.c:851 */
+#line 7604 "src/parser_proc.c" /* glr.c:851 */
break;
case 252: /* impl_stmt */
-#line 387 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_impl_stmt_free(&(*(struct psi_token ***)(&(*yyvaluep))));}
-#line 7606 "src/parser_proc.c" /* glr.c:851 */
+#line 7610 "src/parser_proc.c" /* glr.c:851 */
break;
case 253: /* let_stmt */
-#line 360 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 364 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_stmt_free(&(*(struct psi_let_stmt **)(&(*yyvaluep))));}
-#line 7612 "src/parser_proc.c" /* glr.c:851 */
+#line 7616 "src/parser_proc.c" /* glr.c:851 */
break;
case 254: /* let_exp */
-#line 362 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 366 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_exp_free(&(*(struct psi_let_exp **)(&(*yyvaluep))));}
-#line 7618 "src/parser_proc.c" /* glr.c:851 */
+#line 7622 "src/parser_proc.c" /* glr.c:851 */
break;
case 255: /* let_exp_byref */
-#line 362 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 366 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_exp_free(&(*(struct psi_let_exp **)(&(*yyvaluep))));}
-#line 7624 "src/parser_proc.c" /* glr.c:851 */
+#line 7628 "src/parser_proc.c" /* glr.c:851 */
break;
case 256: /* let_exp_assign */
-#line 362 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 366 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_exp_free(&(*(struct psi_let_exp **)(&(*yyvaluep))));}
-#line 7630 "src/parser_proc.c" /* glr.c:851 */
+#line 7634 "src/parser_proc.c" /* glr.c:851 */
break;
case 257: /* let_calloc */
-#line 364 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 368 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_calloc_free(&(*(struct psi_let_calloc **)(&(*yyvaluep))));}
-#line 7636 "src/parser_proc.c" /* glr.c:851 */
+#line 7640 "src/parser_proc.c" /* glr.c:851 */
break;
case 258: /* let_callback */
-#line 366 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 370 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_callback_free(&(*(struct psi_let_callback **)(&(*yyvaluep))));}
-#line 7642 "src/parser_proc.c" /* glr.c:851 */
+#line 7646 "src/parser_proc.c" /* glr.c:851 */
break;
case 259: /* let_func */
-#line 368 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 372 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_let_func_free(&(*(struct psi_let_func **)(&(*yyvaluep))));}
-#line 7648 "src/parser_proc.c" /* glr.c:851 */
+#line 7652 "src/parser_proc.c" /* glr.c:851 */
break;
case 260: /* let_func_token */
-#line 389 "src/parser_proc_grammar.y" /* glr.c:851 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7654 "src/parser_proc.c" /* glr.c:851 */
+#line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7658 "src/parser_proc.c" /* glr.c:851 */
break;
case 261: /* let_func_exps */
-#line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 395 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7660 "src/parser_proc.c" /* glr.c:851 */
+#line 7664 "src/parser_proc.c" /* glr.c:851 */
break;
case 262: /* let_exps */
-#line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 395 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7666 "src/parser_proc.c" /* glr.c:851 */
+#line 7670 "src/parser_proc.c" /* glr.c:851 */
break;
case 263: /* callback_rval */
-#line 389 "src/parser_proc_grammar.y" /* glr.c:851 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7672 "src/parser_proc.c" /* glr.c:851 */
+#line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7676 "src/parser_proc.c" /* glr.c:851 */
break;
case 264: /* callback_arg_list */
-#line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 395 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7678 "src/parser_proc.c" /* glr.c:851 */
+#line 7682 "src/parser_proc.c" /* glr.c:851 */
break;
case 265: /* callback_args */
-#line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 395 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7684 "src/parser_proc.c" /* glr.c:851 */
+#line 7688 "src/parser_proc.c" /* glr.c:851 */
break;
case 266: /* return_stmt */
-#line 378 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 382 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_return_stmt_free(&(*(struct psi_return_stmt **)(&(*yyvaluep))));}
-#line 7690 "src/parser_proc.c" /* glr.c:851 */
+#line 7694 "src/parser_proc.c" /* glr.c:851 */
break;
case 267: /* return_exp */
-#line 380 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 384 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_return_exp_free(&(*(struct psi_return_exp **)(&(*yyvaluep))));}
-#line 7696 "src/parser_proc.c" /* glr.c:851 */
+#line 7700 "src/parser_proc.c" /* glr.c:851 */
break;
case 268: /* call_decl_vars */
-#line 338 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 342 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7702 "src/parser_proc.c" /* glr.c:851 */
+#line 7706 "src/parser_proc.c" /* glr.c:851 */
break;
case 269: /* set_stmt */
-#line 370 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 374 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_set_stmt_free(&(*(struct psi_set_stmt **)(&(*yyvaluep))));}
-#line 7708 "src/parser_proc.c" /* glr.c:851 */
+#line 7712 "src/parser_proc.c" /* glr.c:851 */
break;
case 270: /* set_exp */
-#line 372 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 376 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_set_exp_free(&(*(struct psi_set_exp **)(&(*yyvaluep))));}
-#line 7714 "src/parser_proc.c" /* glr.c:851 */
+#line 7718 "src/parser_proc.c" /* glr.c:851 */
break;
case 271: /* set_func */
-#line 374 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 378 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_set_func_free(&(*(struct psi_set_func **)(&(*yyvaluep))));}
-#line 7720 "src/parser_proc.c" /* glr.c:851 */
+#line 7724 "src/parser_proc.c" /* glr.c:851 */
break;
case 272: /* set_func_token */
-#line 389 "src/parser_proc_grammar.y" /* glr.c:851 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7726 "src/parser_proc.c" /* glr.c:851 */
+#line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7730 "src/parser_proc.c" /* glr.c:851 */
break;
case 273: /* set_func_exps */
-#line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 395 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7732 "src/parser_proc.c" /* glr.c:851 */
+#line 7736 "src/parser_proc.c" /* glr.c:851 */
break;
case 274: /* set_exps */
-#line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 395 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7738 "src/parser_proc.c" /* glr.c:851 */
+#line 7742 "src/parser_proc.c" /* glr.c:851 */
break;
case 275: /* assert_stmt */
-#line 376 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 380 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_assert_stmt_free(&(*(struct psi_assert_stmt **)(&(*yyvaluep))));}
-#line 7744 "src/parser_proc.c" /* glr.c:851 */
+#line 7748 "src/parser_proc.c" /* glr.c:851 */
break;
case 276: /* assert_stmt_token */
-#line 389 "src/parser_proc_grammar.y" /* glr.c:851 */
- {psi_token_free(&(*(struct psi_token **)(&(*yyvaluep))));}
-#line 7750 "src/parser_proc.c" /* glr.c:851 */
+#line 393 "src/parser_proc_grammar.y" /* glr.c:851 */
+ {}
+#line 7754 "src/parser_proc.c" /* glr.c:851 */
break;
case 277: /* free_stmt */
-#line 382 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 386 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_free_stmt_free(&(*(struct psi_free_stmt **)(&(*yyvaluep))));}
-#line 7756 "src/parser_proc.c" /* glr.c:851 */
+#line 7760 "src/parser_proc.c" /* glr.c:851 */
break;
case 278: /* free_exps */
-#line 391 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 395 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_plist_free((*(struct psi_plist **)(&(*yyvaluep))));}
-#line 7762 "src/parser_proc.c" /* glr.c:851 */
+#line 7766 "src/parser_proc.c" /* glr.c:851 */
break;
case 279: /* free_exp */
-#line 384 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 388 "src/parser_proc_grammar.y" /* glr.c:851 */
{psi_free_exp_free(&(*(struct psi_free_exp **)(&(*yyvaluep))));}
-#line 7768 "src/parser_proc.c" /* glr.c:851 */
+#line 7772 "src/parser_proc.c" /* glr.c:851 */
break;
case 280: /* reference */
-#line 401 "src/parser_proc_grammar.y" /* glr.c:851 */
+#line 405 "src/parser_proc_grammar.y" /* glr.c:851 */
{}
-#line 7774 "src/parser_proc.c" /* glr.c:851 */
+#line 7778 "src/parser_proc.c" /* glr.c:851 */
break;
yylval = yyval_default;
/* User initialization code. */
-#line 119 "src/parser_proc_grammar.y" /* glr.c:2265 */
+#line 123 "src/parser_proc_grammar.y" /* glr.c:2265 */
{
}
-#line 9127 "src/parser_proc.c" /* glr.c:2265 */
+#line 9131 "src/parser_proc.c" /* glr.c:2265 */
if (! yyinitGLRStack (yystackp, YYINITDEPTH))
goto yyexhaustedlab;
#define yydebug psi_parser_proc_debug
#define yynerrs psi_parser_proc_nerrs
-#line 2284 "src/parser_proc_grammar.y" /* glr.c:2578 */
+#line 2288 "src/parser_proc_grammar.y" /* glr.c:2578 */
/* epilogue */
#if PSI_DEBUG_LEX
PSI_DEBUG_PRINT(P, "PSI: LEX index %4zu ", *index);
#endif
- if (psi_plist_get(tokens, (*index)++, &token)) {
+ if (psi_plist_get(tokens, (*index)++, &token) && token) {
#if PSI_DEBUG_LEX
PSI_DEBUG_DUMP(P, psi_token_dump, token);
#endif
psi_plist_get(tokens, last, &T);
if (T) {
- int i = (last >= 5) ? last - 5 : 0;
+ size_t i = (last >= 5) ? last - 5 : 0;
P->error(PSI_DATA(P), T, PSI_WARNING, "PSI %s at col %u", msg, T->col);
while (i <= last || T->type != PSI_T_EOS) {
+ const char *pos;
+
if (!psi_plist_get(tokens, i++, &T)) {
break;
}
+
+ if (i < last + 1) {
+ pos = "preceding";
+ } else if (i > last + 1) {
+ pos = "following";
+ } else {
+ pos = "offending";
+ }
+
P->error(PSI_DATA(P), T, PSI_WARNING, "PSI %s token '%s' at col %u",
- i<last+1?"preceding":i>last+1?"following":"offending", T->text->val, T->col);
+ pos, T ? T->text->val : "<deleted>", T ? T->col : 0);
}
} else {
P->error(PSI_DATA(P), NULL, PSI_WARNING, "PSI %s", msg);