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