rubinius-melbourne 2.2.1.0 → 2.2.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/rubinius/melbourne/grammar.cpp +546 -544
- data/ext/rubinius/melbourne/grammar.y +5 -3
- data/lib/rubinius/melbourne/version.rb +1 -1
- data/rubinius-melbourne.gemspec +2 -0
- metadata +2 -3
- data/ext/rubinius/melbourne/missing.hpp +0 -29
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ba4c017c57885cec1212ad04403b47343bdf8490
|
4
|
+
data.tar.gz: e3387799366025acba4b8af8a89ad076627dd1e9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1a4310ce6107ff36f49ef42c5abbf7f9e7e20567e6ff48ecfe59d311226269a7ea63a4c8d1761825a98e2a5bda9618e02bdf5349a0f3ff5000c7c04e1285b526
|
7
|
+
data.tar.gz: a798063f95c28ab65f487a3fb79746b4038a1da258f5bb5caee6bf6af162416993a3510b22c48b23a8dd089c94a74caa4c78dc73ab03909bf6dd666eb8fea277
|
@@ -312,7 +312,6 @@
|
|
312
312
|
|
313
313
|
#include "namespace.h"
|
314
314
|
#include "melbourne.hpp"
|
315
|
-
#include "missing.hpp"
|
316
315
|
#include "grammar.hpp"
|
317
316
|
#include "parser_state.hpp"
|
318
317
|
#include "visitor.hpp"
|
@@ -734,7 +733,7 @@ static int scan_hex(const char *start, size_t len, size_t *retlen);
|
|
734
733
|
|
735
734
|
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
736
735
|
typedef union YYSTYPE
|
737
|
-
#line
|
736
|
+
#line 427 "grammar.y"
|
738
737
|
{
|
739
738
|
VALUE val;
|
740
739
|
NODE *node;
|
@@ -743,7 +742,7 @@ typedef union YYSTYPE
|
|
743
742
|
const struct vtable* vars;
|
744
743
|
}
|
745
744
|
/* Line 193 of yacc.c. */
|
746
|
-
#line
|
745
|
+
#line 746 "grammar.cpp"
|
747
746
|
YYSTYPE;
|
748
747
|
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
|
749
748
|
# define YYSTYPE_IS_DECLARED 1
|
@@ -756,7 +755,7 @@ typedef union YYSTYPE
|
|
756
755
|
|
757
756
|
|
758
757
|
/* Line 216 of yacc.c. */
|
759
|
-
#line
|
758
|
+
#line 759 "grammar.cpp"
|
760
759
|
|
761
760
|
#ifdef short
|
762
761
|
# undef short
|
@@ -1300,69 +1299,69 @@ static const yytype_int16 yyrhs[] =
|
|
1300
1299
|
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
|
1301
1300
|
static const yytype_uint16 yyrline[] =
|
1302
1301
|
{
|
1303
|
-
0,
|
1304
|
-
|
1305
|
-
|
1306
|
-
|
1307
|
-
|
1308
|
-
|
1309
|
-
|
1310
|
-
|
1311
|
-
|
1312
|
-
|
1313
|
-
|
1314
|
-
|
1315
|
-
1176,
|
1316
|
-
1200, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208,
|
1317
|
-
1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218,
|
1318
|
-
1220, 1221, 1222, 1223, 1224, 1225,
|
1319
|
-
1230, 1230,
|
1320
|
-
1233, 1233, 1233, 1234, 1234, 1234,
|
1321
|
-
|
1322
|
-
1238, 1238,
|
1323
|
-
|
1324
|
-
|
1325
|
-
|
1326
|
-
|
1327
|
-
|
1328
|
-
|
1329
|
-
|
1330
|
-
1590,
|
1331
|
-
1623, 1624, 1625, 1626, 1627,
|
1332
|
-
|
1333
|
-
|
1334
|
-
|
1335
|
-
|
1336
|
-
|
1337
|
-
|
1338
|
-
1972, 1973,
|
1339
|
-
|
1340
|
-
|
1341
|
-
|
1342
|
-
|
1343
|
-
|
1344
|
-
|
1345
|
-
|
1346
|
-
|
1347
|
-
|
1348
|
-
|
1349
|
-
|
1350
|
-
|
1351
|
-
|
1352
|
-
2737, 2738, 2739,
|
1353
|
-
2782,
|
1354
|
-
|
1355
|
-
|
1356
|
-
|
1357
|
-
|
1358
|
-
|
1359
|
-
|
1360
|
-
|
1361
|
-
3140,
|
1362
|
-
|
1363
|
-
3243,
|
1364
|
-
|
1365
|
-
3281,
|
1302
|
+
0, 578, 578, 578, 603, 610, 614, 618, 622, 628,
|
1303
|
+
630, 629, 641, 664, 671, 675, 679, 683, 689, 694,
|
1304
|
+
693, 703, 703, 707, 711, 718, 723, 727, 732, 737,
|
1305
|
+
745, 753, 758, 767, 768, 774, 779, 796, 801, 806,
|
1306
|
+
811, 816, 821, 826, 831, 834, 839, 846, 847, 851,
|
1307
|
+
855, 859, 863, 866, 874, 875, 878, 879, 886, 885,
|
1308
|
+
900, 907, 912, 920, 925, 932, 937, 944, 949, 954,
|
1309
|
+
958, 962, 968, 969, 975, 976, 982, 986, 990, 994,
|
1310
|
+
998, 1002, 1006, 1010, 1014, 1018, 1024, 1025, 1031, 1035,
|
1311
|
+
1041, 1045, 1051, 1055, 1059, 1063, 1067, 1071, 1075, 1081,
|
1312
|
+
1087, 1094, 1099, 1104, 1108, 1112, 1116, 1120, 1126, 1132,
|
1313
|
+
1139, 1143, 1146, 1150, 1154, 1160, 1161, 1162, 1163, 1168,
|
1314
|
+
1175, 1176, 1179, 1183, 1186, 1190, 1190, 1196, 1197, 1198,
|
1315
|
+
1199, 1200, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208,
|
1316
|
+
1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218,
|
1317
|
+
1219, 1220, 1221, 1222, 1223, 1224, 1225, 1228, 1228, 1228,
|
1318
|
+
1229, 1229, 1230, 1230, 1230, 1231, 1231, 1231, 1231, 1232,
|
1319
|
+
1232, 1232, 1232, 1233, 1233, 1233, 1234, 1234, 1234, 1234,
|
1320
|
+
1235, 1235, 1235, 1235, 1236, 1236, 1236, 1236, 1237, 1237,
|
1321
|
+
1237, 1237, 1238, 1238, 1238, 1238, 1239, 1239, 1242, 1247,
|
1322
|
+
1253, 1258, 1264, 1285, 1290, 1295, 1300, 1305, 1310, 1315,
|
1323
|
+
1321, 1327, 1331, 1335, 1339, 1343, 1347, 1351, 1355, 1359,
|
1324
|
+
1363, 1367, 1371, 1375, 1379, 1383, 1387, 1391, 1395, 1399,
|
1325
|
+
1403, 1407, 1417, 1421, 1425, 1429, 1433, 1437, 1441, 1445,
|
1326
|
+
1445, 1450, 1456, 1462, 1470, 1471, 1475, 1479, 1485, 1491,
|
1327
|
+
1492, 1495, 1496, 1497, 1501, 1505, 1511, 1516, 1520, 1525,
|
1328
|
+
1530, 1533, 1533, 1545, 1551, 1555, 1561, 1565, 1569, 1578,
|
1329
|
+
1589, 1590, 1593, 1602, 1611, 1617, 1618, 1619, 1620, 1621,
|
1330
|
+
1622, 1623, 1624, 1625, 1626, 1627, 1632, 1631, 1651, 1651,
|
1331
|
+
1655, 1655, 1659, 1663, 1667, 1671, 1679, 1683, 1687, 1691,
|
1332
|
+
1695, 1699, 1699, 1704, 1708, 1712, 1718, 1719, 1726, 1730,
|
1333
|
+
1738, 1746, 1746, 1746, 1753, 1753, 1753, 1760, 1767, 1772,
|
1334
|
+
1774, 1771, 1791, 1790, 1807, 1812, 1806, 1829, 1828, 1845,
|
1335
|
+
1844, 1862, 1863, 1862, 1878, 1882, 1886, 1890, 1896, 1904,
|
1336
|
+
1910, 1916, 1922, 1928, 1934, 1940, 1946, 1952, 1958, 1965,
|
1337
|
+
1971, 1972, 1973, 1976, 1977, 1980, 1981, 1990, 1991, 1997,
|
1338
|
+
1998, 2001, 2005, 2011, 2015, 2021, 2025, 2030, 2035, 2039,
|
1339
|
+
2043, 2048, 2053, 2057, 2063, 2067, 2071, 2075, 2081, 2086,
|
1340
|
+
2091, 2095, 2099, 2103, 2107, 2111, 2115, 2119, 2123, 2127,
|
1341
|
+
2131, 2135, 2139, 2143, 2147, 2153, 2154, 2160, 2165, 2169,
|
1342
|
+
2176, 2180, 2187, 2192, 2199, 2205, 2211, 2214, 2219, 2211,
|
1343
|
+
2231, 2235, 2241, 2245, 2252, 2251, 2266, 2277, 2281, 2288,
|
1344
|
+
2297, 2304, 2303, 2313, 2312, 2321, 2326, 2325, 2335, 2334,
|
1345
|
+
2343, 2347, 2351, 2363, 2362, 2375, 2374, 2388, 2396, 2397,
|
1346
|
+
2400, 2412, 2415, 2419, 2423, 2426, 2430, 2433, 2437, 2440,
|
1347
|
+
2441, 2445, 2448, 2460, 2461, 2462, 2468, 2474, 2496, 2556,
|
1348
|
+
2560, 2567, 2570, 2576, 2577, 2583, 2587, 2594, 2597, 2605,
|
1349
|
+
2609, 2615, 2619, 2626, 2629, 2636, 2639, 2650, 2653, 2660,
|
1350
|
+
2663, 2670, 2673, 2696, 2698, 2697, 2709, 2715, 2720, 2708,
|
1351
|
+
2736, 2737, 2738, 2739, 2742, 2749, 2750, 2751, 2752, 2755,
|
1352
|
+
2781, 2782, 2788, 2789, 2790, 2791, 2794, 2795, 2796, 2797,
|
1353
|
+
2798, 2801, 2802, 2803, 2804, 2805, 2806, 2807, 2810, 2816,
|
1354
|
+
2824, 2828, 2834, 2835, 2838, 2843, 2842, 2851, 2858, 2864,
|
1355
|
+
2872, 2876, 2880, 2884, 2890, 2895, 2900, 2904, 2908, 2912,
|
1356
|
+
2916, 2920, 2924, 2928, 2932, 2936, 2940, 2944, 2948, 2952,
|
1357
|
+
2957, 2963, 2968, 2973, 2978, 2985, 2986, 2993, 2998, 3008,
|
1358
|
+
3009, 3017, 3024, 3029, 3036, 3041, 3048, 3052, 3063, 3067,
|
1359
|
+
3078, 3079, 3082, 3087, 3093, 3101, 3109, 3113, 3124, 3128,
|
1360
|
+
3139, 3140, 3143, 3151, 3158, 3159, 3162, 3173, 3177, 3183,
|
1361
|
+
3189, 3189, 3213, 3214, 3220, 3221, 3227, 3231, 3235, 3241,
|
1362
|
+
3242, 3243, 3246, 3247, 3248, 3249, 3252, 3253, 3254, 3257,
|
1363
|
+
3258, 3261, 3262, 3265, 3266, 3269, 3272, 3275, 3276, 3277,
|
1364
|
+
3280, 3281, 3284, 3285, 3288
|
1366
1365
|
};
|
1367
1366
|
#endif
|
1368
1367
|
|
@@ -5046,7 +5045,7 @@ yyreduce:
|
|
5046
5045
|
switch (yyn)
|
5047
5046
|
{
|
5048
5047
|
case 2:
|
5049
|
-
#line
|
5048
|
+
#line 578 "grammar.y"
|
5050
5049
|
{
|
5051
5050
|
lex_state = EXPR_BEG;
|
5052
5051
|
local_push(0);
|
@@ -5055,7 +5054,7 @@ yyreduce:
|
|
5055
5054
|
break;
|
5056
5055
|
|
5057
5056
|
case 3:
|
5058
|
-
#line
|
5057
|
+
#line 584 "grammar.y"
|
5059
5058
|
{
|
5060
5059
|
if((yyvsp[(2) - (2)].node) && !compile_for_eval) {
|
5061
5060
|
/* last expression should not be void */
|
@@ -5076,7 +5075,7 @@ yyreduce:
|
|
5076
5075
|
break;
|
5077
5076
|
|
5078
5077
|
case 4:
|
5079
|
-
#line
|
5078
|
+
#line 604 "grammar.y"
|
5080
5079
|
{
|
5081
5080
|
void_stmts((yyvsp[(1) - (2)].node));
|
5082
5081
|
(yyval.node) = (yyvsp[(1) - (2)].node);
|
@@ -5084,35 +5083,35 @@ yyreduce:
|
|
5084
5083
|
break;
|
5085
5084
|
|
5086
5085
|
case 5:
|
5087
|
-
#line
|
5086
|
+
#line 611 "grammar.y"
|
5088
5087
|
{
|
5089
5088
|
(yyval.node) = NEW_BEGIN(0);
|
5090
5089
|
;}
|
5091
5090
|
break;
|
5092
5091
|
|
5093
5092
|
case 6:
|
5094
|
-
#line
|
5093
|
+
#line 615 "grammar.y"
|
5095
5094
|
{
|
5096
5095
|
(yyval.node) = newline_node((yyvsp[(1) - (1)].node));
|
5097
5096
|
;}
|
5098
5097
|
break;
|
5099
5098
|
|
5100
5099
|
case 7:
|
5101
|
-
#line
|
5100
|
+
#line 619 "grammar.y"
|
5102
5101
|
{
|
5103
5102
|
(yyval.node) = block_append((yyvsp[(1) - (3)].node), newline_node((yyvsp[(3) - (3)].node)));
|
5104
5103
|
;}
|
5105
5104
|
break;
|
5106
5105
|
|
5107
5106
|
case 8:
|
5108
|
-
#line
|
5107
|
+
#line 623 "grammar.y"
|
5109
5108
|
{
|
5110
5109
|
(yyval.node) = remove_begin((yyvsp[(2) - (2)].node));
|
5111
5110
|
;}
|
5112
5111
|
break;
|
5113
5112
|
|
5114
5113
|
case 10:
|
5115
|
-
#line
|
5114
|
+
#line 630 "grammar.y"
|
5116
5115
|
{
|
5117
5116
|
if(in_def || in_single) {
|
5118
5117
|
yy_error("BEGIN in method");
|
@@ -5121,14 +5120,14 @@ yyreduce:
|
|
5121
5120
|
break;
|
5122
5121
|
|
5123
5122
|
case 11:
|
5124
|
-
#line
|
5123
|
+
#line 636 "grammar.y"
|
5125
5124
|
{
|
5126
5125
|
(yyval.node) = NEW_PREEXE((yyvsp[(4) - (5)].node));
|
5127
5126
|
;}
|
5128
5127
|
break;
|
5129
5128
|
|
5130
5129
|
case 12:
|
5131
|
-
#line
|
5130
|
+
#line 645 "grammar.y"
|
5132
5131
|
{
|
5133
5132
|
(yyval.node) = (yyvsp[(1) - (4)].node);
|
5134
5133
|
if((yyvsp[(2) - (4)].node)) {
|
@@ -5149,7 +5148,7 @@ yyreduce:
|
|
5149
5148
|
break;
|
5150
5149
|
|
5151
5150
|
case 13:
|
5152
|
-
#line
|
5151
|
+
#line 665 "grammar.y"
|
5153
5152
|
{
|
5154
5153
|
void_stmts((yyvsp[(1) - (2)].node));
|
5155
5154
|
(yyval.node) = (yyvsp[(1) - (2)].node);
|
@@ -5157,75 +5156,75 @@ yyreduce:
|
|
5157
5156
|
break;
|
5158
5157
|
|
5159
5158
|
case 14:
|
5160
|
-
#line
|
5159
|
+
#line 672 "grammar.y"
|
5161
5160
|
{
|
5162
5161
|
(yyval.node) = NEW_BEGIN(0);
|
5163
5162
|
;}
|
5164
5163
|
break;
|
5165
5164
|
|
5166
5165
|
case 15:
|
5167
|
-
#line
|
5166
|
+
#line 676 "grammar.y"
|
5168
5167
|
{
|
5169
5168
|
(yyval.node) = newline_node((yyvsp[(1) - (1)].node));
|
5170
5169
|
;}
|
5171
5170
|
break;
|
5172
5171
|
|
5173
5172
|
case 16:
|
5174
|
-
#line
|
5173
|
+
#line 680 "grammar.y"
|
5175
5174
|
{
|
5176
5175
|
(yyval.node) = block_append((yyvsp[(1) - (3)].node), newline_node((yyvsp[(3) - (3)].node)));
|
5177
5176
|
;}
|
5178
5177
|
break;
|
5179
5178
|
|
5180
5179
|
case 17:
|
5181
|
-
#line
|
5180
|
+
#line 684 "grammar.y"
|
5182
5181
|
{
|
5183
5182
|
(yyval.node) = remove_begin((yyvsp[(2) - (2)].node));
|
5184
5183
|
;}
|
5185
5184
|
break;
|
5186
5185
|
|
5187
5186
|
case 18:
|
5188
|
-
#line
|
5187
|
+
#line 690 "grammar.y"
|
5189
5188
|
{
|
5190
5189
|
(yyval.node) = (yyvsp[(1) - (1)].node);
|
5191
5190
|
;}
|
5192
5191
|
break;
|
5193
5192
|
|
5194
5193
|
case 19:
|
5195
|
-
#line
|
5194
|
+
#line 694 "grammar.y"
|
5196
5195
|
{
|
5197
5196
|
yy_error("BEGIN is permitted only at toplevel");
|
5198
5197
|
;}
|
5199
5198
|
break;
|
5200
5199
|
|
5201
5200
|
case 20:
|
5202
|
-
#line
|
5201
|
+
#line 698 "grammar.y"
|
5203
5202
|
{
|
5204
5203
|
(yyval.node) = NEW_BEGIN(0);
|
5205
5204
|
;}
|
5206
5205
|
break;
|
5207
5206
|
|
5208
5207
|
case 21:
|
5209
|
-
#line
|
5208
|
+
#line 703 "grammar.y"
|
5210
5209
|
{lex_state = EXPR_FNAME;;}
|
5211
5210
|
break;
|
5212
5211
|
|
5213
5212
|
case 22:
|
5214
|
-
#line
|
5213
|
+
#line 704 "grammar.y"
|
5215
5214
|
{
|
5216
5215
|
(yyval.node) = NEW_ALIAS((yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
|
5217
5216
|
;}
|
5218
5217
|
break;
|
5219
5218
|
|
5220
5219
|
case 23:
|
5221
|
-
#line
|
5220
|
+
#line 708 "grammar.y"
|
5222
5221
|
{
|
5223
5222
|
(yyval.node) = NEW_VALIAS((yyvsp[(2) - (3)].id), (yyvsp[(3) - (3)].id));
|
5224
5223
|
;}
|
5225
5224
|
break;
|
5226
5225
|
|
5227
5226
|
case 24:
|
5228
|
-
#line
|
5227
|
+
#line 712 "grammar.y"
|
5229
5228
|
{
|
5230
5229
|
char buf[2];
|
5231
5230
|
buf[0] = '$';
|
@@ -5235,7 +5234,7 @@ yyreduce:
|
|
5235
5234
|
break;
|
5236
5235
|
|
5237
5236
|
case 25:
|
5238
|
-
#line
|
5237
|
+
#line 719 "grammar.y"
|
5239
5238
|
{
|
5240
5239
|
yy_error("can't make alias for the number variables");
|
5241
5240
|
(yyval.node) = NEW_BEGIN(0);
|
@@ -5243,14 +5242,14 @@ yyreduce:
|
|
5243
5242
|
break;
|
5244
5243
|
|
5245
5244
|
case 26:
|
5246
|
-
#line
|
5245
|
+
#line 724 "grammar.y"
|
5247
5246
|
{
|
5248
5247
|
(yyval.node) = (yyvsp[(2) - (2)].node);
|
5249
5248
|
;}
|
5250
5249
|
break;
|
5251
5250
|
|
5252
5251
|
case 27:
|
5253
|
-
#line
|
5252
|
+
#line 728 "grammar.y"
|
5254
5253
|
{
|
5255
5254
|
(yyval.node) = NEW_IF(cond((yyvsp[(3) - (3)].node)), remove_begin((yyvsp[(1) - (3)].node)), 0);
|
5256
5255
|
fixpos((yyval.node), (yyvsp[(3) - (3)].node));
|
@@ -5258,7 +5257,7 @@ yyreduce:
|
|
5258
5257
|
break;
|
5259
5258
|
|
5260
5259
|
case 28:
|
5261
|
-
#line
|
5260
|
+
#line 733 "grammar.y"
|
5262
5261
|
{
|
5263
5262
|
(yyval.node) = NEW_UNLESS(cond((yyvsp[(3) - (3)].node)), remove_begin((yyvsp[(1) - (3)].node)), 0);
|
5264
5263
|
fixpos((yyval.node), (yyvsp[(3) - (3)].node));
|
@@ -5266,7 +5265,7 @@ yyreduce:
|
|
5266
5265
|
break;
|
5267
5266
|
|
5268
5267
|
case 29:
|
5269
|
-
#line
|
5268
|
+
#line 738 "grammar.y"
|
5270
5269
|
{
|
5271
5270
|
if((yyvsp[(1) - (3)].node) && nd_type((yyvsp[(1) - (3)].node)) == NODE_BEGIN) {
|
5272
5271
|
(yyval.node) = NEW_WHILE(cond((yyvsp[(3) - (3)].node)), (yyvsp[(1) - (3)].node)->nd_body, 0);
|
@@ -5277,7 +5276,7 @@ yyreduce:
|
|
5277
5276
|
break;
|
5278
5277
|
|
5279
5278
|
case 30:
|
5280
|
-
#line
|
5279
|
+
#line 746 "grammar.y"
|
5281
5280
|
{
|
5282
5281
|
if((yyvsp[(1) - (3)].node) && nd_type((yyvsp[(1) - (3)].node)) == NODE_BEGIN) {
|
5283
5282
|
(yyval.node) = NEW_UNTIL(cond((yyvsp[(3) - (3)].node)), (yyvsp[(1) - (3)].node)->nd_body, 0);
|
@@ -5288,7 +5287,7 @@ yyreduce:
|
|
5288
5287
|
break;
|
5289
5288
|
|
5290
5289
|
case 31:
|
5291
|
-
#line
|
5290
|
+
#line 754 "grammar.y"
|
5292
5291
|
{
|
5293
5292
|
NODE *resq = NEW_RESBODY(0, remove_begin((yyvsp[(3) - (3)].node)), 0);
|
5294
5293
|
(yyval.node) = NEW_RESCUE(remove_begin((yyvsp[(1) - (3)].node)), resq, 0);
|
@@ -5296,7 +5295,7 @@ yyreduce:
|
|
5296
5295
|
break;
|
5297
5296
|
|
5298
5297
|
case 32:
|
5299
|
-
#line
|
5298
|
+
#line 759 "grammar.y"
|
5300
5299
|
{
|
5301
5300
|
if(in_def || in_single) {
|
5302
5301
|
rb_warn("END in method; use at_exit");
|
@@ -5308,7 +5307,7 @@ yyreduce:
|
|
5308
5307
|
break;
|
5309
5308
|
|
5310
5309
|
case 34:
|
5311
|
-
#line
|
5310
|
+
#line 769 "grammar.y"
|
5312
5311
|
{
|
5313
5312
|
value_expr((yyvsp[(3) - (3)].node));
|
5314
5313
|
(yyvsp[(1) - (3)].node)->nd_value = (yyvsp[(3) - (3)].node);
|
@@ -5317,7 +5316,7 @@ yyreduce:
|
|
5317
5316
|
break;
|
5318
5317
|
|
5319
5318
|
case 35:
|
5320
|
-
#line
|
5319
|
+
#line 775 "grammar.y"
|
5321
5320
|
{
|
5322
5321
|
value_expr((yyvsp[(3) - (3)].node));
|
5323
5322
|
(yyval.node) = new_op_assign((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].id), (yyvsp[(3) - (3)].node));
|
@@ -5325,7 +5324,7 @@ yyreduce:
|
|
5325
5324
|
break;
|
5326
5325
|
|
5327
5326
|
case 36:
|
5328
|
-
#line
|
5327
|
+
#line 780 "grammar.y"
|
5329
5328
|
{
|
5330
5329
|
NODE *args;
|
5331
5330
|
|
@@ -5345,7 +5344,7 @@ yyreduce:
|
|
5345
5344
|
break;
|
5346
5345
|
|
5347
5346
|
case 37:
|
5348
|
-
#line
|
5347
|
+
#line 797 "grammar.y"
|
5349
5348
|
{
|
5350
5349
|
value_expr((yyvsp[(5) - (5)].node));
|
5351
5350
|
(yyval.node) = new_attr_op_assign((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(4) - (5)].id), (yyvsp[(5) - (5)].node));
|
@@ -5353,7 +5352,7 @@ yyreduce:
|
|
5353
5352
|
break;
|
5354
5353
|
|
5355
5354
|
case 38:
|
5356
|
-
#line
|
5355
|
+
#line 802 "grammar.y"
|
5357
5356
|
{
|
5358
5357
|
value_expr((yyvsp[(5) - (5)].node));
|
5359
5358
|
(yyval.node) = new_attr_op_assign((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(4) - (5)].id), (yyvsp[(5) - (5)].node));
|
@@ -5361,7 +5360,7 @@ yyreduce:
|
|
5361
5360
|
break;
|
5362
5361
|
|
5363
5362
|
case 39:
|
5364
|
-
#line
|
5363
|
+
#line 807 "grammar.y"
|
5365
5364
|
{
|
5366
5365
|
(yyval.node) = NEW_COLON2((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id));
|
5367
5366
|
(yyval.node) = new_const_op_assign((yyval.node), (yyvsp[(4) - (5)].id), (yyvsp[(5) - (5)].node));
|
@@ -5369,7 +5368,7 @@ yyreduce:
|
|
5369
5368
|
break;
|
5370
5369
|
|
5371
5370
|
case 40:
|
5372
|
-
#line
|
5371
|
+
#line 812 "grammar.y"
|
5373
5372
|
{
|
5374
5373
|
value_expr((yyvsp[(5) - (5)].node));
|
5375
5374
|
(yyval.node) = new_attr_op_assign((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(4) - (5)].id), (yyvsp[(5) - (5)].node));
|
@@ -5377,7 +5376,7 @@ yyreduce:
|
|
5377
5376
|
break;
|
5378
5377
|
|
5379
5378
|
case 41:
|
5380
|
-
#line
|
5379
|
+
#line 817 "grammar.y"
|
5381
5380
|
{
|
5382
5381
|
rb_backref_error((yyvsp[(1) - (3)].node));
|
5383
5382
|
(yyval.node) = NEW_BEGIN(0);
|
@@ -5385,7 +5384,7 @@ yyreduce:
|
|
5385
5384
|
break;
|
5386
5385
|
|
5387
5386
|
case 42:
|
5388
|
-
#line
|
5387
|
+
#line 822 "grammar.y"
|
5389
5388
|
{
|
5390
5389
|
value_expr((yyvsp[(3) - (3)].node));
|
5391
5390
|
(yyval.node) = node_assign((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
@@ -5393,7 +5392,7 @@ yyreduce:
|
|
5393
5392
|
break;
|
5394
5393
|
|
5395
5394
|
case 43:
|
5396
|
-
#line
|
5395
|
+
#line 827 "grammar.y"
|
5397
5396
|
{
|
5398
5397
|
(yyvsp[(1) - (3)].node)->nd_value = (yyvsp[(3) - (3)].node);
|
5399
5398
|
(yyval.node) = (yyvsp[(1) - (3)].node);
|
@@ -5401,7 +5400,7 @@ yyreduce:
|
|
5401
5400
|
break;
|
5402
5401
|
|
5403
5402
|
case 45:
|
5404
|
-
#line
|
5403
|
+
#line 835 "grammar.y"
|
5405
5404
|
{
|
5406
5405
|
value_expr((yyvsp[(3) - (3)].node));
|
5407
5406
|
(yyval.node) = node_assign((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
@@ -5409,7 +5408,7 @@ yyreduce:
|
|
5409
5408
|
break;
|
5410
5409
|
|
5411
5410
|
case 46:
|
5412
|
-
#line
|
5411
|
+
#line 840 "grammar.y"
|
5413
5412
|
{
|
5414
5413
|
value_expr((yyvsp[(3) - (3)].node));
|
5415
5414
|
(yyval.node) = node_assign((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
@@ -5417,35 +5416,35 @@ yyreduce:
|
|
5417
5416
|
break;
|
5418
5417
|
|
5419
5418
|
case 48:
|
5420
|
-
#line
|
5419
|
+
#line 848 "grammar.y"
|
5421
5420
|
{
|
5422
5421
|
(yyval.node) = logop(NODE_AND, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
5423
5422
|
;}
|
5424
5423
|
break;
|
5425
5424
|
|
5426
5425
|
case 49:
|
5427
|
-
#line
|
5426
|
+
#line 852 "grammar.y"
|
5428
5427
|
{
|
5429
5428
|
(yyval.node) = logop(NODE_OR, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
5430
5429
|
;}
|
5431
5430
|
break;
|
5432
5431
|
|
5433
5432
|
case 50:
|
5434
|
-
#line
|
5433
|
+
#line 856 "grammar.y"
|
5435
5434
|
{
|
5436
5435
|
(yyval.node) = call_uni_op(cond((yyvsp[(3) - (3)].node)), '!');
|
5437
5436
|
;}
|
5438
5437
|
break;
|
5439
5438
|
|
5440
5439
|
case 51:
|
5441
|
-
#line
|
5440
|
+
#line 860 "grammar.y"
|
5442
5441
|
{
|
5443
5442
|
(yyval.node) = call_uni_op(cond((yyvsp[(2) - (2)].node)), '!');
|
5444
5443
|
;}
|
5445
5444
|
break;
|
5446
5445
|
|
5447
5446
|
case 53:
|
5448
|
-
#line
|
5447
|
+
#line 867 "grammar.y"
|
5449
5448
|
{
|
5450
5449
|
value_expr((yyvsp[(1) - (1)].node));
|
5451
5450
|
(yyval.node) = (yyvsp[(1) - (1)].node);
|
@@ -5454,14 +5453,14 @@ yyreduce:
|
|
5454
5453
|
break;
|
5455
5454
|
|
5456
5455
|
case 57:
|
5457
|
-
#line
|
5456
|
+
#line 880 "grammar.y"
|
5458
5457
|
{
|
5459
5458
|
(yyval.node) = NEW_CALL((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].id), (yyvsp[(4) - (4)].node));
|
5460
5459
|
;}
|
5461
5460
|
break;
|
5462
5461
|
|
5463
5462
|
case 58:
|
5464
|
-
#line
|
5463
|
+
#line 886 "grammar.y"
|
5465
5464
|
{
|
5466
5465
|
(yyvsp[(1) - (1)].vars) = bv_push();
|
5467
5466
|
(yyval.num) = sourceline;
|
@@ -5469,7 +5468,7 @@ yyreduce:
|
|
5469
5468
|
break;
|
5470
5469
|
|
5471
5470
|
case 59:
|
5472
|
-
#line
|
5471
|
+
#line 893 "grammar.y"
|
5473
5472
|
{
|
5474
5473
|
(yyval.node) = NEW_ITER((yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
|
5475
5474
|
nd_set_line((yyval.node), (yyvsp[(2) - (5)].num));
|
@@ -5478,7 +5477,7 @@ yyreduce:
|
|
5478
5477
|
break;
|
5479
5478
|
|
5480
5479
|
case 60:
|
5481
|
-
#line
|
5480
|
+
#line 901 "grammar.y"
|
5482
5481
|
{
|
5483
5482
|
(yyval.node) = NEW_FCALL((yyvsp[(1) - (1)].id), 0);
|
5484
5483
|
nd_set_line((yyval.node), tokline);
|
@@ -5486,7 +5485,7 @@ yyreduce:
|
|
5486
5485
|
break;
|
5487
5486
|
|
5488
5487
|
case 61:
|
5489
|
-
#line
|
5488
|
+
#line 908 "grammar.y"
|
5490
5489
|
{
|
5491
5490
|
(yyval.node) = (yyvsp[(1) - (2)].node);
|
5492
5491
|
(yyval.node)->nd_args = (yyvsp[(2) - (2)].node);
|
@@ -5494,7 +5493,7 @@ yyreduce:
|
|
5494
5493
|
break;
|
5495
5494
|
|
5496
5495
|
case 62:
|
5497
|
-
#line
|
5496
|
+
#line 913 "grammar.y"
|
5498
5497
|
{
|
5499
5498
|
block_dup_check((yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].node));
|
5500
5499
|
(yyvsp[(1) - (3)].node)->nd_args = (yyvsp[(2) - (3)].node);
|
@@ -5505,7 +5504,7 @@ yyreduce:
|
|
5505
5504
|
break;
|
5506
5505
|
|
5507
5506
|
case 63:
|
5508
|
-
#line
|
5507
|
+
#line 921 "grammar.y"
|
5509
5508
|
{
|
5510
5509
|
(yyval.node) = NEW_CALL((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].id), (yyvsp[(4) - (4)].node));
|
5511
5510
|
fixpos((yyval.node), (yyvsp[(1) - (4)].node));
|
@@ -5513,7 +5512,7 @@ yyreduce:
|
|
5513
5512
|
break;
|
5514
5513
|
|
5515
5514
|
case 64:
|
5516
|
-
#line
|
5515
|
+
#line 926 "grammar.y"
|
5517
5516
|
{
|
5518
5517
|
block_dup_check((yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
|
5519
5518
|
(yyvsp[(5) - (5)].node)->nd_iter = NEW_CALL((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(4) - (5)].node));
|
@@ -5523,7 +5522,7 @@ yyreduce:
|
|
5523
5522
|
break;
|
5524
5523
|
|
5525
5524
|
case 65:
|
5526
|
-
#line
|
5525
|
+
#line 933 "grammar.y"
|
5527
5526
|
{
|
5528
5527
|
(yyval.node) = NEW_CALL((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].id), (yyvsp[(4) - (4)].node));
|
5529
5528
|
fixpos((yyval.node), (yyvsp[(1) - (4)].node));
|
@@ -5531,7 +5530,7 @@ yyreduce:
|
|
5531
5530
|
break;
|
5532
5531
|
|
5533
5532
|
case 66:
|
5534
|
-
#line
|
5533
|
+
#line 938 "grammar.y"
|
5535
5534
|
{
|
5536
5535
|
block_dup_check((yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
|
5537
5536
|
(yyvsp[(5) - (5)].node)->nd_iter = NEW_CALL((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(4) - (5)].node));
|
@@ -5541,7 +5540,7 @@ yyreduce:
|
|
5541
5540
|
break;
|
5542
5541
|
|
5543
5542
|
case 67:
|
5544
|
-
#line
|
5543
|
+
#line 945 "grammar.y"
|
5545
5544
|
{
|
5546
5545
|
(yyval.node) = NEW_SUPER((yyvsp[(2) - (2)].node));
|
5547
5546
|
fixpos((yyval.node), (yyvsp[(2) - (2)].node));
|
@@ -5549,7 +5548,7 @@ yyreduce:
|
|
5549
5548
|
break;
|
5550
5549
|
|
5551
5550
|
case 68:
|
5552
|
-
#line
|
5551
|
+
#line 950 "grammar.y"
|
5553
5552
|
{
|
5554
5553
|
(yyval.node) = new_yield((yyvsp[(2) - (2)].node));
|
5555
5554
|
fixpos((yyval.node), (yyvsp[(2) - (2)].node));
|
@@ -5557,189 +5556,189 @@ yyreduce:
|
|
5557
5556
|
break;
|
5558
5557
|
|
5559
5558
|
case 69:
|
5560
|
-
#line
|
5559
|
+
#line 955 "grammar.y"
|
5561
5560
|
{
|
5562
5561
|
(yyval.node) = NEW_RETURN(ret_args((yyvsp[(2) - (2)].node)));
|
5563
5562
|
;}
|
5564
5563
|
break;
|
5565
5564
|
|
5566
5565
|
case 70:
|
5567
|
-
#line
|
5566
|
+
#line 959 "grammar.y"
|
5568
5567
|
{
|
5569
5568
|
(yyval.node) = NEW_BREAK(ret_args((yyvsp[(2) - (2)].node)));
|
5570
5569
|
;}
|
5571
5570
|
break;
|
5572
5571
|
|
5573
5572
|
case 71:
|
5574
|
-
#line
|
5573
|
+
#line 963 "grammar.y"
|
5575
5574
|
{
|
5576
5575
|
(yyval.node) = NEW_NEXT(ret_args((yyvsp[(2) - (2)].node)));
|
5577
5576
|
;}
|
5578
5577
|
break;
|
5579
5578
|
|
5580
5579
|
case 73:
|
5581
|
-
#line
|
5580
|
+
#line 970 "grammar.y"
|
5582
5581
|
{
|
5583
5582
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
5584
5583
|
;}
|
5585
5584
|
break;
|
5586
5585
|
|
5587
5586
|
case 75:
|
5588
|
-
#line
|
5587
|
+
#line 977 "grammar.y"
|
5589
5588
|
{
|
5590
5589
|
(yyval.node) = NEW_MASGN(NEW_LIST((yyvsp[(2) - (3)].node)), 0);
|
5591
5590
|
;}
|
5592
5591
|
break;
|
5593
5592
|
|
5594
5593
|
case 76:
|
5595
|
-
#line
|
5594
|
+
#line 983 "grammar.y"
|
5596
5595
|
{
|
5597
5596
|
(yyval.node) = NEW_MASGN((yyvsp[(1) - (1)].node), 0);
|
5598
5597
|
;}
|
5599
5598
|
break;
|
5600
5599
|
|
5601
5600
|
case 77:
|
5602
|
-
#line
|
5601
|
+
#line 987 "grammar.y"
|
5603
5602
|
{
|
5604
5603
|
(yyval.node) = NEW_MASGN(list_append((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node)), 0);
|
5605
5604
|
;}
|
5606
5605
|
break;
|
5607
5606
|
|
5608
5607
|
case 78:
|
5609
|
-
#line
|
5608
|
+
#line 991 "grammar.y"
|
5610
5609
|
{
|
5611
5610
|
(yyval.node) = NEW_MASGN((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
5612
5611
|
;}
|
5613
5612
|
break;
|
5614
5613
|
|
5615
5614
|
case 79:
|
5616
|
-
#line
|
5615
|
+
#line 995 "grammar.y"
|
5617
5616
|
{
|
5618
5617
|
(yyval.node) = NEW_MASGN((yyvsp[(1) - (5)].node), NEW_POSTARG((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)));
|
5619
5618
|
;}
|
5620
5619
|
break;
|
5621
5620
|
|
5622
5621
|
case 80:
|
5623
|
-
#line
|
5622
|
+
#line 999 "grammar.y"
|
5624
5623
|
{
|
5625
5624
|
(yyval.node) = NEW_MASGN((yyvsp[(1) - (2)].node), -1);
|
5626
5625
|
;}
|
5627
5626
|
break;
|
5628
5627
|
|
5629
5628
|
case 81:
|
5630
|
-
#line
|
5629
|
+
#line 1003 "grammar.y"
|
5631
5630
|
{
|
5632
5631
|
(yyval.node) = NEW_MASGN((yyvsp[(1) - (4)].node), NEW_POSTARG(-1, (yyvsp[(4) - (4)].node)));
|
5633
5632
|
;}
|
5634
5633
|
break;
|
5635
5634
|
|
5636
5635
|
case 82:
|
5637
|
-
#line
|
5636
|
+
#line 1007 "grammar.y"
|
5638
5637
|
{
|
5639
5638
|
(yyval.node) = NEW_MASGN(0, (yyvsp[(2) - (2)].node));
|
5640
5639
|
;}
|
5641
5640
|
break;
|
5642
5641
|
|
5643
5642
|
case 83:
|
5644
|
-
#line
|
5643
|
+
#line 1011 "grammar.y"
|
5645
5644
|
{
|
5646
5645
|
(yyval.node) = NEW_MASGN(0, NEW_POSTARG((yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node)));
|
5647
5646
|
;}
|
5648
5647
|
break;
|
5649
5648
|
|
5650
5649
|
case 84:
|
5651
|
-
#line
|
5650
|
+
#line 1015 "grammar.y"
|
5652
5651
|
{
|
5653
5652
|
(yyval.node) = NEW_MASGN(0, -1);
|
5654
5653
|
;}
|
5655
5654
|
break;
|
5656
5655
|
|
5657
5656
|
case 85:
|
5658
|
-
#line
|
5657
|
+
#line 1019 "grammar.y"
|
5659
5658
|
{
|
5660
5659
|
(yyval.node) = NEW_MASGN(0, NEW_POSTARG(-1, (yyvsp[(3) - (3)].node)));
|
5661
5660
|
;}
|
5662
5661
|
break;
|
5663
5662
|
|
5664
5663
|
case 87:
|
5665
|
-
#line
|
5664
|
+
#line 1026 "grammar.y"
|
5666
5665
|
{
|
5667
5666
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
5668
5667
|
;}
|
5669
5668
|
break;
|
5670
5669
|
|
5671
5670
|
case 88:
|
5672
|
-
#line
|
5671
|
+
#line 1032 "grammar.y"
|
5673
5672
|
{
|
5674
5673
|
(yyval.node) = NEW_LIST((yyvsp[(1) - (2)].node));
|
5675
5674
|
;}
|
5676
5675
|
break;
|
5677
5676
|
|
5678
5677
|
case 89:
|
5679
|
-
#line
|
5678
|
+
#line 1036 "grammar.y"
|
5680
5679
|
{
|
5681
5680
|
(yyval.node) = list_append((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].node));
|
5682
5681
|
;}
|
5683
5682
|
break;
|
5684
5683
|
|
5685
5684
|
case 90:
|
5686
|
-
#line
|
5685
|
+
#line 1042 "grammar.y"
|
5687
5686
|
{
|
5688
5687
|
(yyval.node) = NEW_LIST((yyvsp[(1) - (1)].node));
|
5689
5688
|
;}
|
5690
5689
|
break;
|
5691
5690
|
|
5692
5691
|
case 91:
|
5693
|
-
#line
|
5692
|
+
#line 1046 "grammar.y"
|
5694
5693
|
{
|
5695
5694
|
(yyval.node) = list_append((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
5696
5695
|
;}
|
5697
5696
|
break;
|
5698
5697
|
|
5699
5698
|
case 92:
|
5700
|
-
#line
|
5699
|
+
#line 1052 "grammar.y"
|
5701
5700
|
{
|
5702
5701
|
(yyval.node) = assignable((yyvsp[(1) - (1)].id), 0);
|
5703
5702
|
;}
|
5704
5703
|
break;
|
5705
5704
|
|
5706
5705
|
case 93:
|
5707
|
-
#line
|
5706
|
+
#line 1056 "grammar.y"
|
5708
5707
|
{
|
5709
5708
|
(yyval.node) = assignable((yyvsp[(1) - (1)].id), 0);
|
5710
5709
|
;}
|
5711
5710
|
break;
|
5712
5711
|
|
5713
5712
|
case 94:
|
5714
|
-
#line
|
5713
|
+
#line 1060 "grammar.y"
|
5715
5714
|
{
|
5716
5715
|
(yyval.node) = aryset((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node));
|
5717
5716
|
;}
|
5718
5717
|
break;
|
5719
5718
|
|
5720
5719
|
case 95:
|
5721
|
-
#line
|
5720
|
+
#line 1064 "grammar.y"
|
5722
5721
|
{
|
5723
5722
|
(yyval.node) = attrset((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].id));
|
5724
5723
|
;}
|
5725
5724
|
break;
|
5726
5725
|
|
5727
5726
|
case 96:
|
5728
|
-
#line
|
5727
|
+
#line 1068 "grammar.y"
|
5729
5728
|
{
|
5730
5729
|
(yyval.node) = attrset((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].id));
|
5731
5730
|
;}
|
5732
5731
|
break;
|
5733
5732
|
|
5734
5733
|
case 97:
|
5735
|
-
#line
|
5734
|
+
#line 1072 "grammar.y"
|
5736
5735
|
{
|
5737
5736
|
(yyval.node) = attrset((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].id));
|
5738
5737
|
;}
|
5739
5738
|
break;
|
5740
5739
|
|
5741
5740
|
case 98:
|
5742
|
-
#line
|
5741
|
+
#line 1076 "grammar.y"
|
5743
5742
|
{
|
5744
5743
|
if(in_def || in_single)
|
5745
5744
|
yy_error("dynamic constant assignment");
|
@@ -5748,7 +5747,7 @@ yyreduce:
|
|
5748
5747
|
break;
|
5749
5748
|
|
5750
5749
|
case 99:
|
5751
|
-
#line
|
5750
|
+
#line 1082 "grammar.y"
|
5752
5751
|
{
|
5753
5752
|
if(in_def || in_single)
|
5754
5753
|
yy_error("dynamic constant assignment");
|
@@ -5757,7 +5756,7 @@ yyreduce:
|
|
5757
5756
|
break;
|
5758
5757
|
|
5759
5758
|
case 100:
|
5760
|
-
#line
|
5759
|
+
#line 1088 "grammar.y"
|
5761
5760
|
{
|
5762
5761
|
rb_backref_error((yyvsp[(1) - (1)].node));
|
5763
5762
|
(yyval.node) = NEW_BEGIN(0);
|
@@ -5765,7 +5764,7 @@ yyreduce:
|
|
5765
5764
|
break;
|
5766
5765
|
|
5767
5766
|
case 101:
|
5768
|
-
#line
|
5767
|
+
#line 1095 "grammar.y"
|
5769
5768
|
{
|
5770
5769
|
(yyval.node) = assignable((yyvsp[(1) - (1)].id), 0);
|
5771
5770
|
if(!(yyval.node)) (yyval.node) = NEW_BEGIN(0);
|
@@ -5773,7 +5772,7 @@ yyreduce:
|
|
5773
5772
|
break;
|
5774
5773
|
|
5775
5774
|
case 102:
|
5776
|
-
#line
|
5775
|
+
#line 1100 "grammar.y"
|
5777
5776
|
{
|
5778
5777
|
(yyval.node) = assignable((yyvsp[(1) - (1)].id), 0);
|
5779
5778
|
if(!(yyval.node)) (yyval.node) = NEW_BEGIN(0);
|
@@ -5781,35 +5780,35 @@ yyreduce:
|
|
5781
5780
|
break;
|
5782
5781
|
|
5783
5782
|
case 103:
|
5784
|
-
#line
|
5783
|
+
#line 1105 "grammar.y"
|
5785
5784
|
{
|
5786
5785
|
(yyval.node) = aryset((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node));
|
5787
5786
|
;}
|
5788
5787
|
break;
|
5789
5788
|
|
5790
5789
|
case 104:
|
5791
|
-
#line
|
5790
|
+
#line 1109 "grammar.y"
|
5792
5791
|
{
|
5793
5792
|
(yyval.node) = attrset((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].id));
|
5794
5793
|
;}
|
5795
5794
|
break;
|
5796
5795
|
|
5797
5796
|
case 105:
|
5798
|
-
#line
|
5797
|
+
#line 1113 "grammar.y"
|
5799
5798
|
{
|
5800
5799
|
(yyval.node) = attrset((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].id));
|
5801
5800
|
;}
|
5802
5801
|
break;
|
5803
5802
|
|
5804
5803
|
case 106:
|
5805
|
-
#line
|
5804
|
+
#line 1117 "grammar.y"
|
5806
5805
|
{
|
5807
5806
|
(yyval.node) = attrset((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].id));
|
5808
5807
|
;}
|
5809
5808
|
break;
|
5810
5809
|
|
5811
5810
|
case 107:
|
5812
|
-
#line
|
5811
|
+
#line 1121 "grammar.y"
|
5813
5812
|
{
|
5814
5813
|
if(in_def || in_single)
|
5815
5814
|
yy_error("dynamic constant assignment");
|
@@ -5818,7 +5817,7 @@ yyreduce:
|
|
5818
5817
|
break;
|
5819
5818
|
|
5820
5819
|
case 108:
|
5821
|
-
#line
|
5820
|
+
#line 1127 "grammar.y"
|
5822
5821
|
{
|
5823
5822
|
if(in_def || in_single)
|
5824
5823
|
yy_error("dynamic constant assignment");
|
@@ -5827,7 +5826,7 @@ yyreduce:
|
|
5827
5826
|
break;
|
5828
5827
|
|
5829
5828
|
case 109:
|
5830
|
-
#line
|
5829
|
+
#line 1133 "grammar.y"
|
5831
5830
|
{
|
5832
5831
|
rb_backref_error((yyvsp[(1) - (1)].node));
|
5833
5832
|
(yyval.node) = NEW_BEGIN(0);
|
@@ -5835,35 +5834,35 @@ yyreduce:
|
|
5835
5834
|
break;
|
5836
5835
|
|
5837
5836
|
case 110:
|
5838
|
-
#line
|
5837
|
+
#line 1140 "grammar.y"
|
5839
5838
|
{
|
5840
5839
|
yy_error("class/module name must be CONSTANT");
|
5841
5840
|
;}
|
5842
5841
|
break;
|
5843
5842
|
|
5844
5843
|
case 112:
|
5845
|
-
#line
|
5844
|
+
#line 1147 "grammar.y"
|
5846
5845
|
{
|
5847
5846
|
(yyval.node) = NEW_COLON3((yyvsp[(2) - (2)].id));
|
5848
5847
|
;}
|
5849
5848
|
break;
|
5850
5849
|
|
5851
5850
|
case 113:
|
5852
|
-
#line
|
5851
|
+
#line 1151 "grammar.y"
|
5853
5852
|
{
|
5854
5853
|
(yyval.node) = NEW_COLON2(0, (yyval.node));
|
5855
5854
|
;}
|
5856
5855
|
break;
|
5857
5856
|
|
5858
5857
|
case 114:
|
5859
|
-
#line
|
5858
|
+
#line 1155 "grammar.y"
|
5860
5859
|
{
|
5861
5860
|
(yyval.node) = NEW_COLON2((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].id));
|
5862
5861
|
;}
|
5863
5862
|
break;
|
5864
5863
|
|
5865
5864
|
case 118:
|
5866
|
-
#line
|
5865
|
+
#line 1164 "grammar.y"
|
5867
5866
|
{
|
5868
5867
|
lex_state = EXPR_ENDFN;
|
5869
5868
|
(yyval.id) = convert_op((yyvsp[(1) - (1)].id));
|
@@ -5871,7 +5870,7 @@ yyreduce:
|
|
5871
5870
|
break;
|
5872
5871
|
|
5873
5872
|
case 119:
|
5874
|
-
#line
|
5873
|
+
#line 1169 "grammar.y"
|
5875
5874
|
{
|
5876
5875
|
lex_state = EXPR_ENDFN;
|
5877
5876
|
(yyval.id) = (yyvsp[(1) - (1)].id);
|
@@ -5879,183 +5878,183 @@ yyreduce:
|
|
5879
5878
|
break;
|
5880
5879
|
|
5881
5880
|
case 122:
|
5882
|
-
#line
|
5881
|
+
#line 1180 "grammar.y"
|
5883
5882
|
{
|
5884
5883
|
(yyval.node) = NEW_LIT(ID2SYM((yyvsp[(1) - (1)].id)));
|
5885
5884
|
;}
|
5886
5885
|
break;
|
5887
5886
|
|
5888
5887
|
case 124:
|
5889
|
-
#line
|
5888
|
+
#line 1187 "grammar.y"
|
5890
5889
|
{
|
5891
5890
|
(yyval.node) = NEW_UNDEF((yyvsp[(1) - (1)].node));
|
5892
5891
|
;}
|
5893
5892
|
break;
|
5894
5893
|
|
5895
5894
|
case 125:
|
5896
|
-
#line
|
5895
|
+
#line 1190 "grammar.y"
|
5897
5896
|
{lex_state = EXPR_FNAME;;}
|
5898
5897
|
break;
|
5899
5898
|
|
5900
5899
|
case 126:
|
5901
|
-
#line
|
5900
|
+
#line 1191 "grammar.y"
|
5902
5901
|
{
|
5903
5902
|
(yyval.node) = block_append((yyvsp[(1) - (4)].node), NEW_UNDEF((yyvsp[(4) - (4)].node)));
|
5904
5903
|
;}
|
5905
5904
|
break;
|
5906
5905
|
|
5907
5906
|
case 127:
|
5908
|
-
#line
|
5907
|
+
#line 1196 "grammar.y"
|
5909
5908
|
{ (yyval.id) = '|'; ;}
|
5910
5909
|
break;
|
5911
5910
|
|
5912
5911
|
case 128:
|
5913
|
-
#line
|
5912
|
+
#line 1197 "grammar.y"
|
5914
5913
|
{ (yyval.id) = '^'; ;}
|
5915
5914
|
break;
|
5916
5915
|
|
5917
5916
|
case 129:
|
5918
|
-
#line
|
5917
|
+
#line 1198 "grammar.y"
|
5919
5918
|
{ (yyval.id) = '&'; ;}
|
5920
5919
|
break;
|
5921
5920
|
|
5922
5921
|
case 130:
|
5923
|
-
#line
|
5922
|
+
#line 1199 "grammar.y"
|
5924
5923
|
{ (yyval.id) = tCMP; ;}
|
5925
5924
|
break;
|
5926
5925
|
|
5927
5926
|
case 131:
|
5928
|
-
#line
|
5927
|
+
#line 1200 "grammar.y"
|
5929
5928
|
{ (yyval.id) = tEQ; ;}
|
5930
5929
|
break;
|
5931
5930
|
|
5932
5931
|
case 132:
|
5933
|
-
#line
|
5932
|
+
#line 1201 "grammar.y"
|
5934
5933
|
{ (yyval.id) = tEQQ; ;}
|
5935
5934
|
break;
|
5936
5935
|
|
5937
5936
|
case 133:
|
5938
|
-
#line
|
5937
|
+
#line 1202 "grammar.y"
|
5939
5938
|
{ (yyval.id) = tMATCH; ;}
|
5940
5939
|
break;
|
5941
5940
|
|
5942
5941
|
case 134:
|
5943
|
-
#line
|
5942
|
+
#line 1203 "grammar.y"
|
5944
5943
|
{ (yyval.id) = tNMATCH; ;}
|
5945
5944
|
break;
|
5946
5945
|
|
5947
5946
|
case 135:
|
5948
|
-
#line
|
5947
|
+
#line 1204 "grammar.y"
|
5949
5948
|
{ (yyval.id) = '>'; ;}
|
5950
5949
|
break;
|
5951
5950
|
|
5952
5951
|
case 136:
|
5953
|
-
#line
|
5952
|
+
#line 1205 "grammar.y"
|
5954
5953
|
{ (yyval.id) = tGEQ; ;}
|
5955
5954
|
break;
|
5956
5955
|
|
5957
5956
|
case 137:
|
5958
|
-
#line
|
5957
|
+
#line 1206 "grammar.y"
|
5959
5958
|
{ (yyval.id) = '<'; ;}
|
5960
5959
|
break;
|
5961
5960
|
|
5962
5961
|
case 138:
|
5963
|
-
#line
|
5962
|
+
#line 1207 "grammar.y"
|
5964
5963
|
{ (yyval.id) = tLEQ; ;}
|
5965
5964
|
break;
|
5966
5965
|
|
5967
5966
|
case 139:
|
5968
|
-
#line
|
5967
|
+
#line 1208 "grammar.y"
|
5969
5968
|
{ (yyval.id) = tNEQ; ;}
|
5970
5969
|
break;
|
5971
5970
|
|
5972
5971
|
case 140:
|
5973
|
-
#line
|
5972
|
+
#line 1209 "grammar.y"
|
5974
5973
|
{ (yyval.id) = tLSHFT; ;}
|
5975
5974
|
break;
|
5976
5975
|
|
5977
5976
|
case 141:
|
5978
|
-
#line
|
5977
|
+
#line 1210 "grammar.y"
|
5979
5978
|
{ (yyval.id) = tRSHFT; ;}
|
5980
5979
|
break;
|
5981
5980
|
|
5982
5981
|
case 142:
|
5983
|
-
#line
|
5982
|
+
#line 1211 "grammar.y"
|
5984
5983
|
{ (yyval.id) = '+'; ;}
|
5985
5984
|
break;
|
5986
5985
|
|
5987
5986
|
case 143:
|
5988
|
-
#line
|
5987
|
+
#line 1212 "grammar.y"
|
5989
5988
|
{ (yyval.id) = '-'; ;}
|
5990
5989
|
break;
|
5991
5990
|
|
5992
5991
|
case 144:
|
5993
|
-
#line
|
5992
|
+
#line 1213 "grammar.y"
|
5994
5993
|
{ (yyval.id) = '*'; ;}
|
5995
5994
|
break;
|
5996
5995
|
|
5997
5996
|
case 145:
|
5998
|
-
#line
|
5997
|
+
#line 1214 "grammar.y"
|
5999
5998
|
{ (yyval.id) = '*'; ;}
|
6000
5999
|
break;
|
6001
6000
|
|
6002
6001
|
case 146:
|
6003
|
-
#line
|
6002
|
+
#line 1215 "grammar.y"
|
6004
6003
|
{ (yyval.id) = '/'; ;}
|
6005
6004
|
break;
|
6006
6005
|
|
6007
6006
|
case 147:
|
6008
|
-
#line
|
6007
|
+
#line 1216 "grammar.y"
|
6009
6008
|
{ (yyval.id) = '%'; ;}
|
6010
6009
|
break;
|
6011
6010
|
|
6012
6011
|
case 148:
|
6013
|
-
#line
|
6012
|
+
#line 1217 "grammar.y"
|
6014
6013
|
{ (yyval.id) = tPOW; ;}
|
6015
6014
|
break;
|
6016
6015
|
|
6017
6016
|
case 149:
|
6018
|
-
#line
|
6017
|
+
#line 1218 "grammar.y"
|
6019
6018
|
{ (yyval.id) = tDSTAR; ;}
|
6020
6019
|
break;
|
6021
6020
|
|
6022
6021
|
case 150:
|
6023
|
-
#line
|
6022
|
+
#line 1219 "grammar.y"
|
6024
6023
|
{ (yyval.id) = '!'; ;}
|
6025
6024
|
break;
|
6026
6025
|
|
6027
6026
|
case 151:
|
6028
|
-
#line
|
6027
|
+
#line 1220 "grammar.y"
|
6029
6028
|
{ (yyval.id) = '~'; ;}
|
6030
6029
|
break;
|
6031
6030
|
|
6032
6031
|
case 152:
|
6033
|
-
#line
|
6032
|
+
#line 1221 "grammar.y"
|
6034
6033
|
{ (yyval.id) = tUPLUS; ;}
|
6035
6034
|
break;
|
6036
6035
|
|
6037
6036
|
case 153:
|
6038
|
-
#line
|
6037
|
+
#line 1222 "grammar.y"
|
6039
6038
|
{ (yyval.id) = tUMINUS; ;}
|
6040
6039
|
break;
|
6041
6040
|
|
6042
6041
|
case 154:
|
6043
|
-
#line
|
6042
|
+
#line 1223 "grammar.y"
|
6044
6043
|
{ (yyval.id) = tAREF; ;}
|
6045
6044
|
break;
|
6046
6045
|
|
6047
6046
|
case 155:
|
6048
|
-
#line
|
6047
|
+
#line 1224 "grammar.y"
|
6049
6048
|
{ (yyval.id) = tASET; ;}
|
6050
6049
|
break;
|
6051
6050
|
|
6052
6051
|
case 156:
|
6053
|
-
#line
|
6052
|
+
#line 1225 "grammar.y"
|
6054
6053
|
{ (yyval.id) = '`'; ;}
|
6055
6054
|
break;
|
6056
6055
|
|
6057
6056
|
case 198:
|
6058
|
-
#line
|
6057
|
+
#line 1243 "grammar.y"
|
6059
6058
|
{
|
6060
6059
|
value_expr((yyvsp[(3) - (3)].node));
|
6061
6060
|
(yyval.node) = node_assign((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
@@ -6063,7 +6062,7 @@ yyreduce:
|
|
6063
6062
|
break;
|
6064
6063
|
|
6065
6064
|
case 199:
|
6066
|
-
#line
|
6065
|
+
#line 1248 "grammar.y"
|
6067
6066
|
{
|
6068
6067
|
value_expr((yyvsp[(3) - (5)].node));
|
6069
6068
|
(yyvsp[(3) - (5)].node) = NEW_RESCUE((yyvsp[(3) - (5)].node), NEW_RESBODY(0, (yyvsp[(5) - (5)].node), 0), 0);
|
@@ -6072,7 +6071,7 @@ yyreduce:
|
|
6072
6071
|
break;
|
6073
6072
|
|
6074
6073
|
case 200:
|
6075
|
-
#line
|
6074
|
+
#line 1254 "grammar.y"
|
6076
6075
|
{
|
6077
6076
|
value_expr((yyvsp[(3) - (3)].node));
|
6078
6077
|
(yyval.node) = new_op_assign((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].id), (yyvsp[(3) - (3)].node));
|
@@ -6080,7 +6079,7 @@ yyreduce:
|
|
6080
6079
|
break;
|
6081
6080
|
|
6082
6081
|
case 201:
|
6083
|
-
#line
|
6082
|
+
#line 1259 "grammar.y"
|
6084
6083
|
{
|
6085
6084
|
value_expr((yyvsp[(3) - (5)].node));
|
6086
6085
|
(yyvsp[(3) - (5)].node) = NEW_RESCUE((yyvsp[(3) - (5)].node), NEW_RESBODY(0, (yyvsp[(5) - (5)].node), 0), 0);
|
@@ -6089,7 +6088,7 @@ yyreduce:
|
|
6089
6088
|
break;
|
6090
6089
|
|
6091
6090
|
case 202:
|
6092
|
-
#line
|
6091
|
+
#line 1265 "grammar.y"
|
6093
6092
|
{
|
6094
6093
|
NODE *args;
|
6095
6094
|
|
@@ -6113,7 +6112,7 @@ yyreduce:
|
|
6113
6112
|
break;
|
6114
6113
|
|
6115
6114
|
case 203:
|
6116
|
-
#line
|
6115
|
+
#line 1286 "grammar.y"
|
6117
6116
|
{
|
6118
6117
|
value_expr((yyvsp[(5) - (5)].node));
|
6119
6118
|
(yyval.node) = new_attr_op_assign((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(4) - (5)].id), (yyvsp[(5) - (5)].node));
|
@@ -6121,7 +6120,7 @@ yyreduce:
|
|
6121
6120
|
break;
|
6122
6121
|
|
6123
6122
|
case 204:
|
6124
|
-
#line
|
6123
|
+
#line 1291 "grammar.y"
|
6125
6124
|
{
|
6126
6125
|
value_expr((yyvsp[(5) - (5)].node));
|
6127
6126
|
(yyval.node) = new_attr_op_assign((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(4) - (5)].id), (yyvsp[(5) - (5)].node));
|
@@ -6129,7 +6128,7 @@ yyreduce:
|
|
6129
6128
|
break;
|
6130
6129
|
|
6131
6130
|
case 205:
|
6132
|
-
#line
|
6131
|
+
#line 1296 "grammar.y"
|
6133
6132
|
{
|
6134
6133
|
value_expr((yyvsp[(5) - (5)].node));
|
6135
6134
|
(yyval.node) = new_attr_op_assign((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(4) - (5)].id), (yyvsp[(5) - (5)].node));
|
@@ -6137,7 +6136,7 @@ yyreduce:
|
|
6137
6136
|
break;
|
6138
6137
|
|
6139
6138
|
case 206:
|
6140
|
-
#line
|
6139
|
+
#line 1301 "grammar.y"
|
6141
6140
|
{
|
6142
6141
|
(yyval.node) = NEW_COLON2((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id));
|
6143
6142
|
(yyval.node) = new_const_op_assign((yyval.node), (yyvsp[(4) - (5)].id), (yyvsp[(5) - (5)].node));
|
@@ -6145,7 +6144,7 @@ yyreduce:
|
|
6145
6144
|
break;
|
6146
6145
|
|
6147
6146
|
case 207:
|
6148
|
-
#line
|
6147
|
+
#line 1306 "grammar.y"
|
6149
6148
|
{
|
6150
6149
|
(yyval.node) = NEW_COLON3((yyvsp[(2) - (4)].id));
|
6151
6150
|
(yyval.node) = new_const_op_assign((yyval.node), (yyvsp[(3) - (4)].id), (yyvsp[(4) - (4)].node));
|
@@ -6153,7 +6152,7 @@ yyreduce:
|
|
6153
6152
|
break;
|
6154
6153
|
|
6155
6154
|
case 208:
|
6156
|
-
#line
|
6155
|
+
#line 1311 "grammar.y"
|
6157
6156
|
{
|
6158
6157
|
rb_backref_error((yyvsp[(1) - (3)].node));
|
6159
6158
|
(yyval.node) = NEW_BEGIN(0);
|
@@ -6161,7 +6160,7 @@ yyreduce:
|
|
6161
6160
|
break;
|
6162
6161
|
|
6163
6162
|
case 209:
|
6164
|
-
#line
|
6163
|
+
#line 1316 "grammar.y"
|
6165
6164
|
{
|
6166
6165
|
value_expr((yyvsp[(1) - (3)].node));
|
6167
6166
|
value_expr((yyvsp[(3) - (3)].node));
|
@@ -6170,7 +6169,7 @@ yyreduce:
|
|
6170
6169
|
break;
|
6171
6170
|
|
6172
6171
|
case 210:
|
6173
|
-
#line
|
6172
|
+
#line 1322 "grammar.y"
|
6174
6173
|
{
|
6175
6174
|
value_expr((yyvsp[(1) - (3)].node));
|
6176
6175
|
value_expr((yyvsp[(3) - (3)].node));
|
@@ -6179,147 +6178,147 @@ yyreduce:
|
|
6179
6178
|
break;
|
6180
6179
|
|
6181
6180
|
case 211:
|
6182
|
-
#line
|
6181
|
+
#line 1328 "grammar.y"
|
6183
6182
|
{
|
6184
6183
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), '+', (yyvsp[(3) - (3)].node));
|
6185
6184
|
;}
|
6186
6185
|
break;
|
6187
6186
|
|
6188
6187
|
case 212:
|
6189
|
-
#line
|
6188
|
+
#line 1332 "grammar.y"
|
6190
6189
|
{
|
6191
6190
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), '-', (yyvsp[(3) - (3)].node));
|
6192
6191
|
;}
|
6193
6192
|
break;
|
6194
6193
|
|
6195
6194
|
case 213:
|
6196
|
-
#line
|
6195
|
+
#line 1336 "grammar.y"
|
6197
6196
|
{
|
6198
6197
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), '*', (yyvsp[(3) - (3)].node));
|
6199
6198
|
;}
|
6200
6199
|
break;
|
6201
6200
|
|
6202
6201
|
case 214:
|
6203
|
-
#line
|
6202
|
+
#line 1340 "grammar.y"
|
6204
6203
|
{
|
6205
6204
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), '/', (yyvsp[(3) - (3)].node));
|
6206
6205
|
;}
|
6207
6206
|
break;
|
6208
6207
|
|
6209
6208
|
case 215:
|
6210
|
-
#line
|
6209
|
+
#line 1344 "grammar.y"
|
6211
6210
|
{
|
6212
6211
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), '%', (yyvsp[(3) - (3)].node));
|
6213
6212
|
;}
|
6214
6213
|
break;
|
6215
6214
|
|
6216
6215
|
case 216:
|
6217
|
-
#line
|
6216
|
+
#line 1348 "grammar.y"
|
6218
6217
|
{
|
6219
6218
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), tPOW, (yyvsp[(3) - (3)].node));
|
6220
6219
|
;}
|
6221
6220
|
break;
|
6222
6221
|
|
6223
6222
|
case 217:
|
6224
|
-
#line
|
6223
|
+
#line 1352 "grammar.y"
|
6225
6224
|
{
|
6226
6225
|
(yyval.node) = NEW_CALL(call_bin_op((yyvsp[(2) - (4)].node), tPOW, (yyvsp[(4) - (4)].node)), tUMINUS, 0);
|
6227
6226
|
;}
|
6228
6227
|
break;
|
6229
6228
|
|
6230
6229
|
case 218:
|
6231
|
-
#line
|
6230
|
+
#line 1356 "grammar.y"
|
6232
6231
|
{
|
6233
6232
|
(yyval.node) = call_uni_op((yyvsp[(2) - (2)].node), tUPLUS);
|
6234
6233
|
;}
|
6235
6234
|
break;
|
6236
6235
|
|
6237
6236
|
case 219:
|
6238
|
-
#line
|
6237
|
+
#line 1360 "grammar.y"
|
6239
6238
|
{
|
6240
6239
|
(yyval.node) = call_uni_op((yyvsp[(2) - (2)].node), tUMINUS);
|
6241
6240
|
;}
|
6242
6241
|
break;
|
6243
6242
|
|
6244
6243
|
case 220:
|
6245
|
-
#line
|
6244
|
+
#line 1364 "grammar.y"
|
6246
6245
|
{
|
6247
6246
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), '|', (yyvsp[(3) - (3)].node));
|
6248
6247
|
;}
|
6249
6248
|
break;
|
6250
6249
|
|
6251
6250
|
case 221:
|
6252
|
-
#line
|
6251
|
+
#line 1368 "grammar.y"
|
6253
6252
|
{
|
6254
6253
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), '^', (yyvsp[(3) - (3)].node));
|
6255
6254
|
;}
|
6256
6255
|
break;
|
6257
6256
|
|
6258
6257
|
case 222:
|
6259
|
-
#line
|
6258
|
+
#line 1372 "grammar.y"
|
6260
6259
|
{
|
6261
6260
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), '&', (yyvsp[(3) - (3)].node));
|
6262
6261
|
;}
|
6263
6262
|
break;
|
6264
6263
|
|
6265
6264
|
case 223:
|
6266
|
-
#line
|
6265
|
+
#line 1376 "grammar.y"
|
6267
6266
|
{
|
6268
6267
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), tCMP, (yyvsp[(3) - (3)].node));
|
6269
6268
|
;}
|
6270
6269
|
break;
|
6271
6270
|
|
6272
6271
|
case 224:
|
6273
|
-
#line
|
6272
|
+
#line 1380 "grammar.y"
|
6274
6273
|
{
|
6275
6274
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), '>', (yyvsp[(3) - (3)].node));
|
6276
6275
|
;}
|
6277
6276
|
break;
|
6278
6277
|
|
6279
6278
|
case 225:
|
6280
|
-
#line
|
6279
|
+
#line 1384 "grammar.y"
|
6281
6280
|
{
|
6282
6281
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), tGEQ, (yyvsp[(3) - (3)].node));
|
6283
6282
|
;}
|
6284
6283
|
break;
|
6285
6284
|
|
6286
6285
|
case 226:
|
6287
|
-
#line
|
6286
|
+
#line 1388 "grammar.y"
|
6288
6287
|
{
|
6289
6288
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), '<', (yyvsp[(3) - (3)].node));
|
6290
6289
|
;}
|
6291
6290
|
break;
|
6292
6291
|
|
6293
6292
|
case 227:
|
6294
|
-
#line
|
6293
|
+
#line 1392 "grammar.y"
|
6295
6294
|
{
|
6296
6295
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), tLEQ, (yyvsp[(3) - (3)].node));
|
6297
6296
|
;}
|
6298
6297
|
break;
|
6299
6298
|
|
6300
6299
|
case 228:
|
6301
|
-
#line
|
6300
|
+
#line 1396 "grammar.y"
|
6302
6301
|
{
|
6303
6302
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), tEQ, (yyvsp[(3) - (3)].node));
|
6304
6303
|
;}
|
6305
6304
|
break;
|
6306
6305
|
|
6307
6306
|
case 229:
|
6308
|
-
#line
|
6307
|
+
#line 1400 "grammar.y"
|
6309
6308
|
{
|
6310
6309
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), tEQQ, (yyvsp[(3) - (3)].node));
|
6311
6310
|
;}
|
6312
6311
|
break;
|
6313
6312
|
|
6314
6313
|
case 230:
|
6315
|
-
#line
|
6314
|
+
#line 1404 "grammar.y"
|
6316
6315
|
{
|
6317
6316
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), tNEQ, (yyvsp[(3) - (3)].node));
|
6318
6317
|
;}
|
6319
6318
|
break;
|
6320
6319
|
|
6321
6320
|
case 231:
|
6322
|
-
#line
|
6321
|
+
#line 1408 "grammar.y"
|
6323
6322
|
{
|
6324
6323
|
/* TODO */
|
6325
6324
|
(yyval.node) = match_op((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
@@ -6332,61 +6331,61 @@ yyreduce:
|
|
6332
6331
|
break;
|
6333
6332
|
|
6334
6333
|
case 232:
|
6335
|
-
#line
|
6334
|
+
#line 1418 "grammar.y"
|
6336
6335
|
{
|
6337
6336
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), tNMATCH, (yyvsp[(3) - (3)].node));
|
6338
6337
|
;}
|
6339
6338
|
break;
|
6340
6339
|
|
6341
6340
|
case 233:
|
6342
|
-
#line
|
6341
|
+
#line 1422 "grammar.y"
|
6343
6342
|
{
|
6344
6343
|
(yyval.node) = call_uni_op(cond((yyvsp[(2) - (2)].node)), '!');
|
6345
6344
|
;}
|
6346
6345
|
break;
|
6347
6346
|
|
6348
6347
|
case 234:
|
6349
|
-
#line
|
6348
|
+
#line 1426 "grammar.y"
|
6350
6349
|
{
|
6351
6350
|
(yyval.node) = call_uni_op((yyvsp[(2) - (2)].node), '~');
|
6352
6351
|
;}
|
6353
6352
|
break;
|
6354
6353
|
|
6355
6354
|
case 235:
|
6356
|
-
#line
|
6355
|
+
#line 1430 "grammar.y"
|
6357
6356
|
{
|
6358
6357
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), tLSHFT, (yyvsp[(3) - (3)].node));
|
6359
6358
|
;}
|
6360
6359
|
break;
|
6361
6360
|
|
6362
6361
|
case 236:
|
6363
|
-
#line
|
6362
|
+
#line 1434 "grammar.y"
|
6364
6363
|
{
|
6365
6364
|
(yyval.node) = call_bin_op((yyvsp[(1) - (3)].node), tRSHFT, (yyvsp[(3) - (3)].node));
|
6366
6365
|
;}
|
6367
6366
|
break;
|
6368
6367
|
|
6369
6368
|
case 237:
|
6370
|
-
#line
|
6369
|
+
#line 1438 "grammar.y"
|
6371
6370
|
{
|
6372
6371
|
(yyval.node) = logop(NODE_AND, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
6373
6372
|
;}
|
6374
6373
|
break;
|
6375
6374
|
|
6376
6375
|
case 238:
|
6377
|
-
#line
|
6376
|
+
#line 1442 "grammar.y"
|
6378
6377
|
{
|
6379
6378
|
(yyval.node) = logop(NODE_OR, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
6380
6379
|
;}
|
6381
6380
|
break;
|
6382
6381
|
|
6383
6382
|
case 239:
|
6384
|
-
#line
|
6383
|
+
#line 1445 "grammar.y"
|
6385
6384
|
{in_defined = 1;;}
|
6386
6385
|
break;
|
6387
6386
|
|
6388
6387
|
case 240:
|
6389
|
-
#line
|
6388
|
+
#line 1446 "grammar.y"
|
6390
6389
|
{
|
6391
6390
|
in_defined = 0;
|
6392
6391
|
(yyval.node) = NEW_DEFINED((yyvsp[(4) - (4)].node));
|
@@ -6394,7 +6393,7 @@ yyreduce:
|
|
6394
6393
|
break;
|
6395
6394
|
|
6396
6395
|
case 241:
|
6397
|
-
#line
|
6396
|
+
#line 1451 "grammar.y"
|
6398
6397
|
{
|
6399
6398
|
value_expr((yyvsp[(1) - (6)].node));
|
6400
6399
|
(yyval.node) = NEW_IF(cond((yyvsp[(1) - (6)].node)), (yyvsp[(3) - (6)].node), (yyvsp[(6) - (6)].node));
|
@@ -6403,14 +6402,14 @@ yyreduce:
|
|
6403
6402
|
break;
|
6404
6403
|
|
6405
6404
|
case 242:
|
6406
|
-
#line
|
6405
|
+
#line 1457 "grammar.y"
|
6407
6406
|
{
|
6408
6407
|
(yyval.node) = (yyvsp[(1) - (1)].node);
|
6409
6408
|
;}
|
6410
6409
|
break;
|
6411
6410
|
|
6412
6411
|
case 243:
|
6413
|
-
#line
|
6412
|
+
#line 1463 "grammar.y"
|
6414
6413
|
{
|
6415
6414
|
value_expr((yyvsp[(1) - (1)].node));
|
6416
6415
|
(yyval.node) = (yyvsp[(1) - (1)].node);
|
@@ -6419,56 +6418,56 @@ yyreduce:
|
|
6419
6418
|
break;
|
6420
6419
|
|
6421
6420
|
case 245:
|
6422
|
-
#line
|
6421
|
+
#line 1472 "grammar.y"
|
6423
6422
|
{
|
6424
6423
|
(yyval.node) = (yyvsp[(1) - (2)].node);
|
6425
6424
|
;}
|
6426
6425
|
break;
|
6427
6426
|
|
6428
6427
|
case 246:
|
6429
|
-
#line
|
6428
|
+
#line 1476 "grammar.y"
|
6430
6429
|
{
|
6431
6430
|
(yyval.node) = arg_append((yyvsp[(1) - (4)].node), NEW_HASH((yyvsp[(3) - (4)].node)));
|
6432
6431
|
;}
|
6433
6432
|
break;
|
6434
6433
|
|
6435
6434
|
case 247:
|
6436
|
-
#line
|
6435
|
+
#line 1480 "grammar.y"
|
6437
6436
|
{
|
6438
6437
|
(yyval.node) = NEW_LIST(NEW_HASH((yyvsp[(1) - (2)].node)));
|
6439
6438
|
;}
|
6440
6439
|
break;
|
6441
6440
|
|
6442
6441
|
case 248:
|
6443
|
-
#line
|
6442
|
+
#line 1486 "grammar.y"
|
6444
6443
|
{
|
6445
6444
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
6446
6445
|
;}
|
6447
6446
|
break;
|
6448
6447
|
|
6449
6448
|
case 253:
|
6450
|
-
#line
|
6449
|
+
#line 1498 "grammar.y"
|
6451
6450
|
{
|
6452
6451
|
(yyval.node) = (yyvsp[(1) - (2)].node);
|
6453
6452
|
;}
|
6454
6453
|
break;
|
6455
6454
|
|
6456
6455
|
case 254:
|
6457
|
-
#line
|
6456
|
+
#line 1502 "grammar.y"
|
6458
6457
|
{
|
6459
6458
|
(yyval.node) = arg_append((yyvsp[(1) - (4)].node), NEW_HASH((yyvsp[(3) - (4)].node)));
|
6460
6459
|
;}
|
6461
6460
|
break;
|
6462
6461
|
|
6463
6462
|
case 255:
|
6464
|
-
#line
|
6463
|
+
#line 1506 "grammar.y"
|
6465
6464
|
{
|
6466
6465
|
(yyval.node) = NEW_LIST(NEW_HASH((yyvsp[(1) - (2)].node)));
|
6467
6466
|
;}
|
6468
6467
|
break;
|
6469
6468
|
|
6470
6469
|
case 256:
|
6471
|
-
#line
|
6470
|
+
#line 1512 "grammar.y"
|
6472
6471
|
{
|
6473
6472
|
value_expr((yyvsp[(1) - (1)].node));
|
6474
6473
|
(yyval.node) = NEW_LIST((yyvsp[(1) - (1)].node));
|
@@ -6476,14 +6475,14 @@ yyreduce:
|
|
6476
6475
|
break;
|
6477
6476
|
|
6478
6477
|
case 257:
|
6479
|
-
#line
|
6478
|
+
#line 1517 "grammar.y"
|
6480
6479
|
{
|
6481
6480
|
(yyval.node) = arg_blk_pass((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
|
6482
6481
|
;}
|
6483
6482
|
break;
|
6484
6483
|
|
6485
6484
|
case 258:
|
6486
|
-
#line
|
6485
|
+
#line 1521 "grammar.y"
|
6487
6486
|
{
|
6488
6487
|
(yyval.node) = NEW_LIST(NEW_HASH((yyvsp[(1) - (2)].node)));
|
6489
6488
|
(yyval.node) = arg_blk_pass((yyval.node), (yyvsp[(2) - (2)].node));
|
@@ -6491,7 +6490,7 @@ yyreduce:
|
|
6491
6490
|
break;
|
6492
6491
|
|
6493
6492
|
case 259:
|
6494
|
-
#line
|
6493
|
+
#line 1526 "grammar.y"
|
6495
6494
|
{
|
6496
6495
|
(yyval.node) = arg_append((yyvsp[(1) - (4)].node), NEW_HASH((yyvsp[(3) - (4)].node)));
|
6497
6496
|
(yyval.node) = arg_blk_pass((yyval.node), (yyvsp[(4) - (4)].node));
|
@@ -6499,7 +6498,7 @@ yyreduce:
|
|
6499
6498
|
break;
|
6500
6499
|
|
6501
6500
|
case 261:
|
6502
|
-
#line
|
6501
|
+
#line 1533 "grammar.y"
|
6503
6502
|
{
|
6504
6503
|
(yyval.val) = cmdarg_stack;
|
6505
6504
|
CMDARG_PUSH(1);
|
@@ -6507,7 +6506,7 @@ yyreduce:
|
|
6507
6506
|
break;
|
6508
6507
|
|
6509
6508
|
case 262:
|
6510
|
-
#line
|
6509
|
+
#line 1538 "grammar.y"
|
6511
6510
|
{
|
6512
6511
|
/* CMDARG_POP() */
|
6513
6512
|
cmdarg_stack = (yyvsp[(1) - (2)].val);
|
@@ -6516,42 +6515,42 @@ yyreduce:
|
|
6516
6515
|
break;
|
6517
6516
|
|
6518
6517
|
case 263:
|
6519
|
-
#line
|
6518
|
+
#line 1546 "grammar.y"
|
6520
6519
|
{
|
6521
6520
|
(yyval.node) = NEW_BLOCK_PASS((yyvsp[(2) - (2)].node));
|
6522
6521
|
;}
|
6523
6522
|
break;
|
6524
6523
|
|
6525
6524
|
case 264:
|
6526
|
-
#line
|
6525
|
+
#line 1552 "grammar.y"
|
6527
6526
|
{
|
6528
6527
|
(yyval.node) = (yyvsp[(2) - (2)].node);
|
6529
6528
|
;}
|
6530
6529
|
break;
|
6531
6530
|
|
6532
6531
|
case 265:
|
6533
|
-
#line
|
6532
|
+
#line 1556 "grammar.y"
|
6534
6533
|
{
|
6535
6534
|
(yyval.node) = 0;
|
6536
6535
|
;}
|
6537
6536
|
break;
|
6538
6537
|
|
6539
6538
|
case 266:
|
6540
|
-
#line
|
6539
|
+
#line 1562 "grammar.y"
|
6541
6540
|
{
|
6542
6541
|
(yyval.node) = NEW_LIST((yyvsp[(1) - (1)].node));
|
6543
6542
|
;}
|
6544
6543
|
break;
|
6545
6544
|
|
6546
6545
|
case 267:
|
6547
|
-
#line
|
6546
|
+
#line 1566 "grammar.y"
|
6548
6547
|
{
|
6549
6548
|
(yyval.node) = NEW_SPLAT((yyvsp[(2) - (2)].node));
|
6550
6549
|
;}
|
6551
6550
|
break;
|
6552
6551
|
|
6553
6552
|
case 268:
|
6554
|
-
#line
|
6553
|
+
#line 1570 "grammar.y"
|
6555
6554
|
{
|
6556
6555
|
NODE *n1;
|
6557
6556
|
if((n1 = splat_array((yyvsp[(1) - (3)].node))) != 0) {
|
@@ -6563,7 +6562,7 @@ yyreduce:
|
|
6563
6562
|
break;
|
6564
6563
|
|
6565
6564
|
case 269:
|
6566
|
-
#line
|
6565
|
+
#line 1579 "grammar.y"
|
6567
6566
|
{
|
6568
6567
|
NODE *n1;
|
6569
6568
|
if((nd_type((yyvsp[(4) - (4)].node)) == NODE_ARRAY) && (n1 = splat_array((yyvsp[(1) - (4)].node))) != 0) {
|
@@ -6575,7 +6574,7 @@ yyreduce:
|
|
6575
6574
|
break;
|
6576
6575
|
|
6577
6576
|
case 272:
|
6578
|
-
#line
|
6577
|
+
#line 1594 "grammar.y"
|
6579
6578
|
{
|
6580
6579
|
NODE *n1;
|
6581
6580
|
if((n1 = splat_array((yyvsp[(1) - (3)].node))) != 0) {
|
@@ -6587,7 +6586,7 @@ yyreduce:
|
|
6587
6586
|
break;
|
6588
6587
|
|
6589
6588
|
case 273:
|
6590
|
-
#line
|
6589
|
+
#line 1603 "grammar.y"
|
6591
6590
|
{
|
6592
6591
|
NODE *n1;
|
6593
6592
|
if(nd_type((yyvsp[(4) - (4)].node)) == NODE_ARRAY && (n1 = splat_array((yyvsp[(1) - (4)].node))) != 0) {
|
@@ -6599,21 +6598,21 @@ yyreduce:
|
|
6599
6598
|
break;
|
6600
6599
|
|
6601
6600
|
case 274:
|
6602
|
-
#line
|
6601
|
+
#line 1612 "grammar.y"
|
6603
6602
|
{
|
6604
6603
|
(yyval.node) = NEW_SPLAT((yyvsp[(2) - (2)].node));
|
6605
6604
|
;}
|
6606
6605
|
break;
|
6607
6606
|
|
6608
6607
|
case 285:
|
6609
|
-
#line
|
6608
|
+
#line 1628 "grammar.y"
|
6610
6609
|
{
|
6611
6610
|
(yyval.node) = NEW_FCALL((yyvsp[(1) - (1)].id), 0);
|
6612
6611
|
;}
|
6613
6612
|
break;
|
6614
6613
|
|
6615
6614
|
case 286:
|
6616
|
-
#line
|
6615
|
+
#line 1632 "grammar.y"
|
6617
6616
|
{
|
6618
6617
|
(yyvsp[(1) - (1)].val) = cmdarg_stack;
|
6619
6618
|
cmdarg_stack = 0;
|
@@ -6622,7 +6621,7 @@ yyreduce:
|
|
6622
6621
|
break;
|
6623
6622
|
|
6624
6623
|
case 287:
|
6625
|
-
#line
|
6624
|
+
#line 1639 "grammar.y"
|
6626
6625
|
{
|
6627
6626
|
cmdarg_stack = (yyvsp[(1) - (4)].val);
|
6628
6627
|
if((yyvsp[(3) - (4)].node) == NULL) {
|
@@ -6638,52 +6637,52 @@ yyreduce:
|
|
6638
6637
|
break;
|
6639
6638
|
|
6640
6639
|
case 288:
|
6641
|
-
#line
|
6640
|
+
#line 1651 "grammar.y"
|
6642
6641
|
{lex_state = EXPR_ENDARG;;}
|
6643
6642
|
break;
|
6644
6643
|
|
6645
6644
|
case 289:
|
6646
|
-
#line
|
6645
|
+
#line 1652 "grammar.y"
|
6647
6646
|
{
|
6648
6647
|
(yyval.node) = 0;
|
6649
6648
|
;}
|
6650
6649
|
break;
|
6651
6650
|
|
6652
6651
|
case 290:
|
6653
|
-
#line
|
6652
|
+
#line 1655 "grammar.y"
|
6654
6653
|
{lex_state = EXPR_ENDARG;;}
|
6655
6654
|
break;
|
6656
6655
|
|
6657
6656
|
case 291:
|
6658
|
-
#line
|
6657
|
+
#line 1656 "grammar.y"
|
6659
6658
|
{
|
6660
6659
|
(yyval.node) = (yyvsp[(2) - (4)].node);
|
6661
6660
|
;}
|
6662
6661
|
break;
|
6663
6662
|
|
6664
6663
|
case 292:
|
6665
|
-
#line
|
6664
|
+
#line 1660 "grammar.y"
|
6666
6665
|
{
|
6667
6666
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
6668
6667
|
;}
|
6669
6668
|
break;
|
6670
6669
|
|
6671
6670
|
case 293:
|
6672
|
-
#line
|
6671
|
+
#line 1664 "grammar.y"
|
6673
6672
|
{
|
6674
6673
|
(yyval.node) = NEW_COLON2((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].id));
|
6675
6674
|
;}
|
6676
6675
|
break;
|
6677
6676
|
|
6678
6677
|
case 294:
|
6679
|
-
#line
|
6678
|
+
#line 1668 "grammar.y"
|
6680
6679
|
{
|
6681
6680
|
(yyval.node) = NEW_COLON3((yyvsp[(2) - (2)].id));
|
6682
6681
|
;}
|
6683
6682
|
break;
|
6684
6683
|
|
6685
6684
|
case 295:
|
6686
|
-
#line
|
6685
|
+
#line 1672 "grammar.y"
|
6687
6686
|
{
|
6688
6687
|
if((yyvsp[(2) - (3)].node) == 0) {
|
6689
6688
|
(yyval.node) = NEW_ZARRAY(); /* zero length array*/
|
@@ -6694,47 +6693,47 @@ yyreduce:
|
|
6694
6693
|
break;
|
6695
6694
|
|
6696
6695
|
case 296:
|
6697
|
-
#line
|
6696
|
+
#line 1680 "grammar.y"
|
6698
6697
|
{
|
6699
6698
|
(yyval.node) = NEW_HASH((yyvsp[(2) - (3)].node));
|
6700
6699
|
;}
|
6701
6700
|
break;
|
6702
6701
|
|
6703
6702
|
case 297:
|
6704
|
-
#line
|
6703
|
+
#line 1684 "grammar.y"
|
6705
6704
|
{
|
6706
6705
|
(yyval.node) = NEW_RETURN(0);
|
6707
6706
|
;}
|
6708
6707
|
break;
|
6709
6708
|
|
6710
6709
|
case 298:
|
6711
|
-
#line
|
6710
|
+
#line 1688 "grammar.y"
|
6712
6711
|
{
|
6713
6712
|
(yyval.node) = new_yield((yyvsp[(3) - (4)].node));
|
6714
6713
|
;}
|
6715
6714
|
break;
|
6716
6715
|
|
6717
6716
|
case 299:
|
6718
|
-
#line
|
6717
|
+
#line 1692 "grammar.y"
|
6719
6718
|
{
|
6720
6719
|
(yyval.node) = NEW_YIELD(0, Qfalse);
|
6721
6720
|
;}
|
6722
6721
|
break;
|
6723
6722
|
|
6724
6723
|
case 300:
|
6725
|
-
#line
|
6724
|
+
#line 1696 "grammar.y"
|
6726
6725
|
{
|
6727
6726
|
(yyval.node) = NEW_YIELD(0, Qfalse);
|
6728
6727
|
;}
|
6729
6728
|
break;
|
6730
6729
|
|
6731
6730
|
case 301:
|
6732
|
-
#line
|
6731
|
+
#line 1699 "grammar.y"
|
6733
6732
|
{in_defined = 1;;}
|
6734
6733
|
break;
|
6735
6734
|
|
6736
6735
|
case 302:
|
6737
|
-
#line
|
6736
|
+
#line 1700 "grammar.y"
|
6738
6737
|
{
|
6739
6738
|
in_defined = 0;
|
6740
6739
|
(yyval.node) = NEW_DEFINED((yyvsp[(5) - (6)].node));
|
@@ -6742,21 +6741,21 @@ yyreduce:
|
|
6742
6741
|
break;
|
6743
6742
|
|
6744
6743
|
case 303:
|
6745
|
-
#line
|
6744
|
+
#line 1705 "grammar.y"
|
6746
6745
|
{
|
6747
6746
|
(yyval.node) = call_uni_op(cond((yyvsp[(3) - (4)].node)), '!');
|
6748
6747
|
;}
|
6749
6748
|
break;
|
6750
6749
|
|
6751
6750
|
case 304:
|
6752
|
-
#line
|
6751
|
+
#line 1709 "grammar.y"
|
6753
6752
|
{
|
6754
6753
|
(yyval.node) = call_uni_op(cond(NEW_NIL()), '!');
|
6755
6754
|
;}
|
6756
6755
|
break;
|
6757
6756
|
|
6758
6757
|
case 305:
|
6759
|
-
#line
|
6758
|
+
#line 1713 "grammar.y"
|
6760
6759
|
{
|
6761
6760
|
(yyvsp[(2) - (2)].node)->nd_iter = (yyvsp[(1) - (2)].node);
|
6762
6761
|
(yyval.node) = (yyvsp[(2) - (2)].node);
|
@@ -6765,7 +6764,7 @@ yyreduce:
|
|
6765
6764
|
break;
|
6766
6765
|
|
6767
6766
|
case 307:
|
6768
|
-
#line
|
6767
|
+
#line 1720 "grammar.y"
|
6769
6768
|
{
|
6770
6769
|
block_dup_check((yyvsp[(1) - (2)].node)->nd_args, (yyvsp[(2) - (2)].node));
|
6771
6770
|
(yyvsp[(2) - (2)].node)->nd_iter = (yyvsp[(1) - (2)].node);
|
@@ -6775,14 +6774,14 @@ yyreduce:
|
|
6775
6774
|
break;
|
6776
6775
|
|
6777
6776
|
case 308:
|
6778
|
-
#line
|
6777
|
+
#line 1727 "grammar.y"
|
6779
6778
|
{
|
6780
6779
|
(yyval.node) = (yyvsp[(2) - (2)].node);
|
6781
6780
|
;}
|
6782
6781
|
break;
|
6783
6782
|
|
6784
6783
|
case 309:
|
6785
|
-
#line
|
6784
|
+
#line 1734 "grammar.y"
|
6786
6785
|
{
|
6787
6786
|
(yyval.node) = NEW_IF(cond((yyvsp[(2) - (6)].node)), (yyvsp[(4) - (6)].node), (yyvsp[(5) - (6)].node));
|
6788
6787
|
fixpos((yyval.node), (yyvsp[(2) - (6)].node));
|
@@ -6790,7 +6789,7 @@ yyreduce:
|
|
6790
6789
|
break;
|
6791
6790
|
|
6792
6791
|
case 310:
|
6793
|
-
#line
|
6792
|
+
#line 1742 "grammar.y"
|
6794
6793
|
{
|
6795
6794
|
(yyval.node) = NEW_UNLESS(cond((yyvsp[(2) - (6)].node)), (yyvsp[(4) - (6)].node), (yyvsp[(5) - (6)].node));
|
6796
6795
|
fixpos((yyval.node), (yyvsp[(2) - (6)].node));
|
@@ -6798,17 +6797,17 @@ yyreduce:
|
|
6798
6797
|
break;
|
6799
6798
|
|
6800
6799
|
case 311:
|
6801
|
-
#line
|
6800
|
+
#line 1746 "grammar.y"
|
6802
6801
|
{COND_PUSH(1);;}
|
6803
6802
|
break;
|
6804
6803
|
|
6805
6804
|
case 312:
|
6806
|
-
#line
|
6805
|
+
#line 1746 "grammar.y"
|
6807
6806
|
{COND_POP();;}
|
6808
6807
|
break;
|
6809
6808
|
|
6810
6809
|
case 313:
|
6811
|
-
#line
|
6810
|
+
#line 1749 "grammar.y"
|
6812
6811
|
{
|
6813
6812
|
(yyval.node) = NEW_WHILE(cond((yyvsp[(3) - (7)].node)), (yyvsp[(6) - (7)].node), 1);
|
6814
6813
|
fixpos((yyval.node), (yyvsp[(3) - (7)].node));
|
@@ -6816,17 +6815,17 @@ yyreduce:
|
|
6816
6815
|
break;
|
6817
6816
|
|
6818
6817
|
case 314:
|
6819
|
-
#line
|
6818
|
+
#line 1753 "grammar.y"
|
6820
6819
|
{COND_PUSH(1);;}
|
6821
6820
|
break;
|
6822
6821
|
|
6823
6822
|
case 315:
|
6824
|
-
#line
|
6823
|
+
#line 1753 "grammar.y"
|
6825
6824
|
{COND_POP();;}
|
6826
6825
|
break;
|
6827
6826
|
|
6828
6827
|
case 316:
|
6829
|
-
#line
|
6828
|
+
#line 1756 "grammar.y"
|
6830
6829
|
{
|
6831
6830
|
(yyval.node) = NEW_UNTIL(cond((yyvsp[(3) - (7)].node)), (yyvsp[(6) - (7)].node), 1);
|
6832
6831
|
fixpos((yyval.node), (yyvsp[(3) - (7)].node));
|
@@ -6834,7 +6833,7 @@ yyreduce:
|
|
6834
6833
|
break;
|
6835
6834
|
|
6836
6835
|
case 317:
|
6837
|
-
#line
|
6836
|
+
#line 1763 "grammar.y"
|
6838
6837
|
{
|
6839
6838
|
(yyval.node) = NEW_CASE((yyvsp[(2) - (5)].node), (yyvsp[(4) - (5)].node));
|
6840
6839
|
fixpos((yyval.node), (yyvsp[(2) - (5)].node));
|
@@ -6842,24 +6841,24 @@ yyreduce:
|
|
6842
6841
|
break;
|
6843
6842
|
|
6844
6843
|
case 318:
|
6845
|
-
#line
|
6844
|
+
#line 1768 "grammar.y"
|
6846
6845
|
{
|
6847
6846
|
(yyval.node) = NEW_CASE(0, (yyvsp[(3) - (4)].node));
|
6848
6847
|
;}
|
6849
6848
|
break;
|
6850
6849
|
|
6851
6850
|
case 319:
|
6852
|
-
#line
|
6851
|
+
#line 1772 "grammar.y"
|
6853
6852
|
{COND_PUSH(1);;}
|
6854
6853
|
break;
|
6855
6854
|
|
6856
6855
|
case 320:
|
6857
|
-
#line
|
6856
|
+
#line 1774 "grammar.y"
|
6858
6857
|
{COND_POP();;}
|
6859
6858
|
break;
|
6860
6859
|
|
6861
6860
|
case 321:
|
6862
|
-
#line
|
6861
|
+
#line 1777 "grammar.y"
|
6863
6862
|
{
|
6864
6863
|
/*
|
6865
6864
|
* for a, b, c in e
|
@@ -6876,7 +6875,7 @@ yyreduce:
|
|
6876
6875
|
break;
|
6877
6876
|
|
6878
6877
|
case 322:
|
6879
|
-
#line
|
6878
|
+
#line 1791 "grammar.y"
|
6880
6879
|
{
|
6881
6880
|
if(in_def || in_single)
|
6882
6881
|
yy_error("class definition in method body");
|
@@ -6887,7 +6886,7 @@ yyreduce:
|
|
6887
6886
|
break;
|
6888
6887
|
|
6889
6888
|
case 323:
|
6890
|
-
#line
|
6889
|
+
#line 1800 "grammar.y"
|
6891
6890
|
{
|
6892
6891
|
(yyval.node) = NEW_CLASS((yyvsp[(2) - (6)].node), (yyvsp[(5) - (6)].node), (yyvsp[(3) - (6)].node));
|
6893
6892
|
nd_set_line((yyval.node), (yyvsp[(4) - (6)].num));
|
@@ -6897,7 +6896,7 @@ yyreduce:
|
|
6897
6896
|
break;
|
6898
6897
|
|
6899
6898
|
case 324:
|
6900
|
-
#line
|
6899
|
+
#line 1807 "grammar.y"
|
6901
6900
|
{
|
6902
6901
|
(yyval.num) = in_def;
|
6903
6902
|
in_def = 0;
|
@@ -6905,7 +6904,7 @@ yyreduce:
|
|
6905
6904
|
break;
|
6906
6905
|
|
6907
6906
|
case 325:
|
6908
|
-
#line
|
6907
|
+
#line 1812 "grammar.y"
|
6909
6908
|
{
|
6910
6909
|
(yyval.num) = in_single;
|
6911
6910
|
in_single = 0;
|
@@ -6915,7 +6914,7 @@ yyreduce:
|
|
6915
6914
|
break;
|
6916
6915
|
|
6917
6916
|
case 326:
|
6918
|
-
#line
|
6917
|
+
#line 1820 "grammar.y"
|
6919
6918
|
{
|
6920
6919
|
(yyval.node) = NEW_SCLASS((yyvsp[(3) - (8)].node), (yyvsp[(7) - (8)].node));
|
6921
6920
|
fixpos((yyval.node), (yyvsp[(3) - (8)].node));
|
@@ -6927,7 +6926,7 @@ yyreduce:
|
|
6927
6926
|
break;
|
6928
6927
|
|
6929
6928
|
case 327:
|
6930
|
-
#line
|
6929
|
+
#line 1829 "grammar.y"
|
6931
6930
|
{
|
6932
6931
|
if(in_def || in_single)
|
6933
6932
|
yy_error("module definition in method body");
|
@@ -6938,7 +6937,7 @@ yyreduce:
|
|
6938
6937
|
break;
|
6939
6938
|
|
6940
6939
|
case 328:
|
6941
|
-
#line
|
6940
|
+
#line 1838 "grammar.y"
|
6942
6941
|
{
|
6943
6942
|
(yyval.node) = NEW_MODULE((yyvsp[(2) - (5)].node), (yyvsp[(4) - (5)].node));
|
6944
6943
|
nd_set_line((yyval.node), (yyvsp[(3) - (5)].num));
|
@@ -6948,7 +6947,7 @@ yyreduce:
|
|
6948
6947
|
break;
|
6949
6948
|
|
6950
6949
|
case 329:
|
6951
|
-
#line
|
6950
|
+
#line 1845 "grammar.y"
|
6952
6951
|
{
|
6953
6952
|
(yyval.id) = cur_mid;
|
6954
6953
|
cur_mid = (yyvsp[(2) - (2)].id);
|
@@ -6958,7 +6957,7 @@ yyreduce:
|
|
6958
6957
|
break;
|
6959
6958
|
|
6960
6959
|
case 330:
|
6961
|
-
#line
|
6960
|
+
#line 1854 "grammar.y"
|
6962
6961
|
{
|
6963
6962
|
NODE* body = remove_begin((yyvsp[(5) - (6)].node));
|
6964
6963
|
(yyval.node) = NEW_DEFN((yyvsp[(2) - (6)].id), (yyvsp[(4) - (6)].node), body, NOEX_PRIVATE);
|
@@ -6970,12 +6969,12 @@ yyreduce:
|
|
6970
6969
|
break;
|
6971
6970
|
|
6972
6971
|
case 331:
|
6973
|
-
#line
|
6972
|
+
#line 1862 "grammar.y"
|
6974
6973
|
{lex_state = EXPR_FNAME;;}
|
6975
6974
|
break;
|
6976
6975
|
|
6977
6976
|
case 332:
|
6978
|
-
#line
|
6977
|
+
#line 1863 "grammar.y"
|
6979
6978
|
{
|
6980
6979
|
in_single++;
|
6981
6980
|
lex_state = EXPR_ENDFN; /* force for args */
|
@@ -6984,7 +6983,7 @@ yyreduce:
|
|
6984
6983
|
break;
|
6985
6984
|
|
6986
6985
|
case 333:
|
6987
|
-
#line
|
6986
|
+
#line 1871 "grammar.y"
|
6988
6987
|
{
|
6989
6988
|
NODE* body = remove_begin((yyvsp[(8) - (9)].node));
|
6990
6989
|
(yyval.node) = NEW_DEFS((yyvsp[(2) - (9)].node), (yyvsp[(5) - (9)].id), (yyvsp[(7) - (9)].node), body);
|
@@ -6995,35 +6994,35 @@ yyreduce:
|
|
6995
6994
|
break;
|
6996
6995
|
|
6997
6996
|
case 334:
|
6998
|
-
#line
|
6997
|
+
#line 1879 "grammar.y"
|
6999
6998
|
{
|
7000
6999
|
(yyval.node) = NEW_BREAK(0);
|
7001
7000
|
;}
|
7002
7001
|
break;
|
7003
7002
|
|
7004
7003
|
case 335:
|
7005
|
-
#line
|
7004
|
+
#line 1883 "grammar.y"
|
7006
7005
|
{
|
7007
7006
|
(yyval.node) = NEW_NEXT(0);
|
7008
7007
|
;}
|
7009
7008
|
break;
|
7010
7009
|
|
7011
7010
|
case 336:
|
7012
|
-
#line
|
7011
|
+
#line 1887 "grammar.y"
|
7013
7012
|
{
|
7014
7013
|
(yyval.node) = NEW_REDO();
|
7015
7014
|
;}
|
7016
7015
|
break;
|
7017
7016
|
|
7018
7017
|
case 337:
|
7019
|
-
#line
|
7018
|
+
#line 1891 "grammar.y"
|
7020
7019
|
{
|
7021
7020
|
(yyval.node) = NEW_RETRY();
|
7022
7021
|
;}
|
7023
7022
|
break;
|
7024
7023
|
|
7025
7024
|
case 338:
|
7026
|
-
#line
|
7025
|
+
#line 1897 "grammar.y"
|
7027
7026
|
{
|
7028
7027
|
value_expr((yyvsp[(1) - (1)].node));
|
7029
7028
|
(yyval.node) = (yyvsp[(1) - (1)].node);
|
@@ -7032,70 +7031,70 @@ yyreduce:
|
|
7032
7031
|
break;
|
7033
7032
|
|
7034
7033
|
case 339:
|
7035
|
-
#line
|
7034
|
+
#line 1905 "grammar.y"
|
7036
7035
|
{
|
7037
7036
|
token_info_push("begin");
|
7038
7037
|
;}
|
7039
7038
|
break;
|
7040
7039
|
|
7041
7040
|
case 340:
|
7042
|
-
#line
|
7041
|
+
#line 1911 "grammar.y"
|
7043
7042
|
{
|
7044
7043
|
token_info_push("if");
|
7045
7044
|
;}
|
7046
7045
|
break;
|
7047
7046
|
|
7048
7047
|
case 341:
|
7049
|
-
#line
|
7048
|
+
#line 1917 "grammar.y"
|
7050
7049
|
{
|
7051
7050
|
token_info_push("unless");
|
7052
7051
|
;}
|
7053
7052
|
break;
|
7054
7053
|
|
7055
7054
|
case 342:
|
7056
|
-
#line
|
7055
|
+
#line 1923 "grammar.y"
|
7057
7056
|
{
|
7058
7057
|
token_info_push("while");
|
7059
7058
|
;}
|
7060
7059
|
break;
|
7061
7060
|
|
7062
7061
|
case 343:
|
7063
|
-
#line
|
7062
|
+
#line 1929 "grammar.y"
|
7064
7063
|
{
|
7065
7064
|
token_info_push("until");
|
7066
7065
|
;}
|
7067
7066
|
break;
|
7068
7067
|
|
7069
7068
|
case 344:
|
7070
|
-
#line
|
7069
|
+
#line 1935 "grammar.y"
|
7071
7070
|
{
|
7072
7071
|
token_info_push("case");
|
7073
7072
|
;}
|
7074
7073
|
break;
|
7075
7074
|
|
7076
7075
|
case 345:
|
7077
|
-
#line
|
7076
|
+
#line 1941 "grammar.y"
|
7078
7077
|
{
|
7079
7078
|
token_info_push("for");
|
7080
7079
|
;}
|
7081
7080
|
break;
|
7082
7081
|
|
7083
7082
|
case 346:
|
7084
|
-
#line
|
7083
|
+
#line 1947 "grammar.y"
|
7085
7084
|
{
|
7086
7085
|
token_info_push("class");
|
7087
7086
|
;}
|
7088
7087
|
break;
|
7089
7088
|
|
7090
7089
|
case 347:
|
7091
|
-
#line
|
7090
|
+
#line 1953 "grammar.y"
|
7092
7091
|
{
|
7093
7092
|
token_info_push("module");
|
7094
7093
|
;}
|
7095
7094
|
break;
|
7096
7095
|
|
7097
7096
|
case 348:
|
7098
|
-
#line
|
7097
|
+
#line 1959 "grammar.y"
|
7099
7098
|
{
|
7100
7099
|
token_info_push("def");
|
7101
7100
|
(yyval.num) = sourceline;
|
@@ -7103,14 +7102,14 @@ yyreduce:
|
|
7103
7102
|
break;
|
7104
7103
|
|
7105
7104
|
case 349:
|
7106
|
-
#line
|
7105
|
+
#line 1966 "grammar.y"
|
7107
7106
|
{
|
7108
7107
|
token_info_pop("end");
|
7109
7108
|
;}
|
7110
7109
|
break;
|
7111
7110
|
|
7112
7111
|
case 356:
|
7113
|
-
#line
|
7112
|
+
#line 1984 "grammar.y"
|
7114
7113
|
{
|
7115
7114
|
(yyval.node) = NEW_IF(cond((yyvsp[(2) - (5)].node)), (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
|
7116
7115
|
fixpos((yyval.node), (yyvsp[(2) - (5)].node));
|
@@ -7118,49 +7117,49 @@ yyreduce:
|
|
7118
7117
|
break;
|
7119
7118
|
|
7120
7119
|
case 358:
|
7121
|
-
#line
|
7120
|
+
#line 1992 "grammar.y"
|
7122
7121
|
{
|
7123
7122
|
(yyval.node) = (yyvsp[(2) - (2)].node);
|
7124
7123
|
;}
|
7125
7124
|
break;
|
7126
7125
|
|
7127
7126
|
case 361:
|
7128
|
-
#line
|
7127
|
+
#line 2002 "grammar.y"
|
7129
7128
|
{
|
7130
7129
|
(yyval.node) = assignable((yyvsp[(1) - (1)].id), 0);
|
7131
7130
|
;}
|
7132
7131
|
break;
|
7133
7132
|
|
7134
7133
|
case 362:
|
7135
|
-
#line
|
7134
|
+
#line 2006 "grammar.y"
|
7136
7135
|
{
|
7137
7136
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
7138
7137
|
;}
|
7139
7138
|
break;
|
7140
7139
|
|
7141
7140
|
case 363:
|
7142
|
-
#line
|
7141
|
+
#line 2012 "grammar.y"
|
7143
7142
|
{
|
7144
7143
|
(yyval.node) = NEW_LIST((yyvsp[(1) - (1)].node));
|
7145
7144
|
;}
|
7146
7145
|
break;
|
7147
7146
|
|
7148
7147
|
case 364:
|
7149
|
-
#line
|
7148
|
+
#line 2016 "grammar.y"
|
7150
7149
|
{
|
7151
7150
|
(yyval.node) = list_append((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
7152
7151
|
;}
|
7153
7152
|
break;
|
7154
7153
|
|
7155
7154
|
case 365:
|
7156
|
-
#line
|
7155
|
+
#line 2022 "grammar.y"
|
7157
7156
|
{
|
7158
7157
|
(yyval.node) = NEW_MASGN((yyvsp[(1) - (1)].node), 0);
|
7159
7158
|
;}
|
7160
7159
|
break;
|
7161
7160
|
|
7162
7161
|
case 366:
|
7163
|
-
#line
|
7162
|
+
#line 2026 "grammar.y"
|
7164
7163
|
{
|
7165
7164
|
(yyval.node) = assignable((yyvsp[(4) - (4)].id), 0);
|
7166
7165
|
(yyval.node) = NEW_MASGN((yyvsp[(1) - (4)].node), (yyval.node));
|
@@ -7168,7 +7167,7 @@ yyreduce:
|
|
7168
7167
|
break;
|
7169
7168
|
|
7170
7169
|
case 367:
|
7171
|
-
#line
|
7170
|
+
#line 2031 "grammar.y"
|
7172
7171
|
{
|
7173
7172
|
(yyval.node) = assignable((yyvsp[(4) - (6)].id), 0);
|
7174
7173
|
(yyval.node) = NEW_MASGN((yyvsp[(1) - (6)].node), NEW_POSTARG((yyval.node), (yyvsp[(6) - (6)].node)));
|
@@ -7176,21 +7175,21 @@ yyreduce:
|
|
7176
7175
|
break;
|
7177
7176
|
|
7178
7177
|
case 368:
|
7179
|
-
#line
|
7178
|
+
#line 2036 "grammar.y"
|
7180
7179
|
{
|
7181
7180
|
(yyval.node) = NEW_MASGN((yyvsp[(1) - (3)].node), -1);
|
7182
7181
|
;}
|
7183
7182
|
break;
|
7184
7183
|
|
7185
7184
|
case 369:
|
7186
|
-
#line
|
7185
|
+
#line 2040 "grammar.y"
|
7187
7186
|
{
|
7188
7187
|
(yyval.node) = NEW_MASGN((yyvsp[(1) - (5)].node), NEW_POSTARG(-1, (yyvsp[(5) - (5)].node)));
|
7189
7188
|
;}
|
7190
7189
|
break;
|
7191
7190
|
|
7192
7191
|
case 370:
|
7193
|
-
#line
|
7192
|
+
#line 2044 "grammar.y"
|
7194
7193
|
{
|
7195
7194
|
(yyval.node) = assignable((yyvsp[(2) - (2)].id), 0);
|
7196
7195
|
(yyval.node) = NEW_MASGN(0, (yyval.node));
|
@@ -7198,7 +7197,7 @@ yyreduce:
|
|
7198
7197
|
break;
|
7199
7198
|
|
7200
7199
|
case 371:
|
7201
|
-
#line
|
7200
|
+
#line 2049 "grammar.y"
|
7202
7201
|
{
|
7203
7202
|
(yyval.node) = assignable((yyvsp[(2) - (4)].id), 0);
|
7204
7203
|
(yyval.node) = NEW_MASGN(0, NEW_POSTARG((yyval.node), (yyvsp[(4) - (4)].node)));
|
@@ -7206,175 +7205,175 @@ yyreduce:
|
|
7206
7205
|
break;
|
7207
7206
|
|
7208
7207
|
case 372:
|
7209
|
-
#line
|
7208
|
+
#line 2054 "grammar.y"
|
7210
7209
|
{
|
7211
7210
|
(yyval.node) = NEW_MASGN(0, -1);
|
7212
7211
|
;}
|
7213
7212
|
break;
|
7214
7213
|
|
7215
7214
|
case 373:
|
7216
|
-
#line
|
7215
|
+
#line 2058 "grammar.y"
|
7217
7216
|
{
|
7218
7217
|
(yyval.node) = NEW_MASGN(0, NEW_POSTARG(-1, (yyvsp[(3) - (3)].node)));
|
7219
7218
|
;}
|
7220
7219
|
break;
|
7221
7220
|
|
7222
7221
|
case 374:
|
7223
|
-
#line
|
7222
|
+
#line 2064 "grammar.y"
|
7224
7223
|
{
|
7225
7224
|
(yyval.node) = new_args_tail((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].id), (yyvsp[(4) - (4)].id));
|
7226
7225
|
;}
|
7227
7226
|
break;
|
7228
7227
|
|
7229
7228
|
case 375:
|
7230
|
-
#line
|
7229
|
+
#line 2068 "grammar.y"
|
7231
7230
|
{
|
7232
7231
|
(yyval.node) = new_args_tail((yyvsp[(1) - (2)].node), 0, (yyvsp[(2) - (2)].id));
|
7233
7232
|
;}
|
7234
7233
|
break;
|
7235
7234
|
|
7236
7235
|
case 376:
|
7237
|
-
#line
|
7236
|
+
#line 2072 "grammar.y"
|
7238
7237
|
{
|
7239
7238
|
(yyval.node) = new_args_tail(0, (yyvsp[(1) - (2)].id), (yyvsp[(2) - (2)].id));
|
7240
7239
|
;}
|
7241
7240
|
break;
|
7242
7241
|
|
7243
7242
|
case 377:
|
7244
|
-
#line
|
7243
|
+
#line 2076 "grammar.y"
|
7245
7244
|
{
|
7246
7245
|
(yyval.node) = new_args_tail(0, 0, (yyvsp[(1) - (1)].id));
|
7247
7246
|
;}
|
7248
7247
|
break;
|
7249
7248
|
|
7250
7249
|
case 378:
|
7251
|
-
#line
|
7250
|
+
#line 2082 "grammar.y"
|
7252
7251
|
{
|
7253
7252
|
(yyval.node) = (yyvsp[(2) - (2)].node);
|
7254
7253
|
;}
|
7255
7254
|
break;
|
7256
7255
|
|
7257
7256
|
case 379:
|
7258
|
-
#line
|
7257
|
+
#line 2086 "grammar.y"
|
7259
7258
|
{
|
7260
7259
|
(yyval.node) = new_args_tail(0, 0, 0);
|
7261
7260
|
;}
|
7262
7261
|
break;
|
7263
7262
|
|
7264
7263
|
case 380:
|
7265
|
-
#line
|
7264
|
+
#line 2092 "grammar.y"
|
7266
7265
|
{
|
7267
7266
|
(yyval.node) = new_args((yyvsp[(1) - (6)].node), (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].id), 0, (yyvsp[(6) - (6)].node));
|
7268
7267
|
;}
|
7269
7268
|
break;
|
7270
7269
|
|
7271
7270
|
case 381:
|
7272
|
-
#line
|
7271
|
+
#line 2096 "grammar.y"
|
7273
7272
|
{
|
7274
7273
|
(yyval.node) = new_args((yyvsp[(1) - (8)].node), (yyvsp[(3) - (8)].node), (yyvsp[(5) - (8)].id), (yyvsp[(7) - (8)].node), (yyvsp[(8) - (8)].node));
|
7275
7274
|
;}
|
7276
7275
|
break;
|
7277
7276
|
|
7278
7277
|
case 382:
|
7279
|
-
#line
|
7278
|
+
#line 2100 "grammar.y"
|
7280
7279
|
{
|
7281
7280
|
(yyval.node) = new_args((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node), 0, 0, (yyvsp[(4) - (4)].node));
|
7282
7281
|
;}
|
7283
7282
|
break;
|
7284
7283
|
|
7285
7284
|
case 383:
|
7286
|
-
#line
|
7285
|
+
#line 2104 "grammar.y"
|
7287
7286
|
{
|
7288
7287
|
(yyval.node) = new_args((yyvsp[(1) - (6)].node), (yyvsp[(3) - (6)].node), 0, (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
|
7289
7288
|
;}
|
7290
7289
|
break;
|
7291
7290
|
|
7292
7291
|
case 384:
|
7293
|
-
#line
|
7292
|
+
#line 2108 "grammar.y"
|
7294
7293
|
{
|
7295
7294
|
(yyval.node) = new_args((yyvsp[(1) - (4)].node), 0, (yyvsp[(3) - (4)].id), 0, (yyvsp[(4) - (4)].node));
|
7296
7295
|
;}
|
7297
7296
|
break;
|
7298
7297
|
|
7299
7298
|
case 385:
|
7300
|
-
#line
|
7299
|
+
#line 2112 "grammar.y"
|
7301
7300
|
{
|
7302
7301
|
(yyval.node) = new_args((yyvsp[(1) - (2)].node), 0, 1, 0, new_args_tail(0, 0, 0));
|
7303
7302
|
;}
|
7304
7303
|
break;
|
7305
7304
|
|
7306
7305
|
case 386:
|
7307
|
-
#line
|
7306
|
+
#line 2116 "grammar.y"
|
7308
7307
|
{
|
7309
7308
|
(yyval.node) = new_args((yyvsp[(1) - (6)].node), 0, (yyvsp[(3) - (6)].id), (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
|
7310
7309
|
;}
|
7311
7310
|
break;
|
7312
7311
|
|
7313
7312
|
case 387:
|
7314
|
-
#line
|
7313
|
+
#line 2120 "grammar.y"
|
7315
7314
|
{
|
7316
7315
|
(yyval.node) = new_args((yyvsp[(1) - (2)].node), 0, 0, 0, (yyvsp[(2) - (2)].node));
|
7317
7316
|
;}
|
7318
7317
|
break;
|
7319
7318
|
|
7320
7319
|
case 388:
|
7321
|
-
#line
|
7320
|
+
#line 2124 "grammar.y"
|
7322
7321
|
{
|
7323
7322
|
(yyval.node) = new_args(0, (yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].id), 0, (yyvsp[(4) - (4)].node));
|
7324
7323
|
;}
|
7325
7324
|
break;
|
7326
7325
|
|
7327
7326
|
case 389:
|
7328
|
-
#line
|
7327
|
+
#line 2128 "grammar.y"
|
7329
7328
|
{
|
7330
7329
|
(yyval.node) = new_args(0, (yyvsp[(1) - (6)].node), (yyvsp[(3) - (6)].id), (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
|
7331
7330
|
;}
|
7332
7331
|
break;
|
7333
7332
|
|
7334
7333
|
case 390:
|
7335
|
-
#line
|
7334
|
+
#line 2132 "grammar.y"
|
7336
7335
|
{
|
7337
7336
|
(yyval.node) = new_args(0, (yyvsp[(1) - (2)].node), 0, 0, (yyvsp[(2) - (2)].node));
|
7338
7337
|
;}
|
7339
7338
|
break;
|
7340
7339
|
|
7341
7340
|
case 391:
|
7342
|
-
#line
|
7341
|
+
#line 2136 "grammar.y"
|
7343
7342
|
{
|
7344
7343
|
(yyval.node) = new_args(0, (yyvsp[(1) - (4)].node), 0, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
|
7345
7344
|
;}
|
7346
7345
|
break;
|
7347
7346
|
|
7348
7347
|
case 392:
|
7349
|
-
#line
|
7348
|
+
#line 2140 "grammar.y"
|
7350
7349
|
{
|
7351
7350
|
(yyval.node) = new_args(0, 0, (yyvsp[(1) - (2)].id), 0, (yyvsp[(2) - (2)].node));
|
7352
7351
|
;}
|
7353
7352
|
break;
|
7354
7353
|
|
7355
7354
|
case 393:
|
7356
|
-
#line
|
7355
|
+
#line 2144 "grammar.y"
|
7357
7356
|
{
|
7358
7357
|
(yyval.node) = new_args(0, 0, (yyvsp[(1) - (4)].id), (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
|
7359
7358
|
;}
|
7360
7359
|
break;
|
7361
7360
|
|
7362
7361
|
case 394:
|
7363
|
-
#line
|
7362
|
+
#line 2148 "grammar.y"
|
7364
7363
|
{
|
7365
7364
|
(yyval.node) = new_args(0, 0, 0, 0, (yyvsp[(1) - (1)].node));
|
7366
7365
|
;}
|
7367
7366
|
break;
|
7368
7367
|
|
7369
7368
|
case 396:
|
7370
|
-
#line
|
7369
|
+
#line 2155 "grammar.y"
|
7371
7370
|
{
|
7372
7371
|
command_start = TRUE;
|
7373
7372
|
;}
|
7374
7373
|
break;
|
7375
7374
|
|
7376
7375
|
case 397:
|
7377
|
-
#line
|
7376
|
+
#line 2161 "grammar.y"
|
7378
7377
|
{
|
7379
7378
|
// This is deliberately different than MRI.
|
7380
7379
|
(yyval.node) = (yyvsp[(2) - (3)].node) ? NEW_ARGS_AUX(0, (yyvsp[(2) - (3)].node)) : 0;
|
@@ -7382,14 +7381,14 @@ yyreduce:
|
|
7382
7381
|
break;
|
7383
7382
|
|
7384
7383
|
case 398:
|
7385
|
-
#line
|
7384
|
+
#line 2166 "grammar.y"
|
7386
7385
|
{
|
7387
7386
|
(yyval.node) = 0;
|
7388
7387
|
;}
|
7389
7388
|
break;
|
7390
7389
|
|
7391
7390
|
case 399:
|
7392
|
-
#line
|
7391
|
+
#line 2170 "grammar.y"
|
7393
7392
|
{
|
7394
7393
|
// This is deliberately different than MRI.
|
7395
7394
|
(yyval.node) = (yyvsp[(3) - (4)].node) ? NEW_ARGS_AUX((yyvsp[(2) - (4)].node), (yyvsp[(3) - (4)].node)) : (yyvsp[(2) - (4)].node);
|
@@ -7397,14 +7396,14 @@ yyreduce:
|
|
7397
7396
|
break;
|
7398
7397
|
|
7399
7398
|
case 400:
|
7400
|
-
#line
|
7399
|
+
#line 2177 "grammar.y"
|
7401
7400
|
{
|
7402
7401
|
(yyval.node) = 0;
|
7403
7402
|
;}
|
7404
7403
|
break;
|
7405
7404
|
|
7406
7405
|
case 401:
|
7407
|
-
#line
|
7406
|
+
#line 2181 "grammar.y"
|
7408
7407
|
{
|
7409
7408
|
// This is deliberately different than MRI.
|
7410
7409
|
(yyval.node) = (yyvsp[(3) - (3)].node);
|
@@ -7412,7 +7411,7 @@ yyreduce:
|
|
7412
7411
|
break;
|
7413
7412
|
|
7414
7413
|
case 402:
|
7415
|
-
#line
|
7414
|
+
#line 2188 "grammar.y"
|
7416
7415
|
{
|
7417
7416
|
// This is deliberately different than MRI.
|
7418
7417
|
(yyval.node) = NEW_LIST((yyvsp[(1) - (1)].node));
|
@@ -7420,7 +7419,7 @@ yyreduce:
|
|
7420
7419
|
break;
|
7421
7420
|
|
7422
7421
|
case 403:
|
7423
|
-
#line
|
7422
|
+
#line 2193 "grammar.y"
|
7424
7423
|
{
|
7425
7424
|
// This is deliberately different than MRI.
|
7426
7425
|
(yyval.node) = list_append((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
@@ -7428,7 +7427,7 @@ yyreduce:
|
|
7428
7427
|
break;
|
7429
7428
|
|
7430
7429
|
case 404:
|
7431
|
-
#line
|
7430
|
+
#line 2200 "grammar.y"
|
7432
7431
|
{
|
7433
7432
|
new_bv(get_id((yyvsp[(1) - (1)].id)));
|
7434
7433
|
// This is deliberately different than MRI.
|
@@ -7437,21 +7436,21 @@ yyreduce:
|
|
7437
7436
|
break;
|
7438
7437
|
|
7439
7438
|
case 405:
|
7440
|
-
#line
|
7439
|
+
#line 2206 "grammar.y"
|
7441
7440
|
{
|
7442
7441
|
(yyval.node) = 0;
|
7443
7442
|
;}
|
7444
7443
|
break;
|
7445
7444
|
|
7446
7445
|
case 406:
|
7447
|
-
#line
|
7446
|
+
#line 2211 "grammar.y"
|
7448
7447
|
{
|
7449
7448
|
(yyval.vars) = bv_push();
|
7450
7449
|
;}
|
7451
7450
|
break;
|
7452
7451
|
|
7453
7452
|
case 407:
|
7454
|
-
#line
|
7453
|
+
#line 2214 "grammar.y"
|
7455
7454
|
{
|
7456
7455
|
(yyval.num) = lpar_beg;
|
7457
7456
|
lpar_beg = ++paren_nest;
|
@@ -7459,14 +7458,14 @@ yyreduce:
|
|
7459
7458
|
break;
|
7460
7459
|
|
7461
7460
|
case 408:
|
7462
|
-
#line
|
7461
|
+
#line 2219 "grammar.y"
|
7463
7462
|
{
|
7464
7463
|
(yyval.num) = sourceline;
|
7465
7464
|
;}
|
7466
7465
|
break;
|
7467
7466
|
|
7468
7467
|
case 409:
|
7469
|
-
#line
|
7468
|
+
#line 2223 "grammar.y"
|
7470
7469
|
{
|
7471
7470
|
lpar_beg = (yyvsp[(2) - (5)].num);
|
7472
7471
|
(yyval.node) = NEW_LAMBDA((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
|
@@ -7476,35 +7475,35 @@ yyreduce:
|
|
7476
7475
|
break;
|
7477
7476
|
|
7478
7477
|
case 410:
|
7479
|
-
#line
|
7478
|
+
#line 2232 "grammar.y"
|
7480
7479
|
{
|
7481
7480
|
(yyval.node) = (yyvsp[(2) - (4)].node);
|
7482
7481
|
;}
|
7483
7482
|
break;
|
7484
7483
|
|
7485
7484
|
case 411:
|
7486
|
-
#line
|
7485
|
+
#line 2236 "grammar.y"
|
7487
7486
|
{
|
7488
7487
|
(yyval.node) = (yyvsp[(1) - (1)].node);
|
7489
7488
|
;}
|
7490
7489
|
break;
|
7491
7490
|
|
7492
7491
|
case 412:
|
7493
|
-
#line
|
7492
|
+
#line 2242 "grammar.y"
|
7494
7493
|
{
|
7495
7494
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
7496
7495
|
;}
|
7497
7496
|
break;
|
7498
7497
|
|
7499
7498
|
case 413:
|
7500
|
-
#line
|
7499
|
+
#line 2246 "grammar.y"
|
7501
7500
|
{
|
7502
7501
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
7503
7502
|
;}
|
7504
7503
|
break;
|
7505
7504
|
|
7506
7505
|
case 414:
|
7507
|
-
#line
|
7506
|
+
#line 2252 "grammar.y"
|
7508
7507
|
{
|
7509
7508
|
(yyvsp[(1) - (1)].vars) = bv_push();
|
7510
7509
|
(yyval.num) = sourceline;
|
@@ -7512,7 +7511,7 @@ yyreduce:
|
|
7512
7511
|
break;
|
7513
7512
|
|
7514
7513
|
case 415:
|
7515
|
-
#line
|
7514
|
+
#line 2259 "grammar.y"
|
7516
7515
|
{
|
7517
7516
|
(yyval.node) = NEW_ITER((yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
|
7518
7517
|
nd_set_line((yyval.node), (yyvsp[(2) - (5)].num));
|
@@ -7521,7 +7520,7 @@ yyreduce:
|
|
7521
7520
|
break;
|
7522
7521
|
|
7523
7522
|
case 416:
|
7524
|
-
#line
|
7523
|
+
#line 2267 "grammar.y"
|
7525
7524
|
{
|
7526
7525
|
if(nd_type((yyvsp[(1) - (2)].node)) == NODE_YIELD) {
|
7527
7526
|
compile_error("block given to yield");
|
@@ -7535,14 +7534,14 @@ yyreduce:
|
|
7535
7534
|
break;
|
7536
7535
|
|
7537
7536
|
case 417:
|
7538
|
-
#line
|
7537
|
+
#line 2278 "grammar.y"
|
7539
7538
|
{
|
7540
7539
|
(yyval.node) = NEW_CALL((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].id), (yyvsp[(4) - (4)].node));
|
7541
7540
|
;}
|
7542
7541
|
break;
|
7543
7542
|
|
7544
7543
|
case 418:
|
7545
|
-
#line
|
7544
|
+
#line 2282 "grammar.y"
|
7546
7545
|
{
|
7547
7546
|
block_dup_check((yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
|
7548
7547
|
(yyvsp[(5) - (5)].node)->nd_iter = NEW_CALL((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(4) - (5)].node));
|
@@ -7552,7 +7551,7 @@ yyreduce:
|
|
7552
7551
|
break;
|
7553
7552
|
|
7554
7553
|
case 419:
|
7555
|
-
#line
|
7554
|
+
#line 2289 "grammar.y"
|
7556
7555
|
{
|
7557
7556
|
block_dup_check((yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
|
7558
7557
|
(yyvsp[(5) - (5)].node)->nd_iter = NEW_CALL((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(4) - (5)].node));
|
@@ -7562,7 +7561,7 @@ yyreduce:
|
|
7562
7561
|
break;
|
7563
7562
|
|
7564
7563
|
case 420:
|
7565
|
-
#line
|
7564
|
+
#line 2298 "grammar.y"
|
7566
7565
|
{
|
7567
7566
|
(yyval.node) = (yyvsp[(1) - (2)].node);
|
7568
7567
|
(yyval.node)->nd_args = (yyvsp[(2) - (2)].node);
|
@@ -7571,14 +7570,14 @@ yyreduce:
|
|
7571
7570
|
break;
|
7572
7571
|
|
7573
7572
|
case 421:
|
7574
|
-
#line
|
7573
|
+
#line 2304 "grammar.y"
|
7575
7574
|
{
|
7576
7575
|
(yyval.num) = sourceline;
|
7577
7576
|
;}
|
7578
7577
|
break;
|
7579
7578
|
|
7580
7579
|
case 422:
|
7581
|
-
#line
|
7580
|
+
#line 2308 "grammar.y"
|
7582
7581
|
{
|
7583
7582
|
(yyval.node) = NEW_CALL((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(5) - (5)].node));
|
7584
7583
|
nd_set_line((yyval.node), (yyvsp[(4) - (5)].num));
|
@@ -7586,14 +7585,14 @@ yyreduce:
|
|
7586
7585
|
break;
|
7587
7586
|
|
7588
7587
|
case 423:
|
7589
|
-
#line
|
7588
|
+
#line 2313 "grammar.y"
|
7590
7589
|
{
|
7591
7590
|
(yyval.num) = sourceline;
|
7592
7591
|
;}
|
7593
7592
|
break;
|
7594
7593
|
|
7595
7594
|
case 424:
|
7596
|
-
#line
|
7595
|
+
#line 2317 "grammar.y"
|
7597
7596
|
{
|
7598
7597
|
(yyval.node) = NEW_CALL((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].id), (yyvsp[(5) - (5)].node));
|
7599
7598
|
nd_set_line((yyval.node), (yyvsp[(4) - (5)].num));
|
@@ -7601,21 +7600,21 @@ yyreduce:
|
|
7601
7600
|
break;
|
7602
7601
|
|
7603
7602
|
case 425:
|
7604
|
-
#line
|
7603
|
+
#line 2322 "grammar.y"
|
7605
7604
|
{
|
7606
7605
|
(yyval.node) = NEW_CALL((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].id), 0);
|
7607
7606
|
;}
|
7608
7607
|
break;
|
7609
7608
|
|
7610
7609
|
case 426:
|
7611
|
-
#line
|
7610
|
+
#line 2326 "grammar.y"
|
7612
7611
|
{
|
7613
7612
|
(yyval.num) = sourceline;
|
7614
7613
|
;}
|
7615
7614
|
break;
|
7616
7615
|
|
7617
7616
|
case 427:
|
7618
|
-
#line
|
7617
|
+
#line 2330 "grammar.y"
|
7619
7618
|
{
|
7620
7619
|
(yyval.node) = NEW_CALL((yyvsp[(1) - (4)].node), parser_intern("call"), (yyvsp[(4) - (4)].node));
|
7621
7620
|
nd_set_line((yyval.node), (yyvsp[(3) - (4)].num));
|
@@ -7623,14 +7622,14 @@ yyreduce:
|
|
7623
7622
|
break;
|
7624
7623
|
|
7625
7624
|
case 428:
|
7626
|
-
#line
|
7625
|
+
#line 2335 "grammar.y"
|
7627
7626
|
{
|
7628
7627
|
(yyval.num) = sourceline;
|
7629
7628
|
;}
|
7630
7629
|
break;
|
7631
7630
|
|
7632
7631
|
case 429:
|
7633
|
-
#line
|
7632
|
+
#line 2339 "grammar.y"
|
7634
7633
|
{
|
7635
7634
|
(yyval.node) = NEW_CALL((yyvsp[(1) - (4)].node), parser_intern("call"), (yyvsp[(4) - (4)].node));
|
7636
7635
|
nd_set_line((yyval.node), (yyvsp[(3) - (4)].num));
|
@@ -7638,21 +7637,21 @@ yyreduce:
|
|
7638
7637
|
break;
|
7639
7638
|
|
7640
7639
|
case 430:
|
7641
|
-
#line
|
7640
|
+
#line 2344 "grammar.y"
|
7642
7641
|
{
|
7643
7642
|
(yyval.node) = NEW_SUPER((yyvsp[(2) - (2)].node));
|
7644
7643
|
;}
|
7645
7644
|
break;
|
7646
7645
|
|
7647
7646
|
case 431:
|
7648
|
-
#line
|
7647
|
+
#line 2348 "grammar.y"
|
7649
7648
|
{
|
7650
7649
|
(yyval.node) = NEW_ZSUPER();
|
7651
7650
|
;}
|
7652
7651
|
break;
|
7653
7652
|
|
7654
7653
|
case 432:
|
7655
|
-
#line
|
7654
|
+
#line 2352 "grammar.y"
|
7656
7655
|
{
|
7657
7656
|
if((yyvsp[(1) - (4)].node) && nd_type((yyvsp[(1) - (4)].node)) == NODE_SELF) {
|
7658
7657
|
(yyval.node) = NEW_FCALL(tAREF, (yyvsp[(3) - (4)].node));
|
@@ -7664,7 +7663,7 @@ yyreduce:
|
|
7664
7663
|
break;
|
7665
7664
|
|
7666
7665
|
case 433:
|
7667
|
-
#line
|
7666
|
+
#line 2363 "grammar.y"
|
7668
7667
|
{
|
7669
7668
|
(yyvsp[(1) - (1)].vars) = bv_push();
|
7670
7669
|
(yyval.num) = sourceline;
|
@@ -7672,7 +7671,7 @@ yyreduce:
|
|
7672
7671
|
break;
|
7673
7672
|
|
7674
7673
|
case 434:
|
7675
|
-
#line
|
7674
|
+
#line 2369 "grammar.y"
|
7676
7675
|
{
|
7677
7676
|
(yyval.node) = NEW_ITER((yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
|
7678
7677
|
nd_set_line((yyval.node), (yyvsp[(2) - (5)].num));
|
@@ -7681,7 +7680,7 @@ yyreduce:
|
|
7681
7680
|
break;
|
7682
7681
|
|
7683
7682
|
case 435:
|
7684
|
-
#line
|
7683
|
+
#line 2375 "grammar.y"
|
7685
7684
|
{
|
7686
7685
|
(yyvsp[(1) - (1)].vars) = bv_push();
|
7687
7686
|
(yyval.num) = sourceline;
|
@@ -7689,7 +7688,7 @@ yyreduce:
|
|
7689
7688
|
break;
|
7690
7689
|
|
7691
7690
|
case 436:
|
7692
|
-
#line
|
7691
|
+
#line 2381 "grammar.y"
|
7693
7692
|
{
|
7694
7693
|
(yyval.node) = NEW_ITER((yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
|
7695
7694
|
nd_set_line((yyval.node), (yyvsp[(2) - (5)].num));
|
@@ -7698,14 +7697,14 @@ yyreduce:
|
|
7698
7697
|
break;
|
7699
7698
|
|
7700
7699
|
case 437:
|
7701
|
-
#line
|
7700
|
+
#line 2391 "grammar.y"
|
7702
7701
|
{
|
7703
7702
|
(yyval.node) = NEW_WHEN((yyvsp[(2) - (5)].node), (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
|
7704
7703
|
;}
|
7705
7704
|
break;
|
7706
7705
|
|
7707
7706
|
case 440:
|
7708
|
-
#line
|
7707
|
+
#line 2403 "grammar.y"
|
7709
7708
|
{
|
7710
7709
|
if((yyvsp[(3) - (6)].node)) {
|
7711
7710
|
/* TODO NEW_ERRINFO() */
|
@@ -7718,42 +7717,42 @@ yyreduce:
|
|
7718
7717
|
break;
|
7719
7718
|
|
7720
7719
|
case 442:
|
7721
|
-
#line
|
7720
|
+
#line 2416 "grammar.y"
|
7722
7721
|
{
|
7723
7722
|
(yyval.node) = NEW_LIST((yyvsp[(1) - (1)].node));
|
7724
7723
|
;}
|
7725
7724
|
break;
|
7726
7725
|
|
7727
7726
|
case 443:
|
7728
|
-
#line
|
7727
|
+
#line 2420 "grammar.y"
|
7729
7728
|
{
|
7730
7729
|
if(!((yyval.node) = splat_array((yyvsp[(1) - (1)].node)))) (yyval.node) = (yyvsp[(1) - (1)].node);
|
7731
7730
|
;}
|
7732
7731
|
break;
|
7733
7732
|
|
7734
7733
|
case 445:
|
7735
|
-
#line
|
7734
|
+
#line 2427 "grammar.y"
|
7736
7735
|
{
|
7737
7736
|
(yyval.node) = (yyvsp[(2) - (2)].node);
|
7738
7737
|
;}
|
7739
7738
|
break;
|
7740
7739
|
|
7741
7740
|
case 447:
|
7742
|
-
#line
|
7741
|
+
#line 2434 "grammar.y"
|
7743
7742
|
{
|
7744
7743
|
(yyval.node) = (yyvsp[(2) - (2)].node);
|
7745
7744
|
;}
|
7746
7745
|
break;
|
7747
7746
|
|
7748
7747
|
case 450:
|
7749
|
-
#line
|
7748
|
+
#line 2442 "grammar.y"
|
7750
7749
|
{
|
7751
7750
|
(yyval.node) = NEW_LIT(ID2SYM((yyvsp[(1) - (1)].id)));
|
7752
7751
|
;}
|
7753
7752
|
break;
|
7754
7753
|
|
7755
7754
|
case 452:
|
7756
|
-
#line
|
7755
|
+
#line 2449 "grammar.y"
|
7757
7756
|
{
|
7758
7757
|
NODE *node = (yyvsp[(1) - (1)].node);
|
7759
7758
|
if(!node) {
|
@@ -7766,21 +7765,21 @@ yyreduce:
|
|
7766
7765
|
break;
|
7767
7766
|
|
7768
7767
|
case 455:
|
7769
|
-
#line
|
7768
|
+
#line 2463 "grammar.y"
|
7770
7769
|
{
|
7771
7770
|
(yyval.node) = literal_concat((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
|
7772
7771
|
;}
|
7773
7772
|
break;
|
7774
7773
|
|
7775
7774
|
case 456:
|
7776
|
-
#line
|
7775
|
+
#line 2469 "grammar.y"
|
7777
7776
|
{
|
7778
7777
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
7779
7778
|
;}
|
7780
7779
|
break;
|
7781
7780
|
|
7782
7781
|
case 457:
|
7783
|
-
#line
|
7782
|
+
#line 2475 "grammar.y"
|
7784
7783
|
{
|
7785
7784
|
NODE *node = (yyvsp[(2) - (3)].node);
|
7786
7785
|
if(!node) {
|
@@ -7803,7 +7802,7 @@ yyreduce:
|
|
7803
7802
|
break;
|
7804
7803
|
|
7805
7804
|
case 458:
|
7806
|
-
#line
|
7805
|
+
#line 2497 "grammar.y"
|
7807
7806
|
{
|
7808
7807
|
intptr_t options = (yyvsp[(3) - (3)].num);
|
7809
7808
|
NODE *node = (yyvsp[(2) - (3)].node);
|
@@ -7864,63 +7863,63 @@ yyreduce:
|
|
7864
7863
|
break;
|
7865
7864
|
|
7866
7865
|
case 459:
|
7867
|
-
#line
|
7866
|
+
#line 2557 "grammar.y"
|
7868
7867
|
{
|
7869
7868
|
(yyval.node) = NEW_ZARRAY();
|
7870
7869
|
;}
|
7871
7870
|
break;
|
7872
7871
|
|
7873
7872
|
case 460:
|
7874
|
-
#line
|
7873
|
+
#line 2561 "grammar.y"
|
7875
7874
|
{
|
7876
7875
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
7877
7876
|
;}
|
7878
7877
|
break;
|
7879
7878
|
|
7880
7879
|
case 461:
|
7881
|
-
#line
|
7880
|
+
#line 2567 "grammar.y"
|
7882
7881
|
{
|
7883
7882
|
(yyval.node) = 0;
|
7884
7883
|
;}
|
7885
7884
|
break;
|
7886
7885
|
|
7887
7886
|
case 462:
|
7888
|
-
#line
|
7887
|
+
#line 2571 "grammar.y"
|
7889
7888
|
{
|
7890
7889
|
(yyval.node) = list_append((yyvsp[(1) - (3)].node), evstr2dstr((yyvsp[(2) - (3)].node)));
|
7891
7890
|
;}
|
7892
7891
|
break;
|
7893
7892
|
|
7894
7893
|
case 464:
|
7895
|
-
#line
|
7894
|
+
#line 2578 "grammar.y"
|
7896
7895
|
{
|
7897
7896
|
(yyval.node) = literal_concat((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
|
7898
7897
|
;}
|
7899
7898
|
break;
|
7900
7899
|
|
7901
7900
|
case 465:
|
7902
|
-
#line
|
7901
|
+
#line 2584 "grammar.y"
|
7903
7902
|
{
|
7904
7903
|
(yyval.node) = NEW_ZARRAY();
|
7905
7904
|
;}
|
7906
7905
|
break;
|
7907
7906
|
|
7908
7907
|
case 466:
|
7909
|
-
#line
|
7908
|
+
#line 2588 "grammar.y"
|
7910
7909
|
{
|
7911
7910
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
7912
7911
|
;}
|
7913
7912
|
break;
|
7914
7913
|
|
7915
7914
|
case 467:
|
7916
|
-
#line
|
7915
|
+
#line 2594 "grammar.y"
|
7917
7916
|
{
|
7918
7917
|
(yyval.node) = 0;
|
7919
7918
|
;}
|
7920
7919
|
break;
|
7921
7920
|
|
7922
7921
|
case 468:
|
7923
|
-
#line
|
7922
|
+
#line 2598 "grammar.y"
|
7924
7923
|
{
|
7925
7924
|
(yyvsp[(2) - (3)].node) = evstr2dstr((yyvsp[(2) - (3)].node));
|
7926
7925
|
nd_set_type((yyvsp[(2) - (3)].node), NODE_DSYM);
|
@@ -7929,56 +7928,56 @@ yyreduce:
|
|
7929
7928
|
break;
|
7930
7929
|
|
7931
7930
|
case 469:
|
7932
|
-
#line
|
7931
|
+
#line 2606 "grammar.y"
|
7933
7932
|
{
|
7934
7933
|
(yyval.node) = NEW_ZARRAY();
|
7935
7934
|
;}
|
7936
7935
|
break;
|
7937
7936
|
|
7938
7937
|
case 470:
|
7939
|
-
#line
|
7938
|
+
#line 2610 "grammar.y"
|
7940
7939
|
{
|
7941
7940
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
7942
7941
|
;}
|
7943
7942
|
break;
|
7944
7943
|
|
7945
7944
|
case 471:
|
7946
|
-
#line
|
7945
|
+
#line 2616 "grammar.y"
|
7947
7946
|
{
|
7948
7947
|
(yyval.node) = NEW_ZARRAY();
|
7949
7948
|
;}
|
7950
7949
|
break;
|
7951
7950
|
|
7952
7951
|
case 472:
|
7953
|
-
#line
|
7952
|
+
#line 2620 "grammar.y"
|
7954
7953
|
{
|
7955
7954
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
7956
7955
|
;}
|
7957
7956
|
break;
|
7958
7957
|
|
7959
7958
|
case 473:
|
7960
|
-
#line
|
7959
|
+
#line 2626 "grammar.y"
|
7961
7960
|
{
|
7962
7961
|
(yyval.node) = 0;
|
7963
7962
|
;}
|
7964
7963
|
break;
|
7965
7964
|
|
7966
7965
|
case 474:
|
7967
|
-
#line
|
7966
|
+
#line 2630 "grammar.y"
|
7968
7967
|
{
|
7969
7968
|
(yyval.node) = list_append((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].node));
|
7970
7969
|
;}
|
7971
7970
|
break;
|
7972
7971
|
|
7973
7972
|
case 475:
|
7974
|
-
#line
|
7973
|
+
#line 2636 "grammar.y"
|
7975
7974
|
{
|
7976
7975
|
(yyval.node) = 0;
|
7977
7976
|
;}
|
7978
7977
|
break;
|
7979
7978
|
|
7980
7979
|
case 476:
|
7981
|
-
#line
|
7980
|
+
#line 2640 "grammar.y"
|
7982
7981
|
{
|
7983
7982
|
VALUE lit;
|
7984
7983
|
lit = (yyvsp[(2) - (3)].node)->nd_lit;
|
@@ -7989,42 +7988,42 @@ yyreduce:
|
|
7989
7988
|
break;
|
7990
7989
|
|
7991
7990
|
case 477:
|
7992
|
-
#line
|
7991
|
+
#line 2650 "grammar.y"
|
7993
7992
|
{
|
7994
7993
|
(yyval.node) = 0;
|
7995
7994
|
;}
|
7996
7995
|
break;
|
7997
7996
|
|
7998
7997
|
case 478:
|
7999
|
-
#line
|
7998
|
+
#line 2654 "grammar.y"
|
8000
7999
|
{
|
8001
8000
|
(yyval.node) = literal_concat((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
|
8002
8001
|
;}
|
8003
8002
|
break;
|
8004
8003
|
|
8005
8004
|
case 479:
|
8006
|
-
#line
|
8005
|
+
#line 2660 "grammar.y"
|
8007
8006
|
{
|
8008
8007
|
(yyval.node) = 0;
|
8009
8008
|
;}
|
8010
8009
|
break;
|
8011
8010
|
|
8012
8011
|
case 480:
|
8013
|
-
#line
|
8012
|
+
#line 2664 "grammar.y"
|
8014
8013
|
{
|
8015
8014
|
(yyval.node) = literal_concat((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
|
8016
8015
|
;}
|
8017
8016
|
break;
|
8018
8017
|
|
8019
8018
|
case 481:
|
8020
|
-
#line
|
8019
|
+
#line 2670 "grammar.y"
|
8021
8020
|
{
|
8022
8021
|
(yyval.node) = 0;
|
8023
8022
|
;}
|
8024
8023
|
break;
|
8025
8024
|
|
8026
8025
|
case 482:
|
8027
|
-
#line
|
8026
|
+
#line 2674 "grammar.y"
|
8028
8027
|
{
|
8029
8028
|
NODE *head = (yyvsp[(1) - (2)].node), *tail = (yyvsp[(2) - (2)].node);
|
8030
8029
|
if(!head) {
|
@@ -8048,7 +8047,7 @@ yyreduce:
|
|
8048
8047
|
break;
|
8049
8048
|
|
8050
8049
|
case 484:
|
8051
|
-
#line
|
8050
|
+
#line 2698 "grammar.y"
|
8052
8051
|
{
|
8053
8052
|
(yyval.node) = lex_strterm;
|
8054
8053
|
lex_strterm = 0;
|
@@ -8057,7 +8056,7 @@ yyreduce:
|
|
8057
8056
|
break;
|
8058
8057
|
|
8059
8058
|
case 485:
|
8060
|
-
#line
|
8059
|
+
#line 2704 "grammar.y"
|
8061
8060
|
{
|
8062
8061
|
lex_strterm = (yyvsp[(2) - (3)].node);
|
8063
8062
|
(yyval.node) = NEW_EVSTR((yyvsp[(3) - (3)].node));
|
@@ -8065,7 +8064,7 @@ yyreduce:
|
|
8065
8064
|
break;
|
8066
8065
|
|
8067
8066
|
case 486:
|
8068
|
-
#line
|
8067
|
+
#line 2709 "grammar.y"
|
8069
8068
|
{
|
8070
8069
|
(yyvsp[(1) - (1)].val) = cond_stack;
|
8071
8070
|
(yyval.val) = cmdarg_stack;
|
@@ -8075,7 +8074,7 @@ yyreduce:
|
|
8075
8074
|
break;
|
8076
8075
|
|
8077
8076
|
case 487:
|
8078
|
-
#line
|
8077
|
+
#line 2715 "grammar.y"
|
8079
8078
|
{
|
8080
8079
|
(yyval.node) = lex_strterm;
|
8081
8080
|
lex_strterm = 0;
|
@@ -8084,7 +8083,7 @@ yyreduce:
|
|
8084
8083
|
break;
|
8085
8084
|
|
8086
8085
|
case 488:
|
8087
|
-
#line
|
8086
|
+
#line 2720 "grammar.y"
|
8088
8087
|
{
|
8089
8088
|
(yyval.num) = brace_nest;
|
8090
8089
|
brace_nest = 0;
|
@@ -8092,7 +8091,7 @@ yyreduce:
|
|
8092
8091
|
break;
|
8093
8092
|
|
8094
8093
|
case 489:
|
8095
|
-
#line
|
8094
|
+
#line 2725 "grammar.y"
|
8096
8095
|
{
|
8097
8096
|
cond_stack = (yyvsp[(1) - (6)].val);
|
8098
8097
|
cmdarg_stack = (yyvsp[(2) - (6)].val);
|
@@ -8105,22 +8104,22 @@ yyreduce:
|
|
8105
8104
|
break;
|
8106
8105
|
|
8107
8106
|
case 490:
|
8108
|
-
#line
|
8107
|
+
#line 2736 "grammar.y"
|
8109
8108
|
{(yyval.node) = NEW_GVAR((yyvsp[(1) - (1)].id));;}
|
8110
8109
|
break;
|
8111
8110
|
|
8112
8111
|
case 491:
|
8113
|
-
#line
|
8112
|
+
#line 2737 "grammar.y"
|
8114
8113
|
{(yyval.node) = NEW_IVAR((yyvsp[(1) - (1)].id));;}
|
8115
8114
|
break;
|
8116
8115
|
|
8117
8116
|
case 492:
|
8118
|
-
#line
|
8117
|
+
#line 2738 "grammar.y"
|
8119
8118
|
{(yyval.node) = NEW_CVAR((yyvsp[(1) - (1)].id));;}
|
8120
8119
|
break;
|
8121
8120
|
|
8122
8121
|
case 494:
|
8123
|
-
#line
|
8122
|
+
#line 2743 "grammar.y"
|
8124
8123
|
{
|
8125
8124
|
lex_state = EXPR_END;
|
8126
8125
|
(yyval.id) = (yyvsp[(2) - (2)].id);
|
@@ -8128,7 +8127,7 @@ yyreduce:
|
|
8128
8127
|
break;
|
8129
8128
|
|
8130
8129
|
case 499:
|
8131
|
-
#line
|
8130
|
+
#line 2756 "grammar.y"
|
8132
8131
|
{
|
8133
8132
|
lex_state = EXPR_END;
|
8134
8133
|
// TODO dsym_node($2);
|
@@ -8155,49 +8154,49 @@ yyreduce:
|
|
8155
8154
|
break;
|
8156
8155
|
|
8157
8156
|
case 501:
|
8158
|
-
#line
|
8157
|
+
#line 2783 "grammar.y"
|
8159
8158
|
{
|
8160
8159
|
(yyval.node) = negate_lit((yyvsp[(2) - (2)].node));
|
8161
8160
|
;}
|
8162
8161
|
break;
|
8163
8162
|
|
8164
8163
|
case 511:
|
8165
|
-
#line
|
8164
|
+
#line 2801 "grammar.y"
|
8166
8165
|
{(yyval.id) = keyword_nil;;}
|
8167
8166
|
break;
|
8168
8167
|
|
8169
8168
|
case 512:
|
8170
|
-
#line
|
8169
|
+
#line 2802 "grammar.y"
|
8171
8170
|
{(yyval.id) = keyword_self;;}
|
8172
8171
|
break;
|
8173
8172
|
|
8174
8173
|
case 513:
|
8175
|
-
#line
|
8174
|
+
#line 2803 "grammar.y"
|
8176
8175
|
{(yyval.id) = keyword_true;;}
|
8177
8176
|
break;
|
8178
8177
|
|
8179
8178
|
case 514:
|
8180
|
-
#line
|
8179
|
+
#line 2804 "grammar.y"
|
8181
8180
|
{(yyval.id) = keyword_false;;}
|
8182
8181
|
break;
|
8183
8182
|
|
8184
8183
|
case 515:
|
8185
|
-
#line
|
8184
|
+
#line 2805 "grammar.y"
|
8186
8185
|
{(yyval.id) = keyword__FILE__;;}
|
8187
8186
|
break;
|
8188
8187
|
|
8189
8188
|
case 516:
|
8190
|
-
#line
|
8189
|
+
#line 2806 "grammar.y"
|
8191
8190
|
{(yyval.id) = keyword__LINE__;;}
|
8192
8191
|
break;
|
8193
8192
|
|
8194
8193
|
case 517:
|
8195
|
-
#line
|
8194
|
+
#line 2807 "grammar.y"
|
8196
8195
|
{(yyval.id) = keyword__ENCODING__;;}
|
8197
8196
|
break;
|
8198
8197
|
|
8199
8198
|
case 518:
|
8200
|
-
#line
|
8199
|
+
#line 2811 "grammar.y"
|
8201
8200
|
{
|
8202
8201
|
if(!((yyval.node) = gettable((yyvsp[(1) - (1)].id)))) {
|
8203
8202
|
(yyval.node) = NEW_BEGIN(0);
|
@@ -8206,7 +8205,7 @@ yyreduce:
|
|
8206
8205
|
break;
|
8207
8206
|
|
8208
8207
|
case 519:
|
8209
|
-
#line
|
8208
|
+
#line 2817 "grammar.y"
|
8210
8209
|
{
|
8211
8210
|
if(!((yyval.node) = gettable((yyvsp[(1) - (1)].id)))) {
|
8212
8211
|
(yyval.node) = NEW_BEGIN(0);
|
@@ -8215,28 +8214,28 @@ yyreduce:
|
|
8215
8214
|
break;
|
8216
8215
|
|
8217
8216
|
case 520:
|
8218
|
-
#line
|
8217
|
+
#line 2825 "grammar.y"
|
8219
8218
|
{
|
8220
8219
|
(yyval.node) = assignable((yyvsp[(1) - (1)].id), 0);
|
8221
8220
|
;}
|
8222
8221
|
break;
|
8223
8222
|
|
8224
8223
|
case 521:
|
8225
|
-
#line
|
8224
|
+
#line 2829 "grammar.y"
|
8226
8225
|
{
|
8227
8226
|
(yyval.node) = assignable((yyvsp[(1) - (1)].id), 0);
|
8228
8227
|
;}
|
8229
8228
|
break;
|
8230
8229
|
|
8231
8230
|
case 524:
|
8232
|
-
#line
|
8231
|
+
#line 2839 "grammar.y"
|
8233
8232
|
{
|
8234
8233
|
(yyval.node) = 0;
|
8235
8234
|
;}
|
8236
8235
|
break;
|
8237
8236
|
|
8238
8237
|
case 525:
|
8239
|
-
#line
|
8238
|
+
#line 2843 "grammar.y"
|
8240
8239
|
{
|
8241
8240
|
lex_state = EXPR_BEG;
|
8242
8241
|
command_start = TRUE;
|
@@ -8244,14 +8243,14 @@ yyreduce:
|
|
8244
8243
|
break;
|
8245
8244
|
|
8246
8245
|
case 526:
|
8247
|
-
#line
|
8246
|
+
#line 2848 "grammar.y"
|
8248
8247
|
{
|
8249
8248
|
(yyval.node) = (yyvsp[(3) - (4)].node);
|
8250
8249
|
;}
|
8251
8250
|
break;
|
8252
8251
|
|
8253
8252
|
case 527:
|
8254
|
-
#line
|
8253
|
+
#line 2852 "grammar.y"
|
8255
8254
|
{
|
8256
8255
|
yyerrok;
|
8257
8256
|
(yyval.node) = 0;
|
@@ -8259,7 +8258,7 @@ yyreduce:
|
|
8259
8258
|
break;
|
8260
8259
|
|
8261
8260
|
case 528:
|
8262
|
-
#line
|
8261
|
+
#line 2859 "grammar.y"
|
8263
8262
|
{
|
8264
8263
|
(yyval.node) = (yyvsp[(2) - (3)].node);
|
8265
8264
|
lex_state = EXPR_BEG;
|
@@ -8268,7 +8267,7 @@ yyreduce:
|
|
8268
8267
|
break;
|
8269
8268
|
|
8270
8269
|
case 529:
|
8271
|
-
#line
|
8270
|
+
#line 2865 "grammar.y"
|
8272
8271
|
{
|
8273
8272
|
(yyval.node) = (yyvsp[(1) - (2)].node);
|
8274
8273
|
lex_state = EXPR_BEG;
|
@@ -8277,147 +8276,147 @@ yyreduce:
|
|
8277
8276
|
break;
|
8278
8277
|
|
8279
8278
|
case 530:
|
8280
|
-
#line
|
8279
|
+
#line 2873 "grammar.y"
|
8281
8280
|
{
|
8282
8281
|
(yyval.node) = new_args_tail((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].id), (yyvsp[(4) - (4)].id));
|
8283
8282
|
;}
|
8284
8283
|
break;
|
8285
8284
|
|
8286
8285
|
case 531:
|
8287
|
-
#line
|
8286
|
+
#line 2877 "grammar.y"
|
8288
8287
|
{
|
8289
8288
|
(yyval.node) = new_args_tail((yyvsp[(1) - (2)].node), 0, (yyvsp[(2) - (2)].id));
|
8290
8289
|
;}
|
8291
8290
|
break;
|
8292
8291
|
|
8293
8292
|
case 532:
|
8294
|
-
#line
|
8293
|
+
#line 2881 "grammar.y"
|
8295
8294
|
{
|
8296
8295
|
(yyval.node) = new_args_tail(0, (yyvsp[(1) - (2)].id), (yyvsp[(2) - (2)].id));
|
8297
8296
|
;}
|
8298
8297
|
break;
|
8299
8298
|
|
8300
8299
|
case 533:
|
8301
|
-
#line
|
8300
|
+
#line 2885 "grammar.y"
|
8302
8301
|
{
|
8303
8302
|
(yyval.node) = new_args_tail(0, 0, (yyvsp[(1) - (1)].id));
|
8304
8303
|
;}
|
8305
8304
|
break;
|
8306
8305
|
|
8307
8306
|
case 534:
|
8308
|
-
#line
|
8307
|
+
#line 2891 "grammar.y"
|
8309
8308
|
{
|
8310
8309
|
(yyval.node) = (yyvsp[(2) - (2)].node);
|
8311
8310
|
;}
|
8312
8311
|
break;
|
8313
8312
|
|
8314
8313
|
case 535:
|
8315
|
-
#line
|
8314
|
+
#line 2895 "grammar.y"
|
8316
8315
|
{
|
8317
8316
|
(yyval.node) = new_args_tail(0, 0, 0);
|
8318
8317
|
;}
|
8319
8318
|
break;
|
8320
8319
|
|
8321
8320
|
case 536:
|
8322
|
-
#line
|
8321
|
+
#line 2901 "grammar.y"
|
8323
8322
|
{
|
8324
8323
|
(yyval.node) = new_args((yyvsp[(1) - (6)].node), (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].id), 0, (yyvsp[(6) - (6)].node));
|
8325
8324
|
;}
|
8326
8325
|
break;
|
8327
8326
|
|
8328
8327
|
case 537:
|
8329
|
-
#line
|
8328
|
+
#line 2905 "grammar.y"
|
8330
8329
|
{
|
8331
8330
|
(yyval.node) = new_args((yyvsp[(1) - (8)].node), (yyvsp[(3) - (8)].node), (yyvsp[(5) - (8)].id), (yyvsp[(7) - (8)].node), (yyvsp[(8) - (8)].node));
|
8332
8331
|
;}
|
8333
8332
|
break;
|
8334
8333
|
|
8335
8334
|
case 538:
|
8336
|
-
#line
|
8335
|
+
#line 2909 "grammar.y"
|
8337
8336
|
{
|
8338
8337
|
(yyval.node) = new_args((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node), 0, 0, (yyvsp[(4) - (4)].node));
|
8339
8338
|
;}
|
8340
8339
|
break;
|
8341
8340
|
|
8342
8341
|
case 539:
|
8343
|
-
#line
|
8342
|
+
#line 2913 "grammar.y"
|
8344
8343
|
{
|
8345
8344
|
(yyval.node) = new_args((yyvsp[(1) - (6)].node), (yyvsp[(3) - (6)].node), 0, (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
|
8346
8345
|
;}
|
8347
8346
|
break;
|
8348
8347
|
|
8349
8348
|
case 540:
|
8350
|
-
#line
|
8349
|
+
#line 2917 "grammar.y"
|
8351
8350
|
{
|
8352
8351
|
(yyval.node) = new_args((yyvsp[(1) - (4)].node), 0, (yyvsp[(3) - (4)].id), 0, (yyvsp[(4) - (4)].node));
|
8353
8352
|
;}
|
8354
8353
|
break;
|
8355
8354
|
|
8356
8355
|
case 541:
|
8357
|
-
#line
|
8356
|
+
#line 2921 "grammar.y"
|
8358
8357
|
{
|
8359
8358
|
(yyval.node) = new_args((yyvsp[(1) - (6)].node), 0, (yyvsp[(3) - (6)].id), (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
|
8360
8359
|
;}
|
8361
8360
|
break;
|
8362
8361
|
|
8363
8362
|
case 542:
|
8364
|
-
#line
|
8363
|
+
#line 2925 "grammar.y"
|
8365
8364
|
{
|
8366
8365
|
(yyval.node) = new_args((yyvsp[(1) - (2)].node), 0, 0, 0, (yyvsp[(2) - (2)].node));
|
8367
8366
|
;}
|
8368
8367
|
break;
|
8369
8368
|
|
8370
8369
|
case 543:
|
8371
|
-
#line
|
8370
|
+
#line 2929 "grammar.y"
|
8372
8371
|
{
|
8373
8372
|
(yyval.node) = new_args(0, (yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].id), 0, (yyvsp[(4) - (4)].node));
|
8374
8373
|
;}
|
8375
8374
|
break;
|
8376
8375
|
|
8377
8376
|
case 544:
|
8378
|
-
#line
|
8377
|
+
#line 2933 "grammar.y"
|
8379
8378
|
{
|
8380
8379
|
(yyval.node) = new_args(0, (yyvsp[(1) - (6)].node), (yyvsp[(3) - (6)].id), (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
|
8381
8380
|
;}
|
8382
8381
|
break;
|
8383
8382
|
|
8384
8383
|
case 545:
|
8385
|
-
#line
|
8384
|
+
#line 2937 "grammar.y"
|
8386
8385
|
{
|
8387
8386
|
(yyval.node) = new_args(0, (yyvsp[(1) - (2)].node), 0, 0, (yyvsp[(2) - (2)].node));
|
8388
8387
|
;}
|
8389
8388
|
break;
|
8390
8389
|
|
8391
8390
|
case 546:
|
8392
|
-
#line
|
8391
|
+
#line 2941 "grammar.y"
|
8393
8392
|
{
|
8394
8393
|
(yyval.node) = new_args(0, (yyvsp[(1) - (4)].node), 0, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
|
8395
8394
|
;}
|
8396
8395
|
break;
|
8397
8396
|
|
8398
8397
|
case 547:
|
8399
|
-
#line
|
8398
|
+
#line 2945 "grammar.y"
|
8400
8399
|
{
|
8401
8400
|
(yyval.node) = new_args(0, 0, (yyvsp[(1) - (2)].id), 0, (yyvsp[(2) - (2)].node));
|
8402
8401
|
;}
|
8403
8402
|
break;
|
8404
8403
|
|
8405
8404
|
case 548:
|
8406
|
-
#line
|
8405
|
+
#line 2949 "grammar.y"
|
8407
8406
|
{
|
8408
8407
|
(yyval.node) = new_args(0, 0, (yyvsp[(1) - (4)].id), (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
|
8409
8408
|
;}
|
8410
8409
|
break;
|
8411
8410
|
|
8412
8411
|
case 549:
|
8413
|
-
#line
|
8412
|
+
#line 2953 "grammar.y"
|
8414
8413
|
{
|
8415
8414
|
(yyval.node) = new_args(0, 0, 0, 0, (yyvsp[(1) - (1)].node));
|
8416
8415
|
;}
|
8417
8416
|
break;
|
8418
8417
|
|
8419
8418
|
case 550:
|
8420
|
-
#line
|
8419
|
+
#line 2957 "grammar.y"
|
8421
8420
|
{
|
8422
8421
|
(yyval.node) = new_args_tail(0, 0, 0);
|
8423
8422
|
(yyval.node) = new_args(0, 0, 0, 0, (yyval.node));
|
@@ -8425,7 +8424,7 @@ yyreduce:
|
|
8425
8424
|
break;
|
8426
8425
|
|
8427
8426
|
case 551:
|
8428
|
-
#line
|
8427
|
+
#line 2964 "grammar.y"
|
8429
8428
|
{
|
8430
8429
|
yy_error("formal argument cannot be a constant");
|
8431
8430
|
(yyval.id) = 0;
|
@@ -8433,7 +8432,7 @@ yyreduce:
|
|
8433
8432
|
break;
|
8434
8433
|
|
8435
8434
|
case 552:
|
8436
|
-
#line
|
8435
|
+
#line 2969 "grammar.y"
|
8437
8436
|
{
|
8438
8437
|
yy_error("formal argument cannot be an instance variable");
|
8439
8438
|
(yyval.id) = 0;
|
@@ -8441,7 +8440,7 @@ yyreduce:
|
|
8441
8440
|
break;
|
8442
8441
|
|
8443
8442
|
case 553:
|
8444
|
-
#line
|
8443
|
+
#line 2974 "grammar.y"
|
8445
8444
|
{
|
8446
8445
|
yy_error("formal argument cannot be a global variable");
|
8447
8446
|
(yyval.id) = 0;
|
@@ -8449,7 +8448,7 @@ yyreduce:
|
|
8449
8448
|
break;
|
8450
8449
|
|
8451
8450
|
case 554:
|
8452
|
-
#line
|
8451
|
+
#line 2979 "grammar.y"
|
8453
8452
|
{
|
8454
8453
|
yy_error("formal argument cannot be a class variable");
|
8455
8454
|
(yyval.id) = 0;
|
@@ -8457,7 +8456,7 @@ yyreduce:
|
|
8457
8456
|
break;
|
8458
8457
|
|
8459
8458
|
case 556:
|
8460
|
-
#line
|
8459
|
+
#line 2987 "grammar.y"
|
8461
8460
|
{
|
8462
8461
|
formal_argument(get_id((yyvsp[(1) - (1)].id)));
|
8463
8462
|
(yyval.id) = (yyvsp[(1) - (1)].id);
|
@@ -8465,7 +8464,7 @@ yyreduce:
|
|
8465
8464
|
break;
|
8466
8465
|
|
8467
8466
|
case 557:
|
8468
|
-
#line
|
8467
|
+
#line 2994 "grammar.y"
|
8469
8468
|
{
|
8470
8469
|
arg_var(get_id((yyvsp[(1) - (1)].id)));
|
8471
8470
|
(yyval.node) = NEW_ARGS_AUX((yyvsp[(1) - (1)].id), 1);
|
@@ -8473,7 +8472,7 @@ yyreduce:
|
|
8473
8472
|
break;
|
8474
8473
|
|
8475
8474
|
case 558:
|
8476
|
-
#line
|
8475
|
+
#line 2999 "grammar.y"
|
8477
8476
|
{
|
8478
8477
|
ID tid = internal_id();
|
8479
8478
|
arg_var(tid);
|
@@ -8484,7 +8483,7 @@ yyreduce:
|
|
8484
8483
|
break;
|
8485
8484
|
|
8486
8485
|
case 560:
|
8487
|
-
#line
|
8486
|
+
#line 3010 "grammar.y"
|
8488
8487
|
{
|
8489
8488
|
(yyval.node) = (yyvsp[(1) - (3)].node);
|
8490
8489
|
(yyval.node)->nd_plen++;
|
@@ -8493,7 +8492,7 @@ yyreduce:
|
|
8493
8492
|
break;
|
8494
8493
|
|
8495
8494
|
case 561:
|
8496
|
-
#line
|
8495
|
+
#line 3018 "grammar.y"
|
8497
8496
|
{
|
8498
8497
|
arg_var(formal_argument(get_id((yyvsp[(1) - (1)].id))));
|
8499
8498
|
(yyval.id) = (yyvsp[(1) - (1)].id);
|
@@ -8501,7 +8500,7 @@ yyreduce:
|
|
8501
8500
|
break;
|
8502
8501
|
|
8503
8502
|
case 562:
|
8504
|
-
#line
|
8503
|
+
#line 3025 "grammar.y"
|
8505
8504
|
{
|
8506
8505
|
(yyval.node) = assignable((yyvsp[(1) - (2)].id), (yyvsp[(2) - (2)].node));
|
8507
8506
|
(yyval.node) = NEW_KW_ARG(0, (yyval.node));
|
@@ -8509,7 +8508,7 @@ yyreduce:
|
|
8509
8508
|
break;
|
8510
8509
|
|
8511
8510
|
case 563:
|
8512
|
-
#line
|
8511
|
+
#line 3030 "grammar.y"
|
8513
8512
|
{
|
8514
8513
|
(yyval.node) = assignable((yyvsp[(1) - (1)].id), NEW_REQ_KW);
|
8515
8514
|
(yyval.node) = NEW_KW_ARG(0, (yyval.node));
|
@@ -8517,7 +8516,7 @@ yyreduce:
|
|
8517
8516
|
break;
|
8518
8517
|
|
8519
8518
|
case 564:
|
8520
|
-
#line
|
8519
|
+
#line 3037 "grammar.y"
|
8521
8520
|
{
|
8522
8521
|
(yyval.node) = assignable((yyvsp[(1) - (2)].id), (yyvsp[(2) - (2)].node));
|
8523
8522
|
(yyval.node) = NEW_KW_ARG(0, (yyval.node));
|
@@ -8525,7 +8524,7 @@ yyreduce:
|
|
8525
8524
|
break;
|
8526
8525
|
|
8527
8526
|
case 565:
|
8528
|
-
#line
|
8527
|
+
#line 3042 "grammar.y"
|
8529
8528
|
{
|
8530
8529
|
(yyval.node) = assignable((yyvsp[(1) - (1)].id), NEW_REQ_KW);
|
8531
8530
|
(yyval.node) = NEW_KW_ARG(0, (yyval.node));
|
@@ -8533,14 +8532,14 @@ yyreduce:
|
|
8533
8532
|
break;
|
8534
8533
|
|
8535
8534
|
case 566:
|
8536
|
-
#line
|
8535
|
+
#line 3049 "grammar.y"
|
8537
8536
|
{
|
8538
8537
|
(yyval.node) = (yyvsp[(1) - (1)].node);
|
8539
8538
|
;}
|
8540
8539
|
break;
|
8541
8540
|
|
8542
8541
|
case 567:
|
8543
|
-
#line
|
8542
|
+
#line 3053 "grammar.y"
|
8544
8543
|
{
|
8545
8544
|
NODE *kws = (yyvsp[(1) - (3)].node);
|
8546
8545
|
while (kws->nd_next) {
|
@@ -8552,14 +8551,14 @@ yyreduce:
|
|
8552
8551
|
break;
|
8553
8552
|
|
8554
8553
|
case 568:
|
8555
|
-
#line
|
8554
|
+
#line 3064 "grammar.y"
|
8556
8555
|
{
|
8557
8556
|
(yyval.node) = (yyvsp[(1) - (1)].node);
|
8558
8557
|
;}
|
8559
8558
|
break;
|
8560
8559
|
|
8561
8560
|
case 569:
|
8562
|
-
#line
|
8561
|
+
#line 3068 "grammar.y"
|
8563
8562
|
{
|
8564
8563
|
NODE *kws = (yyvsp[(1) - (3)].node);
|
8565
8564
|
while (kws->nd_next) {
|
@@ -8571,7 +8570,7 @@ yyreduce:
|
|
8571
8570
|
break;
|
8572
8571
|
|
8573
8572
|
case 572:
|
8574
|
-
#line
|
8573
|
+
#line 3083 "grammar.y"
|
8575
8574
|
{
|
8576
8575
|
shadowing_lvar(get_id((yyvsp[(2) - (2)].id)));
|
8577
8576
|
(yyval.id) = (yyvsp[(2) - (2)].id);
|
@@ -8579,14 +8578,14 @@ yyreduce:
|
|
8579
8578
|
break;
|
8580
8579
|
|
8581
8580
|
case 573:
|
8582
|
-
#line
|
8581
|
+
#line 3088 "grammar.y"
|
8583
8582
|
{
|
8584
8583
|
(yyval.id) = internal_id();
|
8585
8584
|
;}
|
8586
8585
|
break;
|
8587
8586
|
|
8588
8587
|
case 574:
|
8589
|
-
#line
|
8588
|
+
#line 3094 "grammar.y"
|
8590
8589
|
{
|
8591
8590
|
arg_var(get_id((yyvsp[(1) - (3)].id)));
|
8592
8591
|
(yyval.node) = assignable((yyvsp[(1) - (3)].id), (yyvsp[(3) - (3)].node));
|
@@ -8595,7 +8594,7 @@ yyreduce:
|
|
8595
8594
|
break;
|
8596
8595
|
|
8597
8596
|
case 575:
|
8598
|
-
#line
|
8597
|
+
#line 3102 "grammar.y"
|
8599
8598
|
{
|
8600
8599
|
arg_var(get_id((yyvsp[(1) - (3)].id)));
|
8601
8600
|
(yyval.node) = assignable((yyvsp[(1) - (3)].id), (yyvsp[(3) - (3)].node));
|
@@ -8604,14 +8603,14 @@ yyreduce:
|
|
8604
8603
|
break;
|
8605
8604
|
|
8606
8605
|
case 576:
|
8607
|
-
#line
|
8606
|
+
#line 3110 "grammar.y"
|
8608
8607
|
{
|
8609
8608
|
(yyval.node) = (yyvsp[(1) - (1)].node);
|
8610
8609
|
;}
|
8611
8610
|
break;
|
8612
8611
|
|
8613
8612
|
case 577:
|
8614
|
-
#line
|
8613
|
+
#line 3114 "grammar.y"
|
8615
8614
|
{
|
8616
8615
|
NODE *opts = (yyvsp[(1) - (3)].node);
|
8617
8616
|
while(opts->nd_next) {
|
@@ -8623,14 +8622,14 @@ yyreduce:
|
|
8623
8622
|
break;
|
8624
8623
|
|
8625
8624
|
case 578:
|
8626
|
-
#line
|
8625
|
+
#line 3125 "grammar.y"
|
8627
8626
|
{
|
8628
8627
|
(yyval.node) = (yyvsp[(1) - (1)].node);
|
8629
8628
|
;}
|
8630
8629
|
break;
|
8631
8630
|
|
8632
8631
|
case 579:
|
8633
|
-
#line
|
8632
|
+
#line 3129 "grammar.y"
|
8634
8633
|
{
|
8635
8634
|
NODE *opts = (yyvsp[(1) - (3)].node);
|
8636
8635
|
while(opts->nd_next) {
|
@@ -8642,7 +8641,7 @@ yyreduce:
|
|
8642
8641
|
break;
|
8643
8642
|
|
8644
8643
|
case 582:
|
8645
|
-
#line
|
8644
|
+
#line 3144 "grammar.y"
|
8646
8645
|
{
|
8647
8646
|
if(!is_local_id((yyvsp[(2) - (2)].id))) {
|
8648
8647
|
yy_error("rest argument must be local variable");
|
@@ -8653,7 +8652,7 @@ yyreduce:
|
|
8653
8652
|
break;
|
8654
8653
|
|
8655
8654
|
case 583:
|
8656
|
-
#line
|
8655
|
+
#line 3152 "grammar.y"
|
8657
8656
|
{
|
8658
8657
|
(yyval.id) = internal_id();
|
8659
8658
|
arg_var((yyval.id));
|
@@ -8661,7 +8660,7 @@ yyreduce:
|
|
8661
8660
|
break;
|
8662
8661
|
|
8663
8662
|
case 586:
|
8664
|
-
#line
|
8663
|
+
#line 3163 "grammar.y"
|
8665
8664
|
{
|
8666
8665
|
if(!is_local_id((yyvsp[(2) - (2)].id)))
|
8667
8666
|
yy_error("block argument must be local variable");
|
@@ -8673,21 +8672,21 @@ yyreduce:
|
|
8673
8672
|
break;
|
8674
8673
|
|
8675
8674
|
case 587:
|
8676
|
-
#line
|
8675
|
+
#line 3174 "grammar.y"
|
8677
8676
|
{
|
8678
8677
|
(yyval.id) = (yyvsp[(2) - (2)].id);
|
8679
8678
|
;}
|
8680
8679
|
break;
|
8681
8680
|
|
8682
8681
|
case 588:
|
8683
|
-
#line
|
8682
|
+
#line 3178 "grammar.y"
|
8684
8683
|
{
|
8685
8684
|
(yyval.id) = 0;
|
8686
8685
|
;}
|
8687
8686
|
break;
|
8688
8687
|
|
8689
8688
|
case 589:
|
8690
|
-
#line
|
8689
|
+
#line 3184 "grammar.y"
|
8691
8690
|
{
|
8692
8691
|
value_expr((yyvsp[(1) - (1)].node));
|
8693
8692
|
(yyval.node) = (yyvsp[(1) - (1)].node);
|
@@ -8696,12 +8695,12 @@ yyreduce:
|
|
8696
8695
|
break;
|
8697
8696
|
|
8698
8697
|
case 590:
|
8699
|
-
#line
|
8698
|
+
#line 3189 "grammar.y"
|
8700
8699
|
{lex_state = EXPR_BEG;;}
|
8701
8700
|
break;
|
8702
8701
|
|
8703
8702
|
case 591:
|
8704
|
-
#line
|
8703
|
+
#line 3190 "grammar.y"
|
8705
8704
|
{
|
8706
8705
|
if((yyvsp[(3) - (4)].node) == 0) {
|
8707
8706
|
yy_error("can't define singleton method for ().");
|
@@ -8726,58 +8725,58 @@ yyreduce:
|
|
8726
8725
|
break;
|
8727
8726
|
|
8728
8727
|
case 593:
|
8729
|
-
#line
|
8728
|
+
#line 3215 "grammar.y"
|
8730
8729
|
{
|
8731
8730
|
(yyval.node) = (yyvsp[(1) - (2)].node);
|
8732
8731
|
;}
|
8733
8732
|
break;
|
8734
8733
|
|
8735
8734
|
case 595:
|
8736
|
-
#line
|
8735
|
+
#line 3222 "grammar.y"
|
8737
8736
|
{
|
8738
8737
|
(yyval.node) = list_concat((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
|
8739
8738
|
;}
|
8740
8739
|
break;
|
8741
8740
|
|
8742
8741
|
case 596:
|
8743
|
-
#line
|
8742
|
+
#line 3228 "grammar.y"
|
8744
8743
|
{
|
8745
8744
|
(yyval.node) = list_append(NEW_LIST((yyvsp[(1) - (3)].node)), (yyvsp[(3) - (3)].node));
|
8746
8745
|
;}
|
8747
8746
|
break;
|
8748
8747
|
|
8749
8748
|
case 597:
|
8750
|
-
#line
|
8749
|
+
#line 3232 "grammar.y"
|
8751
8750
|
{
|
8752
8751
|
(yyval.node) = list_append(NEW_LIST(NEW_LIT(ID2SYM((yyvsp[(1) - (2)].id)))), (yyvsp[(2) - (2)].node));
|
8753
8752
|
;}
|
8754
8753
|
break;
|
8755
8754
|
|
8756
8755
|
case 598:
|
8757
|
-
#line
|
8756
|
+
#line 3236 "grammar.y"
|
8758
8757
|
{
|
8759
8758
|
(yyval.node) = list_append(NEW_LIST(0), (yyvsp[(2) - (2)].node));
|
8760
8759
|
;}
|
8761
8760
|
break;
|
8762
8761
|
|
8763
8762
|
case 620:
|
8764
|
-
#line
|
8763
|
+
#line 3280 "grammar.y"
|
8765
8764
|
{yyerrok;;}
|
8766
8765
|
break;
|
8767
8766
|
|
8768
8767
|
case 623:
|
8769
|
-
#line
|
8768
|
+
#line 3285 "grammar.y"
|
8770
8769
|
{yyerrok;;}
|
8771
8770
|
break;
|
8772
8771
|
|
8773
8772
|
case 624:
|
8774
|
-
#line
|
8773
|
+
#line 3288 "grammar.y"
|
8775
8774
|
{(yyval.node) = 0;;}
|
8776
8775
|
break;
|
8777
8776
|
|
8778
8777
|
|
8779
8778
|
/* Line 1267 of yacc.c. */
|
8780
|
-
#line
|
8779
|
+
#line 8780 "grammar.cpp"
|
8781
8780
|
default: break;
|
8782
8781
|
}
|
8783
8782
|
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
|
@@ -8991,7 +8990,7 @@ yyreturn:
|
|
8991
8990
|
}
|
8992
8991
|
|
8993
8992
|
|
8994
|
-
#line
|
8993
|
+
#line 3290 "grammar.y"
|
8995
8994
|
|
8996
8995
|
|
8997
8996
|
#undef parser
|
@@ -13010,12 +13009,15 @@ parser_negate_lit(rb_parser_state* parser_state, NODE *node)
|
|
13010
13009
|
case T_FIXNUM:
|
13011
13010
|
node->nd_lit = LONG2FIX(-FIX2LONG(node->nd_lit));
|
13012
13011
|
break;
|
13012
|
+
case T_BIGNUM:
|
13013
|
+
case T_RATIONAL:
|
13014
|
+
case T_COMPLEX:
|
13015
|
+
node->nd_lit = REF(rb_funcall(node->nd_lit, rb_intern("-@"), 0, 0));
|
13016
|
+
break;
|
13013
13017
|
case T_FLOAT:
|
13014
13018
|
node->nd_lit = REF(rb_float_new(-NUM2DBL(node->nd_lit)));
|
13015
13019
|
break;
|
13016
|
-
case T_BIGNUM:
|
13017
13020
|
default:
|
13018
|
-
node->nd_lit = REF(rb_funcall(node->nd_lit, rb_intern("-@"), 0, 0));
|
13019
13021
|
break;
|
13020
13022
|
}
|
13021
13023
|
return node;
|