diff options
Diffstat (limited to 'awkgram.c')
-rw-r--r-- | awkgram.c | 1529 |
1 files changed, 772 insertions, 757 deletions
@@ -525,33 +525,34 @@ enum yysymbol_kind_t YYSYMBOL_opt_fcall_expression_list = 118, /* opt_fcall_expression_list */ YYSYMBOL_fcall_expression_list = 119, /* fcall_expression_list */ YYSYMBOL_fcall_exp = 120, /* fcall_exp */ - YYSYMBOL_exp = 121, /* exp */ - YYSYMBOL_assign_operator = 122, /* assign_operator */ - YYSYMBOL_relop_or_less = 123, /* relop_or_less */ - YYSYMBOL_a_relop = 124, /* a_relop */ - YYSYMBOL_common_exp = 125, /* common_exp */ - YYSYMBOL_simp_exp = 126, /* simp_exp */ - YYSYMBOL_simp_exp_nc = 127, /* simp_exp_nc */ - YYSYMBOL_non_post_simp_exp = 128, /* non_post_simp_exp */ - YYSYMBOL_func_call = 129, /* func_call */ - YYSYMBOL_direct_func_call = 130, /* direct_func_call */ - YYSYMBOL_opt_variable = 131, /* opt_variable */ - YYSYMBOL_delete_subscript_list = 132, /* delete_subscript_list */ - YYSYMBOL_delete_subscript = 133, /* delete_subscript */ - YYSYMBOL_delete_exp_list = 134, /* delete_exp_list */ - YYSYMBOL_bracketed_exp_list = 135, /* bracketed_exp_list */ - YYSYMBOL_subscript = 136, /* subscript */ - YYSYMBOL_subscript_list = 137, /* subscript_list */ - YYSYMBOL_simple_variable = 138, /* simple_variable */ - YYSYMBOL_variable = 139, /* variable */ - YYSYMBOL_opt_incdec = 140, /* opt_incdec */ - YYSYMBOL_l_brace = 141, /* l_brace */ - YYSYMBOL_r_brace = 142, /* r_brace */ - YYSYMBOL_r_paren = 143, /* r_paren */ - YYSYMBOL_opt_semi = 144, /* opt_semi */ - YYSYMBOL_semi = 145, /* semi */ - YYSYMBOL_colon = 146, /* colon */ - YYSYMBOL_comma = 147 /* comma */ + YYSYMBOL_opt_fcall_exp = 121, /* opt_fcall_exp */ + YYSYMBOL_exp = 122, /* exp */ + YYSYMBOL_assign_operator = 123, /* assign_operator */ + YYSYMBOL_relop_or_less = 124, /* relop_or_less */ + YYSYMBOL_a_relop = 125, /* a_relop */ + YYSYMBOL_common_exp = 126, /* common_exp */ + YYSYMBOL_simp_exp = 127, /* simp_exp */ + YYSYMBOL_simp_exp_nc = 128, /* simp_exp_nc */ + YYSYMBOL_non_post_simp_exp = 129, /* non_post_simp_exp */ + YYSYMBOL_func_call = 130, /* func_call */ + YYSYMBOL_direct_func_call = 131, /* direct_func_call */ + YYSYMBOL_opt_variable = 132, /* opt_variable */ + YYSYMBOL_delete_subscript_list = 133, /* delete_subscript_list */ + YYSYMBOL_delete_subscript = 134, /* delete_subscript */ + YYSYMBOL_delete_exp_list = 135, /* delete_exp_list */ + YYSYMBOL_bracketed_exp_list = 136, /* bracketed_exp_list */ + YYSYMBOL_subscript = 137, /* subscript */ + YYSYMBOL_subscript_list = 138, /* subscript_list */ + YYSYMBOL_simple_variable = 139, /* simple_variable */ + YYSYMBOL_variable = 140, /* variable */ + YYSYMBOL_opt_incdec = 141, /* opt_incdec */ + YYSYMBOL_l_brace = 142, /* l_brace */ + YYSYMBOL_r_brace = 143, /* r_brace */ + YYSYMBOL_r_paren = 144, /* r_paren */ + YYSYMBOL_opt_semi = 145, /* opt_semi */ + YYSYMBOL_semi = 146, /* semi */ + YYSYMBOL_colon = 147, /* colon */ + YYSYMBOL_comma = 148 /* comma */ }; typedef enum yysymbol_kind_t yysymbol_kind_t; @@ -861,16 +862,16 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 2 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 1191 +#define YYLAST 1200 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 77 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 71 +#define YYNNTS 72 /* YYNRULES -- Number of rules. */ -#define YYNRULES 207 +#define YYNRULES 209 /* YYNSTATES -- Number of states. */ -#define YYNSTATES 355 +#define YYNSTATES 356 #define YYMAXUTOK 310 @@ -936,15 +937,15 @@ static const yytype_int16 yyrline[] = 1410, 1410, 1423, 1430, 1443, 1447, 1469, 1470, 1476, 1477, 1486, 1487, 1492, 1497, 1514, 1516, 1518, 1525, 1526, 1532, 1533, 1538, 1540, 1547, 1549, 1557, 1562, 1573, 1574, 1579, - 1581, 1588, 1590, 1598, 1603, 1613, 1614, 1619, 1626, 1630, - 1632, 1634, 1647, 1664, 1674, 1681, 1683, 1688, 1690, 1692, - 1700, 1702, 1707, 1709, 1714, 1716, 1718, 1775, 1777, 1779, - 1781, 1783, 1785, 1787, 1789, 1803, 1808, 1813, 1839, 1845, - 1847, 1849, 1851, 1853, 1855, 1860, 1864, 1896, 1904, 1910, - 1916, 1929, 1930, 1931, 1936, 1941, 1945, 1949, 1964, 1985, - 1990, 2027, 2064, 2065, 2071, 2072, 2077, 2079, 2086, 2103, - 2120, 2122, 2129, 2134, 2140, 2151, 2163, 2172, 2176, 2181, - 2185, 2189, 2193, 2198, 2199, 2203, 2207, 2211 + 1581, 1588, 1590, 1598, 1603, 1613, 1614, 1619, 1620, 1625, + 1632, 1636, 1638, 1640, 1653, 1670, 1680, 1687, 1689, 1694, + 1696, 1698, 1706, 1708, 1713, 1715, 1720, 1722, 1724, 1781, + 1783, 1785, 1787, 1789, 1791, 1793, 1795, 1809, 1814, 1819, + 1845, 1851, 1853, 1855, 1857, 1859, 1861, 1866, 1870, 1902, + 1910, 1916, 1922, 1935, 1936, 1937, 1942, 1947, 1951, 1955, + 1970, 1991, 1996, 2033, 2070, 2071, 2077, 2078, 2083, 2085, + 2092, 2109, 2126, 2128, 2135, 2140, 2146, 2157, 2169, 2178, + 2182, 2187, 2191, 2195, 2199, 2204, 2205, 2209, 2213, 2217 }; #endif @@ -981,13 +982,13 @@ static const char *const yytname[] = "print", "print_expression_list", "output_redir", "$@6", "if_statement", "nls", "opt_nls", "input_redir", "opt_param_list", "param_list", "opt_exp", "opt_expression_list", "expression_list", - "opt_fcall_expression_list", "fcall_expression_list", "fcall_exp", "exp", - "assign_operator", "relop_or_less", "a_relop", "common_exp", "simp_exp", - "simp_exp_nc", "non_post_simp_exp", "func_call", "direct_func_call", - "opt_variable", "delete_subscript_list", "delete_subscript", - "delete_exp_list", "bracketed_exp_list", "subscript", "subscript_list", - "simple_variable", "variable", "opt_incdec", "l_brace", "r_brace", - "r_paren", "opt_semi", "semi", "colon", "comma", YY_NULLPTR + "opt_fcall_expression_list", "fcall_expression_list", "fcall_exp", + "opt_fcall_exp", "exp", "assign_operator", "relop_or_less", "a_relop", + "common_exp", "simp_exp", "simp_exp_nc", "non_post_simp_exp", + "func_call", "direct_func_call", "opt_variable", "delete_subscript_list", + "delete_subscript", "delete_exp_list", "bracketed_exp_list", "subscript", + "subscript_list", "simple_variable", "variable", "opt_incdec", "l_brace", + "r_brace", "r_paren", "opt_semi", "semi", "colon", "comma", YY_NULLPTR }; static const char * @@ -1013,7 +1014,7 @@ static const yytype_int16 yytoknum[] = }; #endif -#define YYPACT_NINF (-283) +#define YYPACT_NINF (-276) #define yypact_value_is_default(Yyn) \ ((Yyn) == YYPACT_NINF) @@ -1027,42 +1028,42 @@ static const yytype_int16 yytoknum[] = STATE-NUM. */ static const yytype_int16 yypact[] = { - -283, 316, -283, -283, -45, -28, -283, -283, -283, -283, - 160, -283, -283, 23, 23, 23, -39, -18, -283, -283, - -283, 1047, 1047, -283, 1047, 1075, 818, 257, -283, 99, - -20, -283, -283, 11, 1017, 974, 378, 415, -283, -283, - -283, -283, 329, 742, 818, -283, 0, -283, -283, -283, - -283, -283, 25, 9, -283, 22, -283, -283, -283, 742, - 742, 79, 46, 18, 46, 46, 1047, 114, -283, -283, - 13, 286, 44, 47, 60, -283, 94, -283, -283, -283, - 11, -283, 94, -283, 151, -283, -283, 1002, 162, 1047, - 1047, 1047, 94, -283, -283, -283, 1047, 1047, 132, 378, - 1047, 1047, 1047, 1047, 1047, 1047, 1047, 1047, 1047, 1047, - 1047, 1047, -283, 170, -283, -283, 168, 1047, -283, -283, - -283, 116, 14, -283, 1132, 76, 1132, -283, -283, -283, - -283, 1047, -283, 116, 116, 286, -283, -283, -283, 1047, - -283, 144, 846, -283, -283, 34, 91, -283, 39, 91, - -283, 59, 91, 11, -283, 542, -283, -283, -283, 145, - -283, 135, 580, 1113, -283, 189, 1132, 23, 230, 230, - 46, 46, 46, 46, 230, 230, 46, 46, 46, 46, - -283, -283, 1132, -283, 1002, 770, -283, 27, 378, -283, - -283, 1132, 162, -283, 1132, -283, -283, -283, -283, -283, - -283, -283, 119, -283, 12, 123, 126, 94, 128, 91, - 91, -283, -283, 91, 1047, 91, 94, -283, -283, 91, - -283, -283, 1132, -283, 122, 94, 1047, -283, -283, -283, - -283, -283, -283, 116, 73, -283, 1047, 1047, -283, 198, - 1047, 1047, 660, 895, -283, -283, -283, 91, 1132, -283, - -283, -283, 590, 542, 94, -283, -283, 1132, 94, -283, - 28, 286, 91, -28, 141, 286, 286, 190, -23, -283, - 122, -283, 818, 205, -283, 325, -283, -283, -283, -283, - -283, 94, -283, -283, 115, -283, -283, -283, 94, 94, - 153, 162, 94, 13, -283, -283, 660, -283, -283, -20, - 660, 1047, 116, 694, 144, 1047, 209, -283, -283, 286, - 94, 1090, 94, 974, 94, 152, 94, 660, 94, 929, - 660, -283, 342, 176, -283, 158, -283, -283, 929, 116, - -283, -283, -283, 236, 243, -283, -283, 176, -283, 94, - -283, 116, 94, -283, -283, 94, -283, 94, 660, -283, - 390, 660, -283, 466, -283 + -276, 315, -276, -276, -45, -41, -276, -276, -276, -276, + 133, -276, -276, 13, 13, 13, -13, -7, -276, -276, + -276, 1046, 1046, -276, 1046, 1074, 817, 172, -276, -23, + -10, -276, -276, 29, 1112, 973, 276, 310, -276, -276, + -276, -276, 137, 741, 817, -276, 1, -276, -276, -276, + -276, -276, 64, 84, -276, 98, -276, -276, -276, 741, + 741, 173, 111, 117, 111, 111, 1046, 125, -276, -276, + 15, 1016, 31, 65, 151, -276, 141, -276, -276, -276, + 29, -276, 141, -276, 198, -276, -276, 1001, 203, 1046, + 1046, 1046, 141, -276, -276, -276, 1046, 1046, 175, 276, + 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, + 1046, 1046, -276, 209, -276, -276, 208, 1046, -276, -276, + -276, 142, 74, -276, 1141, 73, 1141, -276, -276, -276, + -276, 1046, -276, 142, 142, 1016, -276, -276, -276, 1046, + -276, 186, 845, -276, -276, 8, 90, -276, 34, 90, + -276, 59, 90, 29, -276, 541, -276, -276, -276, 11, + -276, 287, 130, 1131, -276, 139, 1141, 13, 123, 123, + 111, 111, 111, 111, 123, 123, 111, 111, 111, 111, + -276, -276, 1141, -276, 1001, 769, -276, 45, 276, -276, + -276, 1141, 203, -276, 1141, -276, -276, -276, -276, -276, + -276, -276, 174, -276, 10, 179, 183, 141, 185, 90, + 90, -276, -276, 90, 1046, 90, 141, -276, -276, 90, + -276, -276, 1141, -276, 182, 141, 1046, -276, -276, -276, + -276, -276, -276, 142, 77, -276, 1046, 1001, -276, 251, + 1046, 1046, 659, 894, -276, -276, -276, 90, 1141, -276, + -276, -276, 589, 541, 141, -276, -276, 1141, 141, -276, + 46, 1016, -276, 90, -41, 189, 1016, 1016, 243, -15, + -276, 182, -276, 817, 263, -276, 162, -276, -276, -276, + -276, -276, 141, -276, -276, 60, -276, -276, -276, 141, + 141, 211, 203, 141, 15, -276, -276, 659, -276, -276, + -10, 659, 1046, 142, 693, 186, 1046, 256, -276, -276, + 1016, 141, 1089, 141, 973, 141, 260, 141, 659, 141, + 928, 659, -276, 340, 222, -276, 212, -276, -276, 928, + 142, -276, -276, -276, 281, 282, -276, -276, 222, -276, + 141, -276, 142, 141, -276, -276, 141, -276, 141, 659, + -276, 389, 659, -276, 465, -276 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -1070,55 +1071,55 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_uint8 yydefact[] = { - 2, 0, 1, 6, 0, 193, 175, 176, 25, 26, - 0, 27, 28, 182, 0, 0, 0, 170, 5, 94, + 2, 0, 1, 6, 0, 195, 177, 178, 25, 26, + 0, 27, 28, 184, 0, 0, 0, 172, 5, 94, 42, 0, 0, 41, 0, 0, 0, 0, 3, 0, - 0, 165, 38, 4, 23, 136, 144, 145, 147, 171, - 179, 195, 172, 0, 0, 190, 0, 194, 31, 30, - 34, 35, 0, 0, 32, 98, 183, 173, 174, 0, - 0, 0, 178, 172, 177, 166, 0, 199, 172, 113, - 0, 111, 0, 0, 0, 180, 96, 205, 7, 8, - 46, 43, 96, 9, 0, 95, 140, 0, 0, 0, - 0, 0, 96, 141, 143, 142, 0, 0, 0, 146, + 0, 167, 38, 4, 23, 138, 146, 147, 149, 173, + 181, 197, 174, 0, 0, 192, 0, 196, 31, 30, + 34, 35, 0, 0, 32, 98, 185, 175, 176, 0, + 0, 0, 180, 174, 179, 168, 0, 201, 174, 113, + 0, 111, 0, 0, 0, 182, 96, 207, 7, 8, + 46, 43, 96, 9, 0, 95, 142, 0, 0, 0, + 0, 0, 96, 143, 145, 144, 0, 0, 0, 148, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 138, 137, 155, 156, 0, 0, 121, 40, - 126, 0, 0, 119, 125, 0, 111, 192, 191, 33, - 36, 0, 154, 0, 0, 0, 197, 198, 196, 114, - 202, 0, 0, 167, 15, 0, 0, 18, 0, 0, - 21, 0, 0, 97, 200, 0, 47, 39, 131, 132, - 133, 129, 130, 0, 207, 134, 24, 182, 152, 153, - 149, 150, 151, 148, 163, 164, 160, 161, 162, 159, - 128, 139, 127, 181, 122, 0, 189, 0, 99, 168, - 169, 115, 0, 116, 112, 14, 10, 17, 11, 20, + 0, 0, 140, 139, 157, 158, 0, 0, 121, 40, + 126, 0, 0, 119, 125, 0, 111, 194, 193, 33, + 36, 0, 156, 0, 0, 0, 199, 200, 198, 114, + 204, 0, 0, 169, 15, 0, 0, 18, 0, 0, + 21, 0, 0, 97, 202, 0, 47, 39, 133, 134, + 135, 131, 132, 0, 209, 136, 24, 184, 154, 155, + 151, 152, 153, 150, 165, 166, 162, 163, 164, 161, + 130, 141, 129, 183, 122, 0, 191, 0, 99, 170, + 171, 115, 0, 116, 112, 14, 10, 17, 11, 20, 12, 45, 0, 63, 0, 0, 0, 96, 0, 0, 0, 85, 86, 0, 107, 0, 96, 44, 57, 0, - 66, 50, 71, 43, 203, 96, 0, 158, 123, 124, - 120, 104, 102, 0, 0, 157, 0, 107, 68, 0, + 66, 50, 71, 43, 205, 96, 0, 160, 123, 124, + 120, 104, 102, 0, 0, 159, 0, 127, 68, 0, 0, 0, 0, 72, 58, 59, 60, 0, 108, 61, - 201, 65, 0, 0, 96, 204, 48, 135, 96, 105, - 0, 0, 0, 184, 0, 0, 0, 0, 193, 73, - 0, 62, 0, 89, 87, 0, 49, 29, 37, 106, - 103, 96, 64, 69, 0, 186, 188, 70, 96, 96, - 0, 0, 96, 0, 90, 67, 0, 185, 187, 0, - 0, 0, 0, 0, 88, 0, 92, 74, 52, 0, - 96, 0, 96, 91, 96, 0, 96, 0, 96, 72, - 0, 76, 0, 0, 75, 0, 53, 54, 72, 0, - 93, 79, 82, 0, 0, 83, 84, 0, 206, 96, - 51, 0, 96, 81, 80, 96, 43, 96, 0, 43, - 0, 0, 56, 0, 55 + 203, 65, 0, 0, 96, 206, 48, 137, 96, 105, + 0, 0, 128, 0, 186, 0, 0, 0, 0, 195, + 73, 0, 62, 0, 89, 87, 0, 49, 29, 37, + 106, 103, 96, 64, 69, 0, 188, 190, 70, 96, + 96, 0, 0, 96, 0, 90, 67, 0, 187, 189, + 0, 0, 0, 0, 0, 88, 0, 92, 74, 52, + 0, 96, 0, 96, 91, 96, 0, 96, 0, 96, + 72, 0, 76, 0, 0, 75, 0, 53, 54, 72, + 0, 93, 79, 82, 0, 0, 83, 84, 0, 208, + 96, 51, 0, 96, 81, 80, 96, 43, 96, 0, + 43, 0, 0, 56, 0, 55 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -283, -283, -283, -283, -283, -283, -283, 226, -283, -283, - -283, -283, -63, -283, -77, -283, -215, -73, -30, -283, - -283, -234, -283, -283, -282, -283, -283, -283, -283, -283, - -283, -283, -283, 5, -35, -283, -283, -283, 24, -283, - -43, 101, -283, -15, -1, -283, -283, -283, -40, 17, - -283, 237, -283, -6, 96, -283, -283, -16, -42, -283, - -283, -81, -2, -283, -27, -186, -65, -283, -62, -68, - -8 + -276, -276, -276, -276, -276, -276, -276, 253, -276, -276, + -276, -276, -32, -276, -77, -276, -208, -55, -68, -276, + -276, -237, -276, -276, -275, -276, -276, -276, -276, -276, + -276, -276, -276, 47, -48, -276, -276, -276, -276, -276, + -43, 157, -276, -157, -276, -1, -276, -276, -276, 0, + 17, -276, 268, -276, 2, 138, -276, -276, 22, -38, + -276, -276, -81, -2, -276, -27, -213, -66, -276, -22, + -30, -29 }; /* YYDEFGOTO[NTERM-NUM]. */ @@ -1126,12 +1127,12 @@ static const yytype_int16 yydefgoto[] = { -1, 1, 28, 146, 149, 152, 29, 78, 53, 54, 30, 187, 31, 84, 120, 32, 155, 79, 217, 218, - 237, 219, 252, 263, 270, 315, 324, 337, 220, 273, - 295, 305, 221, 153, 154, 132, 233, 234, 247, 274, - 70, 121, 122, 123, 222, 117, 95, 96, 35, 36, - 37, 38, 39, 40, 55, 283, 284, 285, 45, 46, - 47, 41, 42, 138, 223, 224, 143, 254, 82, 339, - 142 + 237, 219, 252, 264, 271, 316, 325, 338, 220, 274, + 296, 306, 221, 153, 154, 132, 233, 234, 247, 275, + 70, 121, 122, 123, 263, 222, 117, 95, 96, 35, + 36, 37, 38, 39, 40, 55, 284, 285, 286, 45, + 46, 47, 41, 42, 138, 223, 224, 143, 254, 82, + 340, 142 }; /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If @@ -1139,250 +1140,252 @@ static const yytype_int16 yydefgoto[] = number is the opposite. If YYTABLE_NINF, syntax error. */ static const yytype_int16 yytable[] = { - 34, 125, 81, 81, 128, 141, 33, 160, 253, 269, - 158, 56, 57, 58, 139, 184, 238, 127, 291, 63, - 63, 75, 63, 68, 43, 71, 97, 5, 231, 279, - 59, 232, 280, 63, 80, 195, 180, 329, 62, 64, - 197, 65, 124, 126, 44, 144, 341, 156, 147, 44, - 145, 60, 99, 148, 76, 75, 183, 164, 124, 124, - 199, 150, 114, 115, 85, 135, 151, 276, 189, 190, - 92, 92, 44, 196, 259, 129, 198, 139, 130, 200, - 131, 239, 4, 140, -118, 269, 159, -13, 161, 162, - 163, 25, -16, 225, 269, 165, 166, -100, 63, 63, + 34, 125, 81, 81, 141, 97, 270, 160, 128, 195, + 158, 56, 57, 58, 238, 253, 139, 5, 127, 63, + 63, 86, 63, 68, 43, 71, 292, 228, 230, 75, + 19, 44, 144, 63, 156, 197, 180, 145, 62, 64, + 277, 65, 124, 126, 164, 330, 231, 280, 33, 232, + 281, 76, 99, 77, 342, 183, 59, 44, 124, 124, + 199, -13, 60, 75, 76, 135, 147, 189, 190, 93, + 94, 148, 92, 44, 139, 184, 80, 298, 259, 239, + 262, 25, 85, 270, -13, 140, 159, -16, 161, 162, + 163, 196, 270, 185, 198, 165, 166, 200, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, - -13, 235, -19, 105, 185, -16, 182, 168, 169, 170, + -16, 235, -19, 341, 129, -100, 182, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 63, - 92, 350, 297, 92, 353, -19, 244, 245, 191, 340, - 246, 194, 249, -101, 19, 86, 251, 19, 188, 186, - 87, 80, 19, 321, 80, 86, 157, 80, 136, 137, - 133, 134, 255, 48, 49, 56, 5, 77, 258, 228, - 230, 167, 242, 76, 271, 77, 88, 322, 323, 119, - 225, 250, 181, 124, 124, 192, 140, 44, 236, 282, - 256, 225, 240, 93, 94, 241, 281, 243, 77, -119, - 288, 289, 264, 93, 94, 19, 50, 51, 292, 275, - 302, 287, 267, 248, 80, 80, 294, 290, 80, 277, - 80, 286, 301, 278, 80, 257, 260, -96, 304, 293, - 314, 52, 338, 216, 225, 261, 248, 310, 225, 265, - 266, 312, 286, 343, 316, 336, 296, -119, -119, 318, - 344, 126, 80, 299, 300, 225, 83, 303, 225, 335, - 4, 262, 67, 227, 342, 313, 306, 80, 298, 345, - 308, 71, 307, 0, 0, 317, 347, 319, 0, 320, - 325, 326, 0, 328, 0, 0, 225, 327, 225, 225, - 330, 225, 102, 103, 104, 0, 86, 105, 0, 0, - 309, 87, 311, 63, 346, 0, 72, 348, 73, 74, - 349, 63, 351, 0, 0, 0, 2, 3, 352, 4, - 5, 354, 0, 6, 7, 0, 139, 88, 89, 90, - 99, 0, 0, 0, 8, 9, -110, 0, 0, 0, - 0, 91, 112, 113, 93, 94, 0, 0, 0, 331, - 332, 119, 10, 11, 12, 13, 140, 0, 0, 0, - 14, 15, 16, 17, 18, 0, 0, 0, 0, 19, - 20, 0, 0, 114, 115, 0, 21, 22, -110, 23, - 0, 24, 92, 116, 25, 26, 0, 27, 0, 0, - -22, 201, -22, 4, 5, -110, 20, 6, 7, 0, - 0, -110, 333, 334, 0, 23, 0, 0, 0, 0, - 202, 0, 203, 204, 205, -78, -78, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 0, 0, 0, 13, - 215, 0, 0, 0, 14, 15, 16, 17, 100, 101, - 102, 103, 104, -78, 20, 105, 0, 0, 0, 0, - 21, 22, 0, 23, 0, 24, 0, 0, 25, 26, - 0, 61, 0, 0, 76, -78, 77, 201, 0, 4, - 5, 0, 0, 6, 7, 106, 107, 108, 109, 110, - 0, 0, 111, 0, 0, 0, 202, 0, 203, 204, - 205, -77, -77, 206, 207, 208, 209, 210, 211, 212, - 213, 214, 0, 0, 0, 13, 215, 0, 0, 0, - 14, 15, 16, 17, 0, 0, 0, 0, 0, -77, - 20, 0, 0, 0, 0, 0, 21, 22, 0, 23, - 0, 24, 0, 0, 25, 26, 0, 61, 0, 0, - 76, -77, 77, 201, 0, 4, 5, 0, 0, 6, - 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 202, 0, 203, 204, 205, 0, 0, 206, - 207, 208, 209, 210, 211, 212, 213, 214, 0, 0, - 0, 13, 215, 0, 0, 0, 14, 15, 16, 17, - 86, 69, 0, 4, 5, 87, 20, 6, 7, 0, - 0, -109, 21, 22, 0, 23, 0, 24, 0, 0, - 25, 26, 0, 61, 0, 0, 76, 216, 77, 0, - 0, 88, 89, 0, 0, 0, 0, 0, 0, 13, - 0, 0, 0, 0, 14, 15, 16, 17, 93, 94, - 0, 0, 0, -109, 20, 0, 0, 0, 0, 0, - 21, 22, 0, 23, 0, 24, 0, 0, 25, 272, - -109, 61, 0, 4, 5, 0, -109, 6, 7, 0, + 92, 92, 44, 225, 92, -19, 48, 49, 191, 351, + 86, 194, 354, 19, -118, 87, 186, -101, 188, -119, + 112, 113, 150, 130, 244, 245, 131, 151, 246, 242, + 249, 114, 115, 139, 251, 56, 77, 258, 250, 136, + 137, 88, 89, -110, 268, 4, 4, 256, 105, 50, + 51, 114, 115, 124, 124, 102, 103, 104, 93, 94, + 105, 116, 272, 80, 19, 282, 80, -119, -119, 80, + 289, 290, 255, 157, 52, 260, 278, 5, 283, 276, + 279, 303, 140, 248, 167, -110, 133, 134, 119, 92, + 225, 72, 181, 73, 74, 257, 287, 192, 305, 307, + 294, 225, -110, 309, 297, 261, 124, 311, -110, 266, + 267, 300, 301, 236, 317, 304, 337, 287, 240, 293, + 328, 126, 241, 331, 243, 265, 80, 80, 77, 288, + 80, 322, 80, 318, 343, 320, 80, 321, 326, 327, + 291, 329, 71, 308, 295, 225, 348, 315, 339, 225, + 302, 353, 313, 83, 355, 323, 324, 216, 344, 345, + 319, 336, 347, 67, 80, 349, 225, 86, 350, 225, + 352, 310, 87, 312, 63, 227, 314, 299, 346, 0, + 80, 0, 63, 19, 0, 2, 3, 0, 4, 5, + 0, 0, 6, 7, 0, 0, 0, 225, 88, 225, + 225, 99, 225, 8, 9, -96, 100, 101, 102, 103, + 104, 0, 0, 105, 0, 93, 94, 332, 333, 119, + 0, 10, 11, 12, 13, 0, 0, 0, 0, 14, + 15, 16, 17, 18, 0, 0, 0, 0, 19, 20, + 106, 107, 108, 109, 110, 21, 22, 111, 23, 0, + 24, 0, 0, 25, 26, 0, 27, 0, 0, -22, + 201, -22, 4, 5, 20, 0, 6, 7, 0, 0, + 334, 335, 0, 23, 0, 0, 0, 0, 0, 202, + 0, 203, 204, 205, -78, -78, 206, 207, 208, 209, + 210, 211, 212, 213, 214, 0, 0, 0, 13, 215, + 0, 0, 0, 14, 15, 16, 17, 0, 0, 0, + 0, 0, -78, 20, 0, 0, 0, 0, 0, 21, + 22, 0, 23, 0, 24, 0, 0, 25, 26, 0, + 61, 0, 0, 76, -78, 77, 201, 0, 4, 5, + 0, 0, 6, 7, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 202, 0, 203, 204, 205, + -77, -77, 206, 207, 208, 209, 210, 211, 212, 213, + 214, 0, 0, 0, 13, 215, 0, 0, 0, 14, + 15, 16, 17, 0, 0, 0, 0, 0, -77, 20, + 0, 0, 0, 0, 0, 21, 22, 0, 23, 0, + 24, 0, 0, 25, 26, 0, 61, 0, 0, 76, + -77, 77, 201, 0, 4, 5, 0, 0, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 202, 0, 203, 204, 205, 0, 0, 206, 207, 208, - 209, 210, 211, 212, 213, 214, 0, 4, 5, 13, - 215, 6, 7, 0, 14, 15, 16, 17, 0, 0, - 0, 0, 0, 0, 20, 0, 0, 0, 0, 0, - 21, 22, 0, 23, 0, 24, 0, 0, 25, 26, - 0, 61, 0, 13, 76, 0, 77, 0, 14, 15, - 16, 17, 0, 118, 0, 4, 5, 0, 20, 6, - 7, 119, 0, 0, 21, 22, 0, 23, 0, 24, - 0, 0, 25, 26, 0, 61, 0, 0, 0, 0, - 77, 229, 0, 4, 5, 0, 0, 6, 7, 119, - 0, 13, 0, 0, 0, 0, 14, 15, 16, 17, - 0, 0, 0, 0, 0, 0, 20, 0, 0, 0, - 0, 0, 21, 22, 0, 23, 0, 24, 0, 13, - 25, 26, -117, 61, 14, 15, 16, 17, 0, 69, - 0, 4, 5, 0, 20, 6, 7, 0, 0, 0, - 21, 22, 0, 23, 0, 24, 0, 0, 25, 26, - 0, 61, 0, 0, 0, 0, 0, 193, 0, 4, - 5, 0, 0, 6, 7, 0, 0, 13, 0, 0, - 0, 0, 14, 15, 16, 17, 0, 0, 0, 0, - 0, 0, 20, 0, 0, 0, 0, 0, 21, 22, - 0, 23, 0, 24, 0, 13, 25, 26, 0, 61, - 14, 15, 16, 17, 0, 0, 0, 0, 4, 268, - 20, 0, 6, 7, 0, 0, 21, 22, 0, 23, - 0, 24, 0, 0, 25, 26, 0, 61, 204, 0, - 0, 0, 0, 0, 0, 0, 0, 211, 212, 0, - 0, 0, 4, 5, 13, 0, 6, 7, 0, 14, - 15, 16, 17, 0, 0, 0, 0, 0, 0, 20, - 0, 0, 204, 0, 0, 21, 22, 0, 23, 0, - 24, 211, 212, 25, 26, 0, 61, 0, 13, 0, - 0, 0, 0, 14, 15, 16, 17, 4, 5, 0, - 0, 6, 7, 20, 0, 0, 98, 0, 0, 21, + 0, 202, 0, 203, 204, 205, 0, 0, 206, 207, + 208, 209, 210, 211, 212, 213, 214, 0, 0, 0, + 13, 215, 0, 0, 0, 14, 15, 16, 17, 0, + 69, 0, 4, 5, 0, 20, 6, 7, 0, 0, + -109, 21, 22, 0, 23, 0, 24, 0, 0, 25, + 26, 0, 61, 0, 0, 76, 216, 77, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, + 0, 0, 0, 14, 15, 16, 17, 0, 0, 0, + 0, 0, -109, 20, 0, 0, 0, 0, 0, 21, + 22, 0, 23, 0, 24, 0, 0, 25, 273, -109, + 61, 0, 4, 5, 0, -109, 6, 7, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, + 0, 203, 204, 205, 0, 0, 206, 207, 208, 209, + 210, 211, 212, 213, 214, 0, 4, 5, 13, 215, + 6, 7, 0, 14, 15, 16, 17, 0, 0, 0, + 0, 0, 0, 20, 0, 0, 0, 0, 0, 21, + 22, 0, 23, 0, 24, 0, 0, 25, 26, 0, + 61, 0, 13, 76, 0, 77, 0, 14, 15, 16, + 17, 0, 118, 0, 4, 5, 0, 20, 6, 7, + 119, 0, 0, 21, 22, 0, 23, 0, 24, 0, + 0, 25, 26, 0, 61, 0, 0, 0, 0, 77, + 229, 0, 4, 5, 0, 0, 6, 7, 119, 0, + 13, 0, 0, 0, 0, 14, 15, 16, 17, 0, + 0, 0, 0, 0, 0, 20, 0, 0, 0, 0, + 0, 21, 22, 0, 23, 0, 24, 0, 13, 25, + 26, -117, 61, 14, 15, 16, 17, 0, 69, 0, + 4, 5, 0, 20, 6, 7, 0, 0, 0, 21, 22, 0, 23, 0, 24, 0, 0, 25, 26, 0, - 61, 0, 0, 0, 0, 4, 5, 0, 0, 6, - 7, 119, 0, 13, 0, 0, 0, 0, 14, 15, - 16, 17, 0, 0, 0, 0, 0, 86, 20, 0, - 0, 0, 87, 0, 21, 22, 0, 23, 0, 24, - 0, 13, 25, 26, 0, 61, 14, 15, 16, 17, - 4, 5, 0, 0, 6, 7, 20, 0, 88, 89, - 90, 0, 21, 22, 0, 23, 0, 24, 0, 0, - 25, 26, 91, 61, 92, 93, 94, 0, 4, 5, + 61, 0, 0, 0, 0, 0, 193, 0, 4, 5, 0, 0, 6, 7, 0, 0, 13, 0, 0, 0, 0, 14, 15, 16, 17, 0, 0, 0, 0, 0, - 86, 20, 0, 0, 0, 87, 0, 21, 22, 0, - 23, 0, 24, 0, 0, 25, 26, 0, 61, 14, - 15, 16, 17, 86, 0, 0, 0, 0, 87, 20, - 0, 88, 89, 90, 0, 21, 22, 0, 23, 0, - 24, 0, 86, 25, 66, 91, 61, 87, 93, 94, - 0, 0, 0, 0, 88, 89, 90, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 77, 0, 91, 226, - 0, 93, 94, 88, 89, 90, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 91, 0, 0, - 93, 94 + 0, 20, 0, 0, 0, 0, 0, 21, 22, 0, + 23, 0, 24, 0, 13, 25, 26, 0, 61, 14, + 15, 16, 17, 0, 0, 0, 0, 4, 269, 20, + 0, 6, 7, 0, 0, 21, 22, 0, 23, 0, + 24, 0, 0, 25, 26, 0, 61, 204, 0, 0, + 0, 0, 0, 0, 0, 0, 211, 212, 0, 0, + 0, 4, 5, 13, 0, 6, 7, 0, 14, 15, + 16, 17, 0, 0, 0, 0, 0, 0, 20, 0, + 0, 204, 0, 0, 21, 22, 0, 23, 0, 24, + 211, 212, 25, 26, 0, 61, 0, 13, 0, 0, + 0, 0, 14, 15, 16, 17, 4, 5, 0, 0, + 6, 7, 20, 0, 0, 98, 0, 0, 21, 22, + 0, 23, 0, 24, 0, 0, 25, 26, 0, 61, + 0, 0, 0, 0, 4, 5, 0, 0, 6, 7, + 119, 0, 13, 0, 0, 0, 0, 14, 15, 16, + 17, 0, 0, 0, 0, 0, 86, 20, 0, 0, + 0, 87, 0, 21, 22, 0, 23, 0, 24, 0, + 13, 25, 26, 0, 61, 14, 15, 16, 17, 4, + 5, 0, 0, 6, 7, 20, 0, 88, 89, 90, + 0, 21, 22, 0, 23, 0, 24, 0, 0, 25, + 26, 91, 61, 0, 93, 94, 0, 4, 5, 0, + 0, 6, 7, 0, 0, 13, 140, 0, 0, 0, + 14, 15, 16, 17, 0, 0, 0, 0, 0, 86, + 20, 0, 0, 0, 87, 0, 21, 22, 0, 23, + 0, 24, 0, 0, 25, 26, 0, 61, 14, 15, + 16, 17, 86, 0, 0, 0, 0, 87, 20, 0, + 88, 89, 90, 0, 21, 22, 0, 23, 0, 24, + 0, 86, 25, 66, 91, 61, 87, 93, 94, 0, + 0, 86, 0, 88, 89, 90, 87, 0, 0, 0, + 0, 0, 0, 0, 0, 77, 0, 91, 0, 92, + 93, 94, 88, 89, 90, 0, 0, 0, 0, 0, + 0, 0, 88, 89, 90, 0, 91, 226, 0, 93, + 94, 0, 0, 0, 0, 0, 91, 0, 0, 93, + 94 }; static const yytype_int16 yycheck[] = { - 1, 44, 29, 30, 46, 70, 1, 88, 223, 243, - 87, 13, 14, 15, 1, 1, 4, 17, 41, 21, - 22, 27, 24, 25, 69, 26, 34, 4, 1, 1, - 69, 4, 4, 35, 29, 1, 113, 319, 21, 22, - 1, 24, 43, 44, 72, 1, 328, 82, 1, 72, - 6, 69, 35, 6, 74, 61, 121, 92, 59, 60, - 1, 1, 44, 45, 53, 66, 6, 253, 133, 134, - 57, 57, 72, 146, 1, 50, 149, 1, 69, 152, - 58, 69, 3, 70, 70, 319, 87, 53, 89, 90, - 91, 68, 53, 155, 328, 96, 97, 70, 100, 101, + 1, 44, 29, 30, 70, 34, 243, 88, 46, 1, + 87, 13, 14, 15, 4, 223, 1, 4, 17, 21, + 22, 10, 24, 25, 69, 26, 41, 184, 185, 27, + 53, 72, 1, 35, 82, 1, 113, 6, 21, 22, + 253, 24, 43, 44, 92, 320, 1, 1, 1, 4, + 4, 74, 35, 76, 329, 121, 69, 72, 59, 60, + 1, 53, 69, 61, 74, 66, 1, 133, 134, 58, + 59, 6, 57, 72, 1, 1, 29, 17, 1, 69, + 237, 68, 53, 320, 76, 70, 87, 53, 89, 90, + 91, 146, 329, 122, 149, 96, 97, 152, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, - 76, 192, 53, 67, 122, 76, 117, 100, 101, 102, + 76, 192, 53, 326, 50, 70, 117, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 131, - 57, 346, 17, 57, 349, 76, 209, 210, 139, 325, - 213, 142, 215, 70, 53, 10, 219, 53, 131, 73, - 15, 146, 53, 1, 149, 10, 5, 152, 44, 45, - 59, 60, 224, 3, 4, 167, 4, 76, 233, 184, - 185, 39, 207, 74, 247, 76, 41, 25, 26, 9, - 242, 216, 14, 184, 185, 41, 70, 72, 69, 262, - 225, 253, 69, 58, 59, 69, 261, 69, 76, 10, - 265, 266, 4, 58, 59, 53, 46, 47, 270, 252, - 291, 70, 242, 214, 209, 210, 11, 27, 213, 254, - 215, 263, 69, 258, 219, 226, 234, 75, 293, 272, - 21, 71, 56, 75, 296, 236, 237, 302, 300, 240, - 241, 303, 284, 7, 309, 322, 281, 58, 59, 311, - 7, 252, 247, 288, 289, 317, 30, 292, 320, 322, - 3, 237, 25, 167, 329, 305, 296, 262, 284, 337, - 300, 272, 299, -1, -1, 310, 341, 312, -1, 314, - 315, 316, -1, 318, -1, -1, 348, 317, 350, 351, - 320, 353, 62, 63, 64, -1, 10, 67, -1, -1, - 301, 15, 303, 305, 339, -1, 49, 342, 51, 52, - 345, 313, 347, -1, -1, -1, 0, 1, 348, 3, - 4, 351, -1, 7, 8, -1, 1, 41, 42, 43, - 313, -1, -1, -1, 18, 19, 11, -1, -1, -1, - -1, 55, 13, 14, 58, 59, -1, -1, -1, 7, - 8, 9, 36, 37, 38, 39, 70, -1, -1, -1, - 44, 45, 46, 47, 48, -1, -1, -1, -1, 53, - 54, -1, -1, 44, 45, -1, 60, 61, 53, 63, - -1, 65, 57, 54, 68, 69, -1, 71, -1, -1, - 74, 1, 76, 3, 4, 70, 54, 7, 8, -1, - -1, 76, 60, 61, -1, 63, -1, -1, -1, -1, - 20, -1, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, -1, -1, -1, 39, - 40, -1, -1, -1, 44, 45, 46, 47, 60, 61, - 62, 63, 64, 53, 54, 67, -1, -1, -1, -1, - 60, 61, -1, 63, -1, 65, -1, -1, 68, 69, - -1, 71, -1, -1, 74, 75, 76, 1, -1, 3, - 4, -1, -1, 7, 8, 60, 61, 62, 63, 64, - -1, -1, 67, -1, -1, -1, 20, -1, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, -1, -1, -1, 39, 40, -1, -1, -1, - 44, 45, 46, 47, -1, -1, -1, -1, -1, 53, - 54, -1, -1, -1, -1, -1, 60, 61, -1, 63, - -1, 65, -1, -1, 68, 69, -1, 71, -1, -1, - 74, 75, 76, 1, -1, 3, 4, -1, -1, 7, - 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 20, -1, 22, 23, 24, -1, -1, 27, - 28, 29, 30, 31, 32, 33, 34, 35, -1, -1, - -1, 39, 40, -1, -1, -1, 44, 45, 46, 47, - 10, 1, -1, 3, 4, 15, 54, 7, 8, -1, - -1, 11, 60, 61, -1, 63, -1, 65, -1, -1, - 68, 69, -1, 71, -1, -1, 74, 75, 76, -1, - -1, 41, 42, -1, -1, -1, -1, -1, -1, 39, - -1, -1, -1, -1, 44, 45, 46, 47, 58, 59, - -1, -1, -1, 53, 54, -1, -1, -1, -1, -1, - 60, 61, -1, 63, -1, 65, -1, -1, 68, 69, - 70, 71, -1, 3, 4, -1, 76, 7, 8, -1, + 57, 57, 72, 155, 57, 76, 3, 4, 139, 347, + 10, 142, 350, 53, 70, 15, 73, 70, 131, 10, + 13, 14, 1, 69, 209, 210, 58, 6, 213, 207, + 215, 44, 45, 1, 219, 167, 76, 233, 216, 44, + 45, 41, 42, 11, 242, 3, 3, 225, 67, 46, + 47, 44, 45, 184, 185, 62, 63, 64, 58, 59, + 67, 54, 247, 146, 53, 261, 149, 58, 59, 152, + 266, 267, 224, 5, 71, 234, 254, 4, 263, 252, + 258, 292, 70, 214, 39, 53, 59, 60, 9, 57, + 242, 49, 14, 51, 52, 226, 264, 41, 294, 297, + 273, 253, 70, 301, 282, 236, 237, 303, 76, 240, + 241, 289, 290, 69, 310, 293, 323, 285, 69, 271, + 318, 252, 69, 321, 69, 4, 209, 210, 76, 70, + 213, 1, 215, 311, 330, 313, 219, 315, 316, 317, + 27, 319, 273, 300, 11, 297, 342, 21, 56, 301, + 69, 349, 304, 30, 352, 25, 26, 75, 7, 7, + 312, 323, 340, 25, 247, 343, 318, 10, 346, 321, + 348, 302, 15, 304, 306, 167, 306, 285, 338, -1, + 263, -1, 314, 53, -1, 0, 1, -1, 3, 4, + -1, -1, 7, 8, -1, -1, -1, 349, 41, 351, + 352, 314, 354, 18, 19, 75, 60, 61, 62, 63, + 64, -1, -1, 67, -1, 58, 59, 7, 8, 9, + -1, 36, 37, 38, 39, -1, -1, -1, -1, 44, + 45, 46, 47, 48, -1, -1, -1, -1, 53, 54, + 60, 61, 62, 63, 64, 60, 61, 67, 63, -1, + 65, -1, -1, 68, 69, -1, 71, -1, -1, 74, + 1, 76, 3, 4, 54, -1, 7, 8, -1, -1, + 60, 61, -1, 63, -1, -1, -1, -1, -1, 20, + -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, -1, -1, -1, 39, 40, + -1, -1, -1, 44, 45, 46, 47, -1, -1, -1, + -1, -1, 53, 54, -1, -1, -1, -1, -1, 60, + 61, -1, 63, -1, 65, -1, -1, 68, 69, -1, + 71, -1, -1, 74, 75, 76, 1, -1, 3, 4, + -1, -1, 7, 8, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 20, -1, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, -1, -1, -1, 39, 40, -1, -1, -1, 44, + 45, 46, 47, -1, -1, -1, -1, -1, 53, 54, + -1, -1, -1, -1, -1, 60, 61, -1, 63, -1, + 65, -1, -1, 68, 69, -1, 71, -1, -1, 74, + 75, 76, 1, -1, 3, 4, -1, -1, 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 20, -1, 22, 23, 24, -1, -1, 27, 28, 29, - 30, 31, 32, 33, 34, 35, -1, 3, 4, 39, - 40, 7, 8, -1, 44, 45, 46, 47, -1, -1, - -1, -1, -1, -1, 54, -1, -1, -1, -1, -1, - 60, 61, -1, 63, -1, 65, -1, -1, 68, 69, - -1, 71, -1, 39, 74, -1, 76, -1, 44, 45, - 46, 47, -1, 1, -1, 3, 4, -1, 54, 7, - 8, 9, -1, -1, 60, 61, -1, 63, -1, 65, - -1, -1, 68, 69, -1, 71, -1, -1, -1, -1, - 76, 1, -1, 3, 4, -1, -1, 7, 8, 9, - -1, 39, -1, -1, -1, -1, 44, 45, 46, 47, - -1, -1, -1, -1, -1, -1, 54, -1, -1, -1, - -1, -1, 60, 61, -1, 63, -1, 65, -1, 39, - 68, 69, 70, 71, 44, 45, 46, 47, -1, 1, - -1, 3, 4, -1, 54, 7, 8, -1, -1, -1, - 60, 61, -1, 63, -1, 65, -1, -1, 68, 69, - -1, 71, -1, -1, -1, -1, -1, 1, -1, 3, - 4, -1, -1, 7, 8, -1, -1, 39, -1, -1, - -1, -1, 44, 45, 46, 47, -1, -1, -1, -1, - -1, -1, 54, -1, -1, -1, -1, -1, 60, 61, - -1, 63, -1, 65, -1, 39, 68, 69, -1, 71, - 44, 45, 46, 47, -1, -1, -1, -1, 3, 4, - 54, -1, 7, 8, -1, -1, 60, 61, -1, 63, - -1, 65, -1, -1, 68, 69, -1, 71, 23, -1, - -1, -1, -1, -1, -1, -1, -1, 32, 33, -1, - -1, -1, 3, 4, 39, -1, 7, 8, -1, 44, - 45, 46, 47, -1, -1, -1, -1, -1, -1, 54, - -1, -1, 23, -1, -1, 60, 61, -1, 63, -1, - 65, 32, 33, 68, 69, -1, 71, -1, 39, -1, - -1, -1, -1, 44, 45, 46, 47, 3, 4, -1, - -1, 7, 8, 54, -1, -1, 12, -1, -1, 60, + -1, 20, -1, 22, 23, 24, -1, -1, 27, 28, + 29, 30, 31, 32, 33, 34, 35, -1, -1, -1, + 39, 40, -1, -1, -1, 44, 45, 46, 47, -1, + 1, -1, 3, 4, -1, 54, 7, 8, -1, -1, + 11, 60, 61, -1, 63, -1, 65, -1, -1, 68, + 69, -1, 71, -1, -1, 74, 75, 76, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 39, -1, + -1, -1, -1, 44, 45, 46, 47, -1, -1, -1, + -1, -1, 53, 54, -1, -1, -1, -1, -1, 60, + 61, -1, 63, -1, 65, -1, -1, 68, 69, 70, + 71, -1, 3, 4, -1, 76, 7, 8, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 20, + -1, 22, 23, 24, -1, -1, 27, 28, 29, 30, + 31, 32, 33, 34, 35, -1, 3, 4, 39, 40, + 7, 8, -1, 44, 45, 46, 47, -1, -1, -1, + -1, -1, -1, 54, -1, -1, -1, -1, -1, 60, + 61, -1, 63, -1, 65, -1, -1, 68, 69, -1, + 71, -1, 39, 74, -1, 76, -1, 44, 45, 46, + 47, -1, 1, -1, 3, 4, -1, 54, 7, 8, + 9, -1, -1, 60, 61, -1, 63, -1, 65, -1, + -1, 68, 69, -1, 71, -1, -1, -1, -1, 76, + 1, -1, 3, 4, -1, -1, 7, 8, 9, -1, + 39, -1, -1, -1, -1, 44, 45, 46, 47, -1, + -1, -1, -1, -1, -1, 54, -1, -1, -1, -1, + -1, 60, 61, -1, 63, -1, 65, -1, 39, 68, + 69, 70, 71, 44, 45, 46, 47, -1, 1, -1, + 3, 4, -1, 54, 7, 8, -1, -1, -1, 60, 61, -1, 63, -1, 65, -1, -1, 68, 69, -1, - 71, -1, -1, -1, -1, 3, 4, -1, -1, 7, - 8, 9, -1, 39, -1, -1, -1, -1, 44, 45, - 46, 47, -1, -1, -1, -1, -1, 10, 54, -1, - -1, -1, 15, -1, 60, 61, -1, 63, -1, 65, - -1, 39, 68, 69, -1, 71, 44, 45, 46, 47, - 3, 4, -1, -1, 7, 8, 54, -1, 41, 42, - 43, -1, 60, 61, -1, 63, -1, 65, -1, -1, - 68, 69, 55, 71, 57, 58, 59, -1, 3, 4, + 71, -1, -1, -1, -1, -1, 1, -1, 3, 4, -1, -1, 7, 8, -1, -1, 39, -1, -1, -1, -1, 44, 45, 46, 47, -1, -1, -1, -1, -1, - 10, 54, -1, -1, -1, 15, -1, 60, 61, -1, - 63, -1, 65, -1, -1, 68, 69, -1, 71, 44, - 45, 46, 47, 10, -1, -1, -1, -1, 15, 54, - -1, 41, 42, 43, -1, 60, 61, -1, 63, -1, - 65, -1, 10, 68, 69, 55, 71, 15, 58, 59, - -1, -1, -1, -1, 41, 42, 43, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 76, -1, 55, 56, - -1, 58, 59, 41, 42, 43, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 55, -1, -1, - 58, 59 + -1, 54, -1, -1, -1, -1, -1, 60, 61, -1, + 63, -1, 65, -1, 39, 68, 69, -1, 71, 44, + 45, 46, 47, -1, -1, -1, -1, 3, 4, 54, + -1, 7, 8, -1, -1, 60, 61, -1, 63, -1, + 65, -1, -1, 68, 69, -1, 71, 23, -1, -1, + -1, -1, -1, -1, -1, -1, 32, 33, -1, -1, + -1, 3, 4, 39, -1, 7, 8, -1, 44, 45, + 46, 47, -1, -1, -1, -1, -1, -1, 54, -1, + -1, 23, -1, -1, 60, 61, -1, 63, -1, 65, + 32, 33, 68, 69, -1, 71, -1, 39, -1, -1, + -1, -1, 44, 45, 46, 47, 3, 4, -1, -1, + 7, 8, 54, -1, -1, 12, -1, -1, 60, 61, + -1, 63, -1, 65, -1, -1, 68, 69, -1, 71, + -1, -1, -1, -1, 3, 4, -1, -1, 7, 8, + 9, -1, 39, -1, -1, -1, -1, 44, 45, 46, + 47, -1, -1, -1, -1, -1, 10, 54, -1, -1, + -1, 15, -1, 60, 61, -1, 63, -1, 65, -1, + 39, 68, 69, -1, 71, 44, 45, 46, 47, 3, + 4, -1, -1, 7, 8, 54, -1, 41, 42, 43, + -1, 60, 61, -1, 63, -1, 65, -1, -1, 68, + 69, 55, 71, -1, 58, 59, -1, 3, 4, -1, + -1, 7, 8, -1, -1, 39, 70, -1, -1, -1, + 44, 45, 46, 47, -1, -1, -1, -1, -1, 10, + 54, -1, -1, -1, 15, -1, 60, 61, -1, 63, + -1, 65, -1, -1, 68, 69, -1, 71, 44, 45, + 46, 47, 10, -1, -1, -1, -1, 15, 54, -1, + 41, 42, 43, -1, 60, 61, -1, 63, -1, 65, + -1, 10, 68, 69, 55, 71, 15, 58, 59, -1, + -1, 10, -1, 41, 42, 43, 15, -1, -1, -1, + -1, -1, -1, -1, -1, 76, -1, 55, -1, 57, + 58, 59, 41, 42, 43, -1, -1, -1, -1, -1, + -1, -1, 41, 42, 43, -1, 55, 56, -1, 58, + 59, -1, -1, -1, -1, -1, 55, -1, -1, 58, + 59 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -1392,39 +1395,39 @@ static const yytype_uint8 yystos[] = 0, 78, 0, 1, 3, 4, 7, 8, 18, 19, 36, 37, 38, 39, 44, 45, 46, 47, 48, 53, 54, 60, 61, 63, 65, 68, 69, 71, 79, 83, - 87, 89, 92, 110, 121, 125, 126, 127, 128, 129, - 130, 138, 139, 69, 72, 135, 136, 137, 3, 4, - 46, 47, 71, 85, 86, 131, 139, 139, 139, 69, - 69, 71, 126, 139, 126, 126, 69, 128, 139, 1, - 117, 121, 49, 51, 52, 130, 74, 76, 84, 94, - 110, 141, 145, 84, 90, 53, 10, 15, 41, 42, - 43, 55, 57, 58, 59, 123, 124, 147, 12, 126, + 87, 89, 92, 110, 122, 126, 127, 128, 129, 130, + 131, 139, 140, 69, 72, 136, 137, 138, 3, 4, + 46, 47, 71, 85, 86, 132, 140, 140, 140, 69, + 69, 71, 127, 140, 127, 127, 69, 129, 140, 1, + 117, 122, 49, 51, 52, 131, 74, 76, 84, 94, + 110, 142, 146, 84, 90, 53, 10, 15, 41, 42, + 43, 55, 57, 58, 59, 124, 125, 148, 12, 127, 60, 61, 62, 63, 64, 67, 60, 61, 62, 63, - 64, 67, 13, 14, 44, 45, 54, 122, 1, 9, - 91, 118, 119, 120, 121, 117, 121, 17, 135, 50, - 69, 58, 112, 118, 118, 121, 44, 45, 140, 1, - 70, 143, 147, 143, 1, 6, 80, 1, 6, 81, - 1, 6, 82, 110, 111, 93, 111, 5, 91, 121, - 138, 121, 121, 121, 111, 121, 121, 39, 126, 126, - 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, - 91, 14, 121, 143, 1, 147, 73, 88, 126, 143, - 143, 121, 41, 1, 121, 1, 94, 1, 94, 1, + 64, 67, 13, 14, 44, 45, 54, 123, 1, 9, + 91, 118, 119, 120, 122, 117, 122, 17, 136, 50, + 69, 58, 112, 118, 118, 122, 44, 45, 141, 1, + 70, 144, 148, 144, 1, 6, 80, 1, 6, 81, + 1, 6, 82, 110, 111, 93, 111, 5, 91, 122, + 139, 122, 122, 122, 111, 122, 122, 39, 127, 127, + 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, + 91, 14, 122, 144, 1, 148, 73, 88, 127, 144, + 144, 122, 41, 1, 122, 1, 94, 1, 94, 1, 94, 1, 20, 22, 23, 24, 27, 28, 29, 30, 31, 32, 33, 34, 35, 40, 75, 95, 96, 98, - 105, 109, 121, 141, 142, 145, 56, 131, 120, 1, - 120, 1, 4, 113, 114, 138, 69, 97, 4, 69, - 69, 69, 111, 69, 94, 94, 94, 115, 121, 94, - 111, 94, 99, 93, 144, 145, 111, 121, 143, 1, - 147, 121, 115, 100, 4, 121, 121, 95, 4, 98, - 101, 94, 69, 106, 116, 117, 142, 111, 111, 1, - 4, 143, 94, 132, 133, 134, 135, 70, 143, 143, - 27, 41, 145, 117, 11, 107, 111, 17, 134, 111, - 111, 69, 138, 111, 143, 108, 95, 141, 95, 121, - 143, 121, 145, 125, 21, 102, 143, 111, 145, 111, - 111, 1, 25, 26, 103, 111, 111, 95, 111, 101, - 95, 7, 8, 60, 61, 89, 91, 104, 56, 146, - 142, 101, 143, 7, 7, 146, 111, 143, 111, 111, - 93, 111, 95, 93, 95 + 105, 109, 122, 142, 143, 146, 56, 132, 120, 1, + 120, 1, 4, 113, 114, 139, 69, 97, 4, 69, + 69, 69, 111, 69, 94, 94, 94, 115, 122, 94, + 111, 94, 99, 93, 145, 146, 111, 122, 144, 1, + 148, 122, 120, 121, 100, 4, 122, 122, 95, 4, + 98, 101, 94, 69, 106, 116, 117, 143, 111, 111, + 1, 4, 144, 94, 133, 134, 135, 136, 70, 144, + 144, 27, 41, 146, 117, 11, 107, 111, 17, 135, + 111, 111, 69, 139, 111, 144, 108, 95, 142, 95, + 122, 144, 122, 146, 126, 21, 102, 144, 111, 146, + 111, 111, 1, 25, 26, 103, 111, 111, 95, 111, + 101, 95, 7, 8, 60, 61, 89, 91, 104, 56, + 147, 143, 101, 144, 7, 7, 147, 111, 144, 111, + 111, 93, 111, 95, 93, 95 }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ @@ -1442,15 +1445,15 @@ static const yytype_uint8 yyr1[] = 108, 107, 109, 109, 110, 110, 111, 111, 112, 112, 113, 113, 114, 114, 114, 114, 114, 115, 115, 116, 116, 117, 117, 117, 117, 117, 117, 118, 118, 119, - 119, 119, 119, 119, 119, 120, 120, 121, 121, 121, - 121, 121, 121, 121, 121, 121, 121, 122, 122, 122, - 123, 123, 124, 124, 125, 125, 125, 126, 126, 126, - 126, 126, 126, 126, 126, 126, 126, 126, 127, 127, - 127, 127, 127, 127, 127, 128, 128, 128, 128, 128, - 128, 128, 128, 128, 128, 128, 128, 128, 128, 129, - 129, 130, 131, 131, 132, 132, 133, 133, 134, 135, - 136, 136, 137, 138, 138, 139, 139, 140, 140, 140, - 141, 142, 143, 144, 144, 145, 146, 147 + 119, 119, 119, 119, 119, 120, 120, 121, 121, 122, + 122, 122, 122, 122, 122, 122, 122, 122, 122, 123, + 123, 123, 124, 124, 125, 125, 126, 126, 126, 127, + 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, + 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 130, 130, 131, 132, 132, 133, 133, 134, 134, + 135, 136, 137, 137, 138, 139, 139, 140, 140, 141, + 141, 141, 142, 143, 144, 145, 145, 146, 147, 148 }; /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ @@ -1468,15 +1471,15 @@ static const yytype_int8 yyr2[] = 0, 3, 6, 9, 1, 2, 0, 1, 0, 2, 0, 1, 1, 3, 1, 2, 3, 0, 1, 0, 1, 1, 3, 1, 2, 3, 3, 0, 1, 1, - 3, 1, 2, 3, 3, 1, 1, 3, 3, 3, - 3, 3, 3, 3, 3, 5, 1, 1, 1, 2, - 1, 1, 1, 1, 1, 1, 2, 1, 3, 3, - 3, 3, 3, 3, 3, 2, 2, 5, 4, 3, - 3, 3, 3, 3, 3, 1, 2, 3, 4, 4, - 1, 1, 1, 2, 2, 1, 1, 2, 2, 1, - 2, 4, 0, 1, 0, 2, 1, 2, 1, 3, - 1, 2, 2, 1, 2, 1, 3, 1, 1, 0, - 2, 2, 1, 0, 1, 1, 1, 2 + 3, 1, 2, 3, 3, 1, 1, 0, 1, 3, + 3, 3, 3, 3, 3, 3, 3, 5, 1, 1, + 1, 2, 1, 1, 1, 1, 1, 1, 2, 1, + 3, 3, 3, 3, 3, 3, 3, 2, 2, 5, + 4, 3, 3, 3, 3, 3, 3, 1, 2, 3, + 4, 4, 1, 1, 1, 2, 2, 1, 1, 2, + 2, 1, 2, 4, 0, 1, 0, 2, 1, 2, + 1, 3, 1, 2, 2, 1, 2, 1, 3, 1, + 1, 0, 2, 2, 1, 0, 1, 1, 1, 2 }; @@ -1959,7 +1962,7 @@ yyreduce: case 2: #line 232 "awkgram.y" { yyval = NULL; } -#line 1963 "awkgram.c" +#line 1966 "awkgram.c" break; case 3: @@ -1968,7 +1971,7 @@ yyreduce: rule = 0; yyerrok; } -#line 1972 "awkgram.c" +#line 1975 "awkgram.c" break; case 4: @@ -1982,7 +1985,7 @@ yyreduce: } yyval = yyvsp[-1]; } -#line 1986 "awkgram.c" +#line 1989 "awkgram.c" break; case 5: @@ -1990,7 +1993,7 @@ yyreduce: { next_sourcefile(); } -#line 1994 "awkgram.c" +#line 1997 "awkgram.c" break; case 6: @@ -2003,7 +2006,7 @@ yyreduce: */ /* yyerrok; */ } -#line 2007 "awkgram.c" +#line 2010 "awkgram.c" break; case 7: @@ -2015,7 +2018,7 @@ yyreduce: pending_comment = NULL; } } -#line 2019 "awkgram.c" +#line 2022 "awkgram.c" break; case 8: @@ -2033,7 +2036,7 @@ yyreduce: (void) append_rule(yyvsp[-1], NULL); } } -#line 2037 "awkgram.c" +#line 2040 "awkgram.c" break; case 9: @@ -2048,7 +2051,7 @@ yyreduce: } yyerrok; } -#line 2052 "awkgram.c" +#line 2055 "awkgram.c" break; case 10: @@ -2062,7 +2065,7 @@ yyreduce: } yyerrok; } -#line 2066 "awkgram.c" +#line 2069 "awkgram.c" break; case 11: @@ -2076,7 +2079,7 @@ yyreduce: } yyerrok; } -#line 2080 "awkgram.c" +#line 2083 "awkgram.c" break; case 12: @@ -2090,7 +2093,7 @@ yyreduce: yyerrok; } -#line 2094 "awkgram.c" +#line 2097 "awkgram.c" break; case 13: @@ -2104,19 +2107,19 @@ yyreduce: bcfree(yyvsp[0]); yyval = (INSTRUCTION *) srcfile; } -#line 2108 "awkgram.c" +#line 2111 "awkgram.c" break; case 14: #line 341 "awkgram.y" { yyval = NULL; } -#line 2114 "awkgram.c" +#line 2117 "awkgram.c" break; case 15: #line 343 "awkgram.y" { yyval = NULL; } -#line 2120 "awkgram.c" +#line 2123 "awkgram.c" break; case 16: @@ -2130,37 +2133,37 @@ yyreduce: bcfree(yyvsp[0]); yyval = (INSTRUCTION *) srcfile; } -#line 2134 "awkgram.c" +#line 2137 "awkgram.c" break; case 17: #line 358 "awkgram.y" { yyval = NULL; } -#line 2140 "awkgram.c" +#line 2143 "awkgram.c" break; case 18: #line 360 "awkgram.y" { yyval = NULL; } -#line 2146 "awkgram.c" +#line 2149 "awkgram.c" break; case 19: #line 365 "awkgram.y" { yyval = yyvsp[0]; } -#line 2152 "awkgram.c" +#line 2155 "awkgram.c" break; case 20: #line 367 "awkgram.y" { yyval = NULL; } -#line 2158 "awkgram.c" +#line 2161 "awkgram.c" break; case 21: #line 369 "awkgram.y" { yyval = NULL; } -#line 2164 "awkgram.c" +#line 2167 "awkgram.c" break; case 22: @@ -2169,7 +2172,7 @@ yyreduce: rule = Rule; yyval = NULL; } -#line 2173 "awkgram.c" +#line 2176 "awkgram.c" break; case 23: @@ -2177,7 +2180,7 @@ yyreduce: { rule = Rule; } -#line 2181 "awkgram.c" +#line 2184 "awkgram.c" break; case 24: @@ -2211,7 +2214,7 @@ yyreduce: yyval = list_append(list_merge(yyvsp[-2], yyvsp[0]), tp); rule = Rule; } -#line 2215 "awkgram.c" +#line 2218 "awkgram.c" break; case 25: @@ -2227,7 +2230,7 @@ yyreduce: yyvsp[0]->source_file = source; yyval = yyvsp[0]; } -#line 2231 "awkgram.c" +#line 2234 "awkgram.c" break; case 26: @@ -2243,7 +2246,7 @@ yyreduce: yyvsp[0]->source_file = source; yyval = yyvsp[0]; } -#line 2247 "awkgram.c" +#line 2250 "awkgram.c" break; case 27: @@ -2253,7 +2256,7 @@ yyreduce: yyvsp[0]->source_file = source; yyval = yyvsp[0]; } -#line 2257 "awkgram.c" +#line 2260 "awkgram.c" break; case 28: @@ -2263,7 +2266,7 @@ yyreduce: yyvsp[0]->source_file = source; yyval = yyvsp[0]; } -#line 2267 "awkgram.c" +#line 2270 "awkgram.c" break; case 29: @@ -2282,7 +2285,7 @@ yyreduce: yyval = ip; } -#line 2286 "awkgram.c" +#line 2289 "awkgram.c" break; case 31: @@ -2297,7 +2300,7 @@ yyreduce: } yyval = yyvsp[0]; } -#line 2301 "awkgram.c" +#line 2304 "awkgram.c" break; case 32: @@ -2307,7 +2310,7 @@ yyreduce: tokstart); YYABORT; } -#line 2311 "awkgram.c" +#line 2314 "awkgram.c" break; case 33: @@ -2316,13 +2319,13 @@ yyreduce: yyval = yyvsp[0]; at_seen = false; } -#line 2320 "awkgram.c" +#line 2323 "awkgram.c" break; case 36: #line 501 "awkgram.y" { want_param_names = FUNC_HEADER; } -#line 2326 "awkgram.c" +#line 2329 "awkgram.c" break; case 37: @@ -2352,13 +2355,13 @@ yyreduce: yyval = yyvsp[-6]; want_param_names = FUNC_BODY; } -#line 2356 "awkgram.c" +#line 2359 "awkgram.c" break; case 38: #line 535 "awkgram.y" { want_regexp = true; } -#line 2362 "awkgram.c" +#line 2365 "awkgram.c" break; case 39: @@ -2391,7 +2394,7 @@ yyreduce: yyval->opcode = Op_match_rec; yyval->memory = n; } -#line 2395 "awkgram.c" +#line 2398 "awkgram.c" break; case 40: @@ -2408,19 +2411,19 @@ yyreduce: yyval->opcode = Op_push_re; yyval->memory = make_typed_regex(re, len); } -#line 2412 "awkgram.c" +#line 2415 "awkgram.c" break; case 41: #line 584 "awkgram.y" { bcfree(yyvsp[0]); } -#line 2418 "awkgram.c" +#line 2421 "awkgram.c" break; case 43: #line 590 "awkgram.y" { yyval = NULL; } -#line 2424 "awkgram.c" +#line 2427 "awkgram.c" break; case 44: @@ -2444,25 +2447,25 @@ yyreduce: yyerrok; } -#line 2448 "awkgram.c" +#line 2451 "awkgram.c" break; case 45: #line 612 "awkgram.y" { yyval = NULL; } -#line 2454 "awkgram.c" +#line 2457 "awkgram.c" break; case 46: #line 616 "awkgram.y" { yyval = yyvsp[0]; } -#line 2460 "awkgram.c" +#line 2463 "awkgram.c" break; case 47: #line 617 "awkgram.y" { yyval = yyvsp[0]; } -#line 2466 "awkgram.c" +#line 2469 "awkgram.c" break; case 48: @@ -2477,7 +2480,7 @@ yyreduce: } else yyval = NULL; } -#line 2481 "awkgram.c" +#line 2484 "awkgram.c" break; case 49: @@ -2486,7 +2489,7 @@ yyreduce: trailing_comment = yyvsp[0]; // NULL or comment yyval = make_braced_statements(yyvsp[-2], yyvsp[-1], yyvsp[0]); } -#line 2490 "awkgram.c" +#line 2493 "awkgram.c" break; case 50: @@ -2497,7 +2500,7 @@ yyreduce: else yyval = yyvsp[0]; } -#line 2501 "awkgram.c" +#line 2504 "awkgram.c" break; case 51: @@ -2609,7 +2612,7 @@ yyreduce: break_allowed--; fix_break_continue(ip, tbreak, NULL); } -#line 2613 "awkgram.c" +#line 2616 "awkgram.c" break; case 52: @@ -2664,7 +2667,7 @@ yyreduce: continue_allowed--; fix_break_continue(ip, tbreak, tcont); } -#line 2668 "awkgram.c" +#line 2671 "awkgram.c" break; case 53: @@ -2718,7 +2721,7 @@ yyreduce: /* else $1 and $4 are NULLs */ } -#line 2722 "awkgram.c" +#line 2725 "awkgram.c" break; case 54: @@ -2848,7 +2851,7 @@ regular_loop: break_allowed--; continue_allowed--; } -#line 2852 "awkgram.c" +#line 2855 "awkgram.c" break; case 55: @@ -2874,7 +2877,7 @@ regular_loop: break_allowed--; continue_allowed--; } -#line 2878 "awkgram.c" +#line 2881 "awkgram.c" break; case 56: @@ -2899,7 +2902,7 @@ regular_loop: break_allowed--; continue_allowed--; } -#line 2903 "awkgram.c" +#line 2906 "awkgram.c" break; case 57: @@ -2910,7 +2913,7 @@ regular_loop: else yyval = yyvsp[0]; } -#line 2914 "awkgram.c" +#line 2917 "awkgram.c" break; case 58: @@ -2924,7 +2927,7 @@ regular_loop: if (yyvsp[0] != NULL) yyval = list_append(yyval, yyvsp[0]); } -#line 2928 "awkgram.c" +#line 2931 "awkgram.c" break; case 59: @@ -2938,7 +2941,7 @@ regular_loop: if (yyvsp[0] != NULL) yyval = list_append(yyval, yyvsp[0]); } -#line 2942 "awkgram.c" +#line 2945 "awkgram.c" break; case 60: @@ -2953,7 +2956,7 @@ regular_loop: if (yyvsp[0] != NULL) yyval = list_append(yyval, yyvsp[0]); } -#line 2957 "awkgram.c" +#line 2960 "awkgram.c" break; case 61: @@ -2970,7 +2973,7 @@ regular_loop: if (yyvsp[0] != NULL) yyval = list_append(yyval, yyvsp[0]); } -#line 2974 "awkgram.c" +#line 2977 "awkgram.c" break; case 62: @@ -2991,7 +2994,7 @@ regular_loop: if (yyvsp[0] != NULL) yyval = list_append(yyval, yyvsp[0]); } -#line 2995 "awkgram.c" +#line 2998 "awkgram.c" break; case 63: @@ -3000,12 +3003,12 @@ regular_loop: if (! in_function) yyerror(_("`return' used outside function context")); } -#line 3004 "awkgram.c" +#line 3007 "awkgram.c" break; case 64: #line 1097 "awkgram.y" - { + { if (called_from_eval) yyvsp[-3]->opcode = Op_K_return_from_eval; @@ -3018,7 +3021,7 @@ regular_loop: if (yyvsp[0] != NULL) yyval = list_append(yyval, yyvsp[0]); } -#line 3022 "awkgram.c" +#line 3025 "awkgram.c" break; case 65: @@ -3029,13 +3032,13 @@ regular_loop: else yyval = yyvsp[-1]; } -#line 3033 "awkgram.c" +#line 3036 "awkgram.c" break; case 66: #line 1128 "awkgram.y" { in_print = true; in_parens = 0; } -#line 3039 "awkgram.c" +#line 3042 "awkgram.c" break; case 67: @@ -3140,13 +3143,13 @@ regular_print: } } } -#line 3144 "awkgram.c" +#line 3147 "awkgram.c" break; case 68: #line 1230 "awkgram.y" { sub_counter = 0; } -#line 3150 "awkgram.c" +#line 3153 "awkgram.c" break; case 69: @@ -3183,7 +3186,7 @@ regular_print: yyval = list_append(list_append(yyvsp[0], yyvsp[-2]), yyvsp[-3]); } } -#line 3187 "awkgram.c" +#line 3190 "awkgram.c" break; case 70: @@ -3213,7 +3216,7 @@ regular_print: fatal(_("`delete' is not allowed with FUNCTAB")); } } -#line 3217 "awkgram.c" +#line 3220 "awkgram.c" break; case 71: @@ -3221,25 +3224,25 @@ regular_print: { yyval = optimize_assignment(yyvsp[0]); } -#line 3225 "awkgram.c" +#line 3228 "awkgram.c" break; case 72: #line 1301 "awkgram.y" { yyval = NULL; } -#line 3231 "awkgram.c" +#line 3234 "awkgram.c" break; case 73: #line 1303 "awkgram.y" { yyval = yyvsp[0]; } -#line 3237 "awkgram.c" +#line 3240 "awkgram.c" break; case 74: #line 1308 "awkgram.y" { yyval = NULL; } -#line 3243 "awkgram.c" +#line 3246 "awkgram.c" break; case 75: @@ -3250,13 +3253,13 @@ regular_print: else yyval = list_prepend(yyvsp[-1], yyvsp[0]); } -#line 3254 "awkgram.c" +#line 3257 "awkgram.c" break; case 76: #line 1317 "awkgram.y" { yyval = NULL; } -#line 3260 "awkgram.c" +#line 3263 "awkgram.c" break; case 77: @@ -3273,7 +3276,7 @@ regular_print: bcfree(yyvsp[-2]); yyval = yyvsp[-4]; } -#line 3277 "awkgram.c" +#line 3280 "awkgram.c" break; case 78: @@ -3289,13 +3292,13 @@ regular_print: yyvsp[-3]->comment = yyvsp[-1]; yyval = yyvsp[-3]; } -#line 3293 "awkgram.c" +#line 3296 "awkgram.c" break; case 79: #line 1350 "awkgram.y" { yyval = yyvsp[0]; } -#line 3299 "awkgram.c" +#line 3302 "awkgram.c" break; case 80: @@ -3307,7 +3310,7 @@ regular_print: bcfree(yyvsp[-1]); yyval = yyvsp[0]; } -#line 3311 "awkgram.c" +#line 3314 "awkgram.c" break; case 81: @@ -3318,13 +3321,13 @@ regular_print: add_sign_to_num(n, '+'); yyval = yyvsp[0]; } -#line 3322 "awkgram.c" +#line 3325 "awkgram.c" break; case 82: #line 1367 "awkgram.y" { yyval = yyvsp[0]; } -#line 3328 "awkgram.c" +#line 3331 "awkgram.c" break; case 83: @@ -3336,7 +3339,7 @@ regular_print: yyvsp[0]->opcode = Op_push; yyval = yyvsp[0]; } -#line 3340 "awkgram.c" +#line 3343 "awkgram.c" break; case 84: @@ -3346,19 +3349,19 @@ regular_print: yyvsp[0]->opcode = Op_push_re; yyval = yyvsp[0]; } -#line 3350 "awkgram.c" +#line 3353 "awkgram.c" break; case 85: #line 1386 "awkgram.y" { yyval = yyvsp[0]; } -#line 3356 "awkgram.c" +#line 3359 "awkgram.c" break; case 86: #line 1388 "awkgram.y" { yyval = yyvsp[0]; } -#line 3362 "awkgram.c" +#line 3365 "awkgram.c" break; case 88: @@ -3366,7 +3369,7 @@ regular_print: { yyval = yyvsp[-1]; } -#line 3370 "awkgram.c" +#line 3373 "awkgram.c" break; case 89: @@ -3376,13 +3379,13 @@ regular_print: in_parens = 0; yyval = NULL; } -#line 3380 "awkgram.c" +#line 3383 "awkgram.c" break; case 90: #line 1410 "awkgram.y" { in_print = false; in_parens = 0; } -#line 3386 "awkgram.c" +#line 3389 "awkgram.c" break; case 91: @@ -3396,7 +3399,7 @@ regular_print: lintwarn(_("concatenation as I/O `>' redirection target is ambiguous")); yyval = list_prepend(yyvsp[0], yyvsp[-2]); } -#line 3400 "awkgram.c" +#line 3403 "awkgram.c" break; case 92: @@ -3407,7 +3410,7 @@ regular_print: add_lint(yyvsp[-3], LINT_assign_in_cond); yyval = mk_condition(yyvsp[-3], yyvsp[-5], yyvsp[0], NULL, NULL); } -#line 3411 "awkgram.c" +#line 3414 "awkgram.c" break; case 93: @@ -3420,7 +3423,7 @@ regular_print: add_lint(yyvsp[-6], LINT_assign_in_cond); yyval = mk_condition(yyvsp[-6], yyvsp[-8], yyvsp[-3], yyvsp[-2], yyvsp[0]); } -#line 3424 "awkgram.c" +#line 3427 "awkgram.c" break; case 94: @@ -3428,7 +3431,7 @@ regular_print: { yyval = yyvsp[0]; } -#line 3432 "awkgram.c" +#line 3435 "awkgram.c" break; case 95: @@ -3450,25 +3453,25 @@ regular_print: } else yyval = NULL; } -#line 3454 "awkgram.c" +#line 3457 "awkgram.c" break; case 96: #line 1469 "awkgram.y" { yyval = NULL; } -#line 3460 "awkgram.c" +#line 3463 "awkgram.c" break; case 97: #line 1471 "awkgram.y" { yyval = yyvsp[0]; } -#line 3466 "awkgram.c" +#line 3469 "awkgram.c" break; case 98: #line 1476 "awkgram.y" { yyval = NULL; } -#line 3472 "awkgram.c" +#line 3475 "awkgram.c" break; case 99: @@ -3477,19 +3480,19 @@ regular_print: bcfree(yyvsp[-1]); yyval = yyvsp[0]; } -#line 3481 "awkgram.c" +#line 3484 "awkgram.c" break; case 100: #line 1486 "awkgram.y" { yyval = NULL; } -#line 3487 "awkgram.c" +#line 3490 "awkgram.c" break; case 101: #line 1488 "awkgram.y" { yyval = yyvsp[0]; } -#line 3493 "awkgram.c" +#line 3496 "awkgram.c" break; case 102: @@ -3498,7 +3501,7 @@ regular_print: yyvsp[0]->param_count = 0; yyval = list_create(yyvsp[0]); } -#line 3502 "awkgram.c" +#line 3505 "awkgram.c" break; case 103: @@ -3519,55 +3522,55 @@ regular_print: } else yyval = NULL; } -#line 3523 "awkgram.c" +#line 3526 "awkgram.c" break; case 104: #line 1515 "awkgram.y" { yyval = NULL; } -#line 3529 "awkgram.c" +#line 3532 "awkgram.c" break; case 105: #line 1517 "awkgram.y" { yyval = yyvsp[-1]; } -#line 3535 "awkgram.c" +#line 3538 "awkgram.c" break; case 106: #line 1519 "awkgram.y" { yyval = yyvsp[-2]; } -#line 3541 "awkgram.c" +#line 3544 "awkgram.c" break; case 107: #line 1525 "awkgram.y" { yyval = NULL; } -#line 3547 "awkgram.c" +#line 3550 "awkgram.c" break; case 108: #line 1527 "awkgram.y" { yyval = yyvsp[0]; } -#line 3553 "awkgram.c" +#line 3556 "awkgram.c" break; case 109: #line 1532 "awkgram.y" { yyval = NULL; } -#line 3559 "awkgram.c" +#line 3562 "awkgram.c" break; case 110: #line 1534 "awkgram.y" { yyval = yyvsp[0]; } -#line 3565 "awkgram.c" +#line 3568 "awkgram.c" break; case 111: #line 1539 "awkgram.y" { yyval = mk_expression_list(NULL, yyvsp[0]); } -#line 3571 "awkgram.c" +#line 3574 "awkgram.c" break; case 112: @@ -3578,13 +3581,13 @@ regular_print: yyval = mk_expression_list(yyvsp[-2], yyvsp[0]); yyerrok; } -#line 3582 "awkgram.c" +#line 3585 "awkgram.c" break; case 113: #line 1548 "awkgram.y" { yyval = NULL; } -#line 3588 "awkgram.c" +#line 3591 "awkgram.c" break; case 114: @@ -3596,7 +3599,7 @@ regular_print: */ yyval = yyvsp[-1]; } -#line 3600 "awkgram.c" +#line 3603 "awkgram.c" break; case 115: @@ -3605,7 +3608,7 @@ regular_print: /* Ditto */ yyval = mk_expression_list(yyvsp[-2], yyvsp[0]); } -#line 3609 "awkgram.c" +#line 3612 "awkgram.c" break; case 116: @@ -3616,25 +3619,25 @@ regular_print: yyvsp[-2]->lasti->comment = yyvsp[-1]; yyval = yyvsp[-2]; } -#line 3620 "awkgram.c" +#line 3623 "awkgram.c" break; case 117: #line 1573 "awkgram.y" { yyval = NULL; } -#line 3626 "awkgram.c" +#line 3629 "awkgram.c" break; case 118: #line 1575 "awkgram.y" { yyval = yyvsp[0]; } -#line 3632 "awkgram.c" +#line 3635 "awkgram.c" break; case 119: #line 1580 "awkgram.y" { yyval = mk_expression_list(NULL, yyvsp[0]); } -#line 3638 "awkgram.c" +#line 3641 "awkgram.c" break; case 120: @@ -3645,13 +3648,13 @@ regular_print: yyval = mk_expression_list(yyvsp[-2], yyvsp[0]); yyerrok; } -#line 3649 "awkgram.c" +#line 3652 "awkgram.c" break; case 121: #line 1589 "awkgram.y" { yyval = NULL; } -#line 3655 "awkgram.c" +#line 3658 "awkgram.c" break; case 122: @@ -3663,7 +3666,7 @@ regular_print: */ yyval = yyvsp[-1]; } -#line 3667 "awkgram.c" +#line 3670 "awkgram.c" break; case 123: @@ -3672,7 +3675,7 @@ regular_print: /* Ditto */ yyval = mk_expression_list(yyvsp[-2], yyvsp[0]); } -#line 3676 "awkgram.c" +#line 3679 "awkgram.c" break; case 124: @@ -3683,54 +3686,66 @@ regular_print: yyvsp[-2]->comment = yyvsp[-1]; yyval = yyvsp[-2]; } -#line 3687 "awkgram.c" +#line 3690 "awkgram.c" break; case 125: #line 1613 "awkgram.y" { yyval = yyvsp[0]; } -#line 3693 "awkgram.c" +#line 3696 "awkgram.c" break; case 126: #line 1614 "awkgram.y" { yyval = list_create(yyvsp[0]); } -#line 3699 "awkgram.c" +#line 3702 "awkgram.c" break; case 127: +#line 1619 "awkgram.y" + { yyval = NULL; } +#line 3708 "awkgram.c" + break; + + case 128: #line 1620 "awkgram.y" + { yyval = yyvsp[0]; } +#line 3714 "awkgram.c" + break; + + case 129: +#line 1626 "awkgram.y" { if (do_lint && yyvsp[0]->lasti->opcode == Op_match_rec) lintwarn_ln(yyvsp[-1]->source_line, _("regular expression on right of assignment")); yyval = mk_assignment(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 3710 "awkgram.c" +#line 3725 "awkgram.c" break; - case 128: -#line 1627 "awkgram.y" + case 130: +#line 1633 "awkgram.y" { yyval = mk_assignment(yyvsp[-2], list_create(yyvsp[0]), yyvsp[-1]); } -#line 3718 "awkgram.c" +#line 3733 "awkgram.c" break; - case 129: -#line 1631 "awkgram.y" + case 131: +#line 1637 "awkgram.y" { yyval = mk_boolean(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 3724 "awkgram.c" +#line 3739 "awkgram.c" break; - case 130: -#line 1633 "awkgram.y" + case 132: +#line 1639 "awkgram.y" { yyval = mk_boolean(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 3730 "awkgram.c" +#line 3745 "awkgram.c" break; - case 131: -#line 1635 "awkgram.y" + case 133: +#line 1641 "awkgram.y" { if (yyvsp[-2]->lasti->opcode == Op_match_rec) warning_ln(yyvsp[-1]->source_line, @@ -3743,11 +3758,11 @@ regular_print: bcfree(yyvsp[0]); yyval = list_append(yyvsp[-2], yyvsp[-1]); } -#line 3747 "awkgram.c" +#line 3762 "awkgram.c" break; - case 132: -#line 1648 "awkgram.y" + case 134: +#line 1654 "awkgram.y" { if (yyvsp[-2]->lasti->opcode == Op_match_rec) warning_ln(yyvsp[-1]->source_line, @@ -3764,11 +3779,11 @@ regular_print: yyval = list_append(list_merge(yyvsp[-2], yyvsp[0]), yyvsp[-1]); } } -#line 3768 "awkgram.c" +#line 3783 "awkgram.c" break; - case 133: -#line 1665 "awkgram.y" + case 135: +#line 1671 "awkgram.y" { if (do_lint_old) lintwarn_ln(yyvsp[-1]->source_line, @@ -3778,91 +3793,91 @@ regular_print: yyvsp[-1]->expr_count = 1; yyval = list_append(list_merge(yyvsp[-2], yyvsp[0]), yyvsp[-1]); } -#line 3782 "awkgram.c" +#line 3797 "awkgram.c" break; - case 134: -#line 1675 "awkgram.y" + case 136: +#line 1681 "awkgram.y" { if (do_lint && yyvsp[0]->lasti->opcode == Op_match_rec) lintwarn_ln(yyvsp[-1]->source_line, _("regular expression on right of comparison")); yyval = list_append(list_merge(yyvsp[-2], yyvsp[0]), yyvsp[-1]); } -#line 3793 "awkgram.c" - break; - - case 135: -#line 1682 "awkgram.y" - { yyval = mk_condition(yyvsp[-4], yyvsp[-3], yyvsp[-2], yyvsp[-1], yyvsp[0]); } -#line 3799 "awkgram.c" - break; - - case 136: -#line 1684 "awkgram.y" - { yyval = yyvsp[0]; } -#line 3805 "awkgram.c" +#line 3808 "awkgram.c" break; case 137: -#line 1689 "awkgram.y" - { yyval = yyvsp[0]; } -#line 3811 "awkgram.c" +#line 1688 "awkgram.y" + { yyval = mk_condition(yyvsp[-4], yyvsp[-3], yyvsp[-2], yyvsp[-1], yyvsp[0]); } +#line 3814 "awkgram.c" break; case 138: -#line 1691 "awkgram.y" +#line 1690 "awkgram.y" { yyval = yyvsp[0]; } -#line 3817 "awkgram.c" +#line 3820 "awkgram.c" break; case 139: -#line 1693 "awkgram.y" - { - yyvsp[0]->opcode = Op_assign_quotient; - yyval = yyvsp[0]; - } +#line 1695 "awkgram.y" + { yyval = yyvsp[0]; } #line 3826 "awkgram.c" break; case 140: -#line 1701 "awkgram.y" +#line 1697 "awkgram.y" { yyval = yyvsp[0]; } #line 3832 "awkgram.c" break; case 141: -#line 1703 "awkgram.y" - { yyval = yyvsp[0]; } -#line 3838 "awkgram.c" +#line 1699 "awkgram.y" + { + yyvsp[0]->opcode = Op_assign_quotient; + yyval = yyvsp[0]; + } +#line 3841 "awkgram.c" break; case 142: -#line 1708 "awkgram.y" +#line 1707 "awkgram.y" { yyval = yyvsp[0]; } -#line 3844 "awkgram.c" +#line 3847 "awkgram.c" break; case 143: -#line 1710 "awkgram.y" +#line 1709 "awkgram.y" { yyval = yyvsp[0]; } -#line 3850 "awkgram.c" +#line 3853 "awkgram.c" break; case 144: -#line 1715 "awkgram.y" +#line 1714 "awkgram.y" { yyval = yyvsp[0]; } -#line 3856 "awkgram.c" +#line 3859 "awkgram.c" break; case 145: -#line 1717 "awkgram.y" +#line 1716 "awkgram.y" { yyval = yyvsp[0]; } -#line 3862 "awkgram.c" +#line 3865 "awkgram.c" break; case 146: -#line 1719 "awkgram.y" +#line 1721 "awkgram.y" + { yyval = yyvsp[0]; } +#line 3871 "awkgram.c" + break; + + case 147: +#line 1723 "awkgram.y" + { yyval = yyvsp[0]; } +#line 3877 "awkgram.c" + break; + + case 148: +#line 1725 "awkgram.y" { int count = 2; bool is_simple_var = false; @@ -3916,47 +3931,47 @@ regular_print: max_args = count; } } -#line 3920 "awkgram.c" +#line 3935 "awkgram.c" break; - case 148: -#line 1778 "awkgram.y" + case 150: +#line 1784 "awkgram.y" { yyval = mk_binary(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 3926 "awkgram.c" +#line 3941 "awkgram.c" break; - case 149: -#line 1780 "awkgram.y" + case 151: +#line 1786 "awkgram.y" { yyval = mk_binary(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 3932 "awkgram.c" +#line 3947 "awkgram.c" break; - case 150: -#line 1782 "awkgram.y" + case 152: +#line 1788 "awkgram.y" { yyval = mk_binary(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 3938 "awkgram.c" +#line 3953 "awkgram.c" break; - case 151: -#line 1784 "awkgram.y" + case 153: +#line 1790 "awkgram.y" { yyval = mk_binary(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 3944 "awkgram.c" +#line 3959 "awkgram.c" break; - case 152: -#line 1786 "awkgram.y" + case 154: +#line 1792 "awkgram.y" { yyval = mk_binary(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 3950 "awkgram.c" +#line 3965 "awkgram.c" break; - case 153: -#line 1788 "awkgram.y" + case 155: +#line 1794 "awkgram.y" { yyval = mk_binary(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 3956 "awkgram.c" +#line 3971 "awkgram.c" break; - case 154: -#line 1790 "awkgram.y" + case 156: +#line 1796 "awkgram.y" { /* * In BEGINFILE/ENDFILE, allow `getline [var] < file' @@ -3970,29 +3985,29 @@ regular_print: _("non-redirected `getline' undefined inside END action")); yyval = mk_getline(yyvsp[-2], yyvsp[-1], yyvsp[0], redirect_input); } -#line 3974 "awkgram.c" +#line 3989 "awkgram.c" break; - case 155: -#line 1804 "awkgram.y" + case 157: +#line 1810 "awkgram.y" { yyvsp[0]->opcode = Op_postincrement; yyval = mk_assignment(yyvsp[-1], NULL, yyvsp[0]); } -#line 3983 "awkgram.c" +#line 3998 "awkgram.c" break; - case 156: -#line 1809 "awkgram.y" + case 158: +#line 1815 "awkgram.y" { yyvsp[0]->opcode = Op_postdecrement; yyval = mk_assignment(yyvsp[-1], NULL, yyvsp[0]); } -#line 3992 "awkgram.c" +#line 4007 "awkgram.c" break; - case 157: -#line 1814 "awkgram.y" + case 159: +#line 1820 "awkgram.y" { if (do_lint_old) { /* first one is warning so that second one comes out if warnings are fatal */ @@ -4013,64 +4028,64 @@ regular_print: yyval = list_append(list_merge(t, yyvsp[0]), yyvsp[-1]); } } -#line 4017 "awkgram.c" +#line 4032 "awkgram.c" break; - case 158: -#line 1840 "awkgram.y" + case 160: +#line 1846 "awkgram.y" { yyval = mk_getline(yyvsp[-1], yyvsp[0], yyvsp[-3], yyvsp[-2]->redir_type); bcfree(yyvsp[-2]); } -#line 4026 "awkgram.c" +#line 4041 "awkgram.c" break; - case 159: -#line 1846 "awkgram.y" + case 161: +#line 1852 "awkgram.y" { yyval = mk_binary(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 4032 "awkgram.c" +#line 4047 "awkgram.c" break; - case 160: -#line 1848 "awkgram.y" + case 162: +#line 1854 "awkgram.y" { yyval = mk_binary(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 4038 "awkgram.c" +#line 4053 "awkgram.c" break; - case 161: -#line 1850 "awkgram.y" + case 163: +#line 1856 "awkgram.y" { yyval = mk_binary(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 4044 "awkgram.c" +#line 4059 "awkgram.c" break; - case 162: -#line 1852 "awkgram.y" + case 164: +#line 1858 "awkgram.y" { yyval = mk_binary(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 4050 "awkgram.c" +#line 4065 "awkgram.c" break; - case 163: -#line 1854 "awkgram.y" + case 165: +#line 1860 "awkgram.y" { yyval = mk_binary(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 4056 "awkgram.c" +#line 4071 "awkgram.c" break; - case 164: -#line 1856 "awkgram.y" + case 166: +#line 1862 "awkgram.y" { yyval = mk_binary(yyvsp[-2], yyvsp[0], yyvsp[-1]); } -#line 4062 "awkgram.c" +#line 4077 "awkgram.c" break; - case 165: -#line 1861 "awkgram.y" + case 167: +#line 1867 "awkgram.y" { yyval = list_create(yyvsp[0]); } -#line 4070 "awkgram.c" +#line 4085 "awkgram.c" break; - case 166: -#line 1865 "awkgram.y" + case 168: +#line 1871 "awkgram.y" { if (yyvsp[0]->opcode == Op_match_rec) { yyvsp[0]->opcode = Op_nomatch; @@ -4102,11 +4117,11 @@ regular_print: } } } -#line 4106 "awkgram.c" +#line 4121 "awkgram.c" break; - case 167: -#line 1897 "awkgram.y" + case 169: +#line 1903 "awkgram.y" { // Always include. Allows us to lint warn on // print "foo" > "bar" 1 @@ -4114,31 +4129,31 @@ regular_print: // print "foo" > ("bar" 1) yyval = list_append(yyvsp[-1], bcalloc(Op_parens, 1, sourceline)); } -#line 4118 "awkgram.c" +#line 4133 "awkgram.c" break; - case 168: -#line 1905 "awkgram.y" + case 170: +#line 1911 "awkgram.y" { yyval = snode(yyvsp[-1], yyvsp[-3]); if (yyval == NULL) YYABORT; } -#line 4128 "awkgram.c" +#line 4143 "awkgram.c" break; - case 169: -#line 1911 "awkgram.y" + case 171: +#line 1917 "awkgram.y" { yyval = snode(yyvsp[-1], yyvsp[-3]); if (yyval == NULL) YYABORT; } -#line 4138 "awkgram.c" +#line 4153 "awkgram.c" break; - case 170: -#line 1917 "awkgram.y" + case 172: +#line 1923 "awkgram.y" { static bool warned = false; @@ -4151,45 +4166,45 @@ regular_print: if (yyval == NULL) YYABORT; } -#line 4155 "awkgram.c" +#line 4170 "awkgram.c" break; - case 173: -#line 1932 "awkgram.y" + case 175: +#line 1938 "awkgram.y" { yyvsp[-1]->opcode = Op_preincrement; yyval = mk_assignment(yyvsp[0], NULL, yyvsp[-1]); } -#line 4164 "awkgram.c" +#line 4179 "awkgram.c" break; - case 174: -#line 1937 "awkgram.y" + case 176: +#line 1943 "awkgram.y" { yyvsp[-1]->opcode = Op_predecrement; yyval = mk_assignment(yyvsp[0], NULL, yyvsp[-1]); } -#line 4173 "awkgram.c" +#line 4188 "awkgram.c" break; - case 175: -#line 1942 "awkgram.y" + case 177: +#line 1948 "awkgram.y" { yyval = list_create(yyvsp[0]); } -#line 4181 "awkgram.c" +#line 4196 "awkgram.c" break; - case 176: -#line 1946 "awkgram.y" + case 178: +#line 1952 "awkgram.y" { yyval = list_create(yyvsp[0]); } -#line 4189 "awkgram.c" +#line 4204 "awkgram.c" break; - case 177: -#line 1950 "awkgram.y" + case 179: +#line 1956 "awkgram.y" { if (yyvsp[0]->lasti->opcode == Op_push_i && (yyvsp[0]->lasti->memory->flags & STRING) == 0 @@ -4204,11 +4219,11 @@ regular_print: yyval = list_append(yyvsp[0], yyvsp[-1]); } } -#line 4208 "awkgram.c" +#line 4223 "awkgram.c" break; - case 178: -#line 1965 "awkgram.y" + case 180: +#line 1971 "awkgram.y" { if (yyvsp[0]->lasti->opcode == Op_push_i && (yyvsp[0]->lasti->memory->flags & STRING) == 0 @@ -4226,20 +4241,20 @@ regular_print: yyval = list_append(yyvsp[0], yyvsp[-1]); } } -#line 4230 "awkgram.c" +#line 4245 "awkgram.c" break; - case 179: -#line 1986 "awkgram.y" + case 181: +#line 1992 "awkgram.y" { func_use(yyvsp[0]->lasti->func_name, FUNC_USE); yyval = yyvsp[0]; } -#line 4239 "awkgram.c" +#line 4254 "awkgram.c" break; - case 180: -#line 1991 "awkgram.y" + case 182: +#line 1997 "awkgram.y" { /* indirect function call */ INSTRUCTION *f, *t; @@ -4273,11 +4288,11 @@ regular_print: yyval = list_prepend(yyvsp[0], t); at_seen = false; } -#line 4277 "awkgram.c" +#line 4292 "awkgram.c" break; - case 181: -#line 2028 "awkgram.y" + case 183: +#line 2034 "awkgram.y" { NODE *n; char *name = yyvsp[-3]->func_name; @@ -4310,49 +4325,49 @@ regular_print: yyval = list_append(t, yyvsp[-3]); } } -#line 4314 "awkgram.c" +#line 4329 "awkgram.c" break; - case 182: -#line 2064 "awkgram.y" + case 184: +#line 2070 "awkgram.y" { yyval = NULL; } -#line 4320 "awkgram.c" +#line 4335 "awkgram.c" break; - case 183: -#line 2066 "awkgram.y" + case 185: +#line 2072 "awkgram.y" { yyval = yyvsp[0]; } -#line 4326 "awkgram.c" +#line 4341 "awkgram.c" break; - case 184: -#line 2071 "awkgram.y" + case 186: +#line 2077 "awkgram.y" { yyval = NULL; } -#line 4332 "awkgram.c" +#line 4347 "awkgram.c" break; - case 185: -#line 2073 "awkgram.y" + case 187: +#line 2079 "awkgram.y" { yyval = yyvsp[-1]; } -#line 4338 "awkgram.c" +#line 4353 "awkgram.c" break; - case 186: -#line 2078 "awkgram.y" + case 188: +#line 2084 "awkgram.y" { yyval = yyvsp[0]; } -#line 4344 "awkgram.c" +#line 4359 "awkgram.c" break; - case 187: -#line 2080 "awkgram.y" + case 189: +#line 2086 "awkgram.y" { yyval = list_merge(yyvsp[-1], yyvsp[0]); } -#line 4352 "awkgram.c" +#line 4367 "awkgram.c" break; - case 188: -#line 2087 "awkgram.y" + case 190: +#line 2093 "awkgram.y" { INSTRUCTION *ip = yyvsp[0]->lasti; int count = ip->sub_count; /* # of SUBSEP-seperated expressions */ @@ -4366,11 +4381,11 @@ regular_print: sub_counter++; /* count # of dimensions */ yyval = yyvsp[0]; } -#line 4370 "awkgram.c" +#line 4385 "awkgram.c" break; - case 189: -#line 2104 "awkgram.y" + case 191: +#line 2110 "awkgram.y" { INSTRUCTION *t = yyvsp[-1]; if (yyvsp[-1] == NULL) { @@ -4384,41 +4399,41 @@ regular_print: yyvsp[0]->sub_count = count_expressions(&t, false); yyval = list_append(t, yyvsp[0]); } -#line 4388 "awkgram.c" +#line 4403 "awkgram.c" break; - case 190: -#line 2121 "awkgram.y" + case 192: +#line 2127 "awkgram.y" { yyval = yyvsp[0]; } -#line 4394 "awkgram.c" +#line 4409 "awkgram.c" break; - case 191: -#line 2123 "awkgram.y" + case 193: +#line 2129 "awkgram.y" { yyval = list_merge(yyvsp[-1], yyvsp[0]); } -#line 4402 "awkgram.c" +#line 4417 "awkgram.c" break; - case 192: -#line 2130 "awkgram.y" + case 194: +#line 2136 "awkgram.y" { yyval = yyvsp[-1]; } -#line 4408 "awkgram.c" +#line 4423 "awkgram.c" break; - case 193: -#line 2135 "awkgram.y" + case 195: +#line 2141 "awkgram.y" { yyvsp[0]->opcode = Op_push; yyvsp[0]->memory = variable(yyvsp[0]->source_line, yyvsp[0]->lextok, Node_var_new); yyval = list_create(yyvsp[0]); } -#line 4418 "awkgram.c" +#line 4433 "awkgram.c" break; - case 194: -#line 2141 "awkgram.y" + case 196: +#line 2147 "awkgram.y" { char *arr = yyvsp[-1]->lextok; @@ -4426,11 +4441,11 @@ regular_print: yyvsp[-1]->opcode = Op_push_array; yyval = list_prepend(yyvsp[0], yyvsp[-1]); } -#line 4430 "awkgram.c" +#line 4445 "awkgram.c" break; - case 195: -#line 2152 "awkgram.y" + case 197: +#line 2158 "awkgram.y" { INSTRUCTION *ip = yyvsp[0]->nexti; if (ip->opcode == Op_push @@ -4442,85 +4457,85 @@ regular_print: } else yyval = yyvsp[0]; } -#line 4446 "awkgram.c" +#line 4461 "awkgram.c" break; - case 196: -#line 2164 "awkgram.y" + case 198: +#line 2170 "awkgram.y" { yyval = list_append(yyvsp[-1], yyvsp[-2]); if (yyvsp[0] != NULL) mk_assignment(yyvsp[-1], NULL, yyvsp[0]); } -#line 4456 "awkgram.c" +#line 4471 "awkgram.c" break; - case 197: -#line 2173 "awkgram.y" + case 199: +#line 2179 "awkgram.y" { yyvsp[0]->opcode = Op_postincrement; } -#line 4464 "awkgram.c" +#line 4479 "awkgram.c" break; - case 198: -#line 2177 "awkgram.y" + case 200: +#line 2183 "awkgram.y" { yyvsp[0]->opcode = Op_postdecrement; } -#line 4472 "awkgram.c" +#line 4487 "awkgram.c" break; - case 199: -#line 2181 "awkgram.y" + case 201: +#line 2187 "awkgram.y" { yyval = NULL; } -#line 4478 "awkgram.c" +#line 4493 "awkgram.c" break; - case 200: -#line 2185 "awkgram.y" + case 202: +#line 2191 "awkgram.y" { yyval = yyvsp[0]; } -#line 4484 "awkgram.c" +#line 4499 "awkgram.c" break; - case 201: -#line 2189 "awkgram.y" + case 203: +#line 2195 "awkgram.y" { yyval = yyvsp[0]; yyerrok; } -#line 4490 "awkgram.c" +#line 4505 "awkgram.c" break; - case 202: -#line 2193 "awkgram.y" + case 204: +#line 2199 "awkgram.y" { yyerrok; } -#line 4496 "awkgram.c" +#line 4511 "awkgram.c" break; - case 203: -#line 2198 "awkgram.y" + case 205: +#line 2204 "awkgram.y" { yyval = NULL; } -#line 4502 "awkgram.c" +#line 4517 "awkgram.c" break; - case 205: -#line 2203 "awkgram.y" + case 207: +#line 2209 "awkgram.y" { yyerrok; } -#line 4508 "awkgram.c" +#line 4523 "awkgram.c" break; - case 206: -#line 2207 "awkgram.y" + case 208: +#line 2213 "awkgram.y" { yyval = yyvsp[0]; yyerrok; } -#line 4514 "awkgram.c" +#line 4529 "awkgram.c" break; - case 207: -#line 2211 "awkgram.y" + case 209: +#line 2217 "awkgram.y" { yyval = yyvsp[0]; yyerrok; } -#line 4520 "awkgram.c" +#line 4535 "awkgram.c" break; -#line 4524 "awkgram.c" +#line 4539 "awkgram.c" default: break; } @@ -4714,7 +4729,7 @@ yyreturn: return yyresult; } -#line 2213 "awkgram.y" +#line 2219 "awkgram.y" struct token { |