diff options
Diffstat (limited to 'mrbgems/mruby-compiler/core')
| -rw-r--r-- | mrbgems/mruby-compiler/core/parse.y | 8 | ||||
| -rw-r--r-- | mrbgems/mruby-compiler/core/y.tab.c | 2518 |
2 files changed, 1275 insertions, 1251 deletions
diff --git a/mrbgems/mruby-compiler/core/parse.y b/mrbgems/mruby-compiler/core/parse.y index 6409f0b3d..557a8c5ac 100644 --- a/mrbgems/mruby-compiler/core/parse.y +++ b/mrbgems/mruby-compiler/core/parse.y @@ -2190,10 +2190,18 @@ arg : lhs '=' arg_rhs { $$ = new_dot2(p, $1, $3); } + | arg tDOT2 + { + $$ = new_dot2(p, $1, new_nil(p)); + } | arg tDOT3 arg { $$ = new_dot3(p, $1, $3); } + | arg tDOT3 + { + $$ = new_dot3(p, $1, new_nil(p)); + } | arg '+' arg { $$ = call_bin_op(p, $1, "+", $3); diff --git a/mrbgems/mruby-compiler/core/y.tab.c b/mrbgems/mruby-compiler/core/y.tab.c index becf886c5..07cb3ded5 100644 --- a/mrbgems/mruby-compiler/core/y.tab.c +++ b/mrbgems/mruby-compiler/core/y.tab.c @@ -1933,7 +1933,7 @@ union yyalloc /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 177 /* YYNRULES -- Number of rules. */ -#define YYNRULES 603 +#define YYNRULES 605 /* YYNSTATES -- Number of states. */ #define YYNSTATES 1054 @@ -2018,43 +2018,43 @@ static const yytype_int16 yyrline[] = 2201, 2205, 2209, 2213, 2217, 2221, 2225, 2229, 2233, 2237, 2241, 2245, 2249, 2253, 2257, 2261, 2265, 2269, 2273, 2277, 2281, 2285, 2289, 2293, 2297, 2301, 2305, 2309, 2313, 2317, - 2321, 2329, 2338, 2347, 2357, 2363, 2364, 2369, 2373, 2380, - 2384, 2392, 2396, 2422, 2423, 2426, 2427, 2428, 2433, 2438, - 2445, 2451, 2456, 2461, 2466, 2473, 2473, 2484, 2490, 2494, - 2500, 2501, 2504, 2510, 2516, 2521, 2528, 2533, 2538, 2545, - 2546, 2547, 2548, 2549, 2550, 2551, 2552, 2556, 2561, 2560, - 2572, 2576, 2571, 2581, 2581, 2585, 2589, 2593, 2597, 2602, - 2607, 2611, 2615, 2619, 2623, 2627, 2628, 2634, 2640, 2633, - 2652, 2660, 2668, 2668, 2668, 2675, 2675, 2675, 2682, 2688, - 2693, 2695, 2692, 2704, 2702, 2720, 2725, 2718, 2742, 2740, - 2756, 2766, 2777, 2781, 2785, 2789, 2795, 2802, 2803, 2804, - 2807, 2808, 2811, 2812, 2820, 2821, 2827, 2831, 2834, 2838, - 2842, 2846, 2851, 2855, 2859, 2863, 2869, 2868, 2878, 2882, - 2886, 2890, 2896, 2901, 2906, 2910, 2914, 2918, 2922, 2926, - 2930, 2934, 2938, 2942, 2946, 2950, 2954, 2958, 2962, 2968, - 2973, 2980, 2980, 2984, 2989, 2996, 3000, 3006, 3007, 3010, - 3015, 3018, 3022, 3028, 3032, 3039, 3038, 3053, 3063, 3067, - 3072, 3079, 3083, 3087, 3091, 3095, 3099, 3103, 3107, 3111, - 3118, 3117, 3132, 3131, 3147, 3155, 3164, 3167, 3174, 3177, - 3181, 3182, 3185, 3189, 3192, 3196, 3199, 3200, 3201, 3202, - 3205, 3206, 3212, 3213, 3214, 3218, 3224, 3225, 3231, 3236, - 3235, 3246, 3250, 3256, 3260, 3266, 3270, 3276, 3279, 3280, - 3283, 3289, 3295, 3296, 3299, 3306, 3305, 3319, 3323, 3330, - 3335, 3342, 3348, 3349, 3350, 3351, 3352, 3356, 3362, 3366, - 3372, 3373, 3374, 3378, 3384, 3388, 3392, 3396, 3400, 3406, - 3410, 3416, 3420, 3424, 3428, 3432, 3436, 3444, 3451, 3462, - 3463, 3467, 3471, 3470, 3486, 3492, 3512, 3513, 3519, 3525, - 3531, 3538, 3543, 3550, 3554, 3560, 3564, 3570, 3571, 3574, - 3578, 3584, 3588, 3592, 3596, 3602, 3607, 3612, 3616, 3620, + 2321, 2325, 2329, 2337, 2346, 2355, 2365, 2371, 2372, 2377, + 2381, 2388, 2392, 2400, 2404, 2430, 2431, 2434, 2435, 2436, + 2441, 2446, 2453, 2459, 2464, 2469, 2474, 2481, 2481, 2492, + 2498, 2502, 2508, 2509, 2512, 2518, 2524, 2529, 2536, 2541, + 2546, 2553, 2554, 2555, 2556, 2557, 2558, 2559, 2560, 2564, + 2569, 2568, 2580, 2584, 2579, 2589, 2589, 2593, 2597, 2601, + 2605, 2610, 2615, 2619, 2623, 2627, 2631, 2635, 2636, 2642, + 2648, 2641, 2660, 2668, 2676, 2676, 2676, 2683, 2683, 2683, + 2690, 2696, 2701, 2703, 2700, 2712, 2710, 2728, 2733, 2726, + 2750, 2748, 2764, 2774, 2785, 2789, 2793, 2797, 2803, 2810, + 2811, 2812, 2815, 2816, 2819, 2820, 2828, 2829, 2835, 2839, + 2842, 2846, 2850, 2854, 2859, 2863, 2867, 2871, 2877, 2876, + 2886, 2890, 2894, 2898, 2904, 2909, 2914, 2918, 2922, 2926, + 2930, 2934, 2938, 2942, 2946, 2950, 2954, 2958, 2962, 2966, + 2970, 2976, 2981, 2988, 2988, 2992, 2997, 3004, 3008, 3014, + 3015, 3018, 3023, 3026, 3030, 3036, 3040, 3047, 3046, 3061, + 3071, 3075, 3080, 3087, 3091, 3095, 3099, 3103, 3107, 3111, + 3115, 3119, 3126, 3125, 3140, 3139, 3155, 3163, 3172, 3175, + 3182, 3185, 3189, 3190, 3193, 3197, 3200, 3204, 3207, 3208, + 3209, 3210, 3213, 3214, 3220, 3221, 3222, 3226, 3232, 3233, + 3239, 3244, 3243, 3254, 3258, 3264, 3268, 3274, 3278, 3284, + 3287, 3288, 3291, 3297, 3303, 3304, 3307, 3314, 3313, 3327, + 3331, 3338, 3343, 3350, 3356, 3357, 3358, 3359, 3360, 3364, + 3370, 3374, 3380, 3381, 3382, 3386, 3392, 3396, 3400, 3404, + 3408, 3414, 3418, 3424, 3428, 3432, 3436, 3440, 3444, 3452, + 3459, 3470, 3471, 3475, 3479, 3478, 3494, 3500, 3520, 3521, + 3527, 3533, 3539, 3546, 3551, 3558, 3562, 3568, 3572, 3578, + 3579, 3582, 3586, 3592, 3596, 3600, 3604, 3610, 3615, 3620, 3624, 3628, 3632, 3636, 3640, 3644, 3648, 3652, 3656, 3660, - 3664, 3669, 3675, 3680, 3685, 3690, 3695, 3702, 3706, 3713, - 3718, 3717, 3729, 3733, 3739, 3747, 3755, 3763, 3767, 3773, - 3777, 3783, 3784, 3787, 3792, 3799, 3800, 3803, 3809, 3813, - 3819, 3824, 3824, 3849, 3850, 3856, 3861, 3867, 3868, 3871, - 3877, 3882, 3892, 3899, 3900, 3901, 3904, 3905, 3906, 3907, - 3910, 3911, 3912, 3915, 3916, 3919, 3923, 3929, 3930, 3936, - 3937, 3940, 3941, 3944, 3947, 3948, 3949, 3952, 3953, 3954, - 3957, 3964, 3965, 3969 + 3664, 3668, 3672, 3677, 3683, 3688, 3693, 3698, 3703, 3710, + 3714, 3721, 3726, 3725, 3737, 3741, 3747, 3755, 3763, 3771, + 3775, 3781, 3785, 3791, 3792, 3795, 3800, 3807, 3808, 3811, + 3817, 3821, 3827, 3832, 3832, 3857, 3858, 3864, 3869, 3875, + 3876, 3879, 3885, 3890, 3900, 3907, 3908, 3909, 3912, 3913, + 3914, 3915, 3918, 3919, 3920, 3923, 3924, 3927, 3931, 3937, + 3938, 3944, 3945, 3948, 3949, 3952, 3955, 3956, 3957, 3960, + 3961, 3962, 3965, 3972, 3973, 3977 }; #endif @@ -2153,7 +2153,7 @@ static const yytype_int16 yytoknum[] = #define yypact_value_is_default(Yyn) \ ((Yyn) == YYPACT_NINF) -#define YYTABLE_NINF (-604) +#define YYTABLE_NINF (-606) #define yytable_value_is_error(Yyn) \ ((Yyn) == YYTABLE_NINF) @@ -2275,19 +2275,19 @@ static const yytype_int16 yypact[] = means the default is an error. */ static const yytype_int16 yydefact[] = { - 2, 0, 0, 1, 0, 0, 0, 0, 288, 0, - 0, 312, 315, 0, 0, 589, 332, 333, 334, 335, - 300, 265, 408, 483, 482, 484, 485, 591, 0, 10, - 0, 487, 486, 488, 474, 287, 476, 475, 478, 477, - 470, 471, 432, 433, 489, 490, 286, 0, 0, 0, - 0, 290, 603, 603, 88, 307, 0, 0, 0, 0, - 0, 0, 447, 0, 0, 0, 3, 589, 6, 9, - 32, 27, 33, 531, 531, 49, 60, 59, 0, 76, - 0, 80, 90, 0, 54, 244, 0, 61, 305, 279, - 280, 430, 281, 282, 283, 428, 427, 459, 429, 426, - 481, 0, 284, 285, 265, 5, 8, 332, 333, 300, - 603, 408, 0, 113, 114, 286, 0, 0, 0, 0, - 531, 531, 116, 491, 336, 0, 481, 285, 0, 328, + 2, 0, 0, 1, 0, 0, 0, 0, 290, 0, + 0, 314, 317, 0, 0, 591, 334, 335, 336, 337, + 302, 267, 410, 485, 484, 486, 487, 593, 0, 10, + 0, 489, 488, 490, 476, 289, 478, 477, 480, 479, + 472, 473, 434, 435, 491, 492, 288, 0, 0, 0, + 0, 292, 605, 605, 88, 309, 0, 0, 0, 0, + 0, 0, 449, 0, 0, 0, 3, 591, 6, 9, + 32, 27, 33, 533, 533, 49, 60, 59, 0, 76, + 0, 80, 90, 0, 54, 246, 0, 61, 307, 281, + 282, 432, 283, 284, 285, 430, 429, 461, 431, 428, + 483, 0, 286, 287, 267, 5, 8, 334, 335, 302, + 605, 410, 0, 113, 114, 288, 0, 0, 0, 0, + 533, 533, 116, 493, 338, 0, 483, 287, 0, 330, 168, 178, 169, 165, 194, 195, 196, 197, 176, 191, 184, 174, 173, 189, 172, 171, 167, 192, 166, 179, 183, 185, 177, 170, 186, 193, 188, 187, 180, 190, @@ -2295,92 +2295,92 @@ static const yytype_int16 yydefact[] = 118, 120, 119, 153, 154, 149, 131, 132, 133, 140, 137, 139, 134, 135, 155, 156, 141, 142, 146, 150, 136, 138, 128, 129, 130, 143, 144, 145, 147, 148, - 151, 152, 157, 561, 55, 121, 122, 560, 0, 0, - 0, 58, 0, 0, 54, 0, 481, 0, 285, 0, - 0, 0, 112, 0, 347, 346, 0, 0, 104, 111, + 151, 152, 157, 563, 55, 121, 122, 562, 0, 0, + 0, 58, 0, 0, 54, 0, 483, 0, 287, 0, + 0, 0, 112, 0, 349, 348, 0, 0, 104, 111, 187, 180, 190, 175, 158, 159, 160, 118, 119, 0, - 123, 125, 20, 124, 450, 455, 454, 597, 600, 589, - 599, 0, 452, 0, 601, 598, 590, 573, 0, 0, - 0, 0, 260, 272, 74, 264, 603, 430, 603, 565, - 75, 73, 603, 254, 301, 72, 0, 253, 407, 71, - 589, 0, 592, 18, 0, 0, 217, 0, 218, 297, - 0, 0, 0, 589, 15, 589, 78, 14, 0, 589, - 0, 594, 594, 245, 0, 0, 594, 563, 0, 0, - 86, 0, 96, 103, 531, 464, 463, 465, 466, 0, - 462, 461, 445, 439, 438, 441, 0, 0, 436, 457, - 0, 468, 0, 434, 0, 443, 0, 472, 473, 53, - 232, 233, 4, 590, 0, 0, 0, 0, 0, 0, - 0, 0, 538, 534, 533, 532, 535, 536, 507, 540, - 552, 508, 556, 555, 551, 531, 496, 0, 500, 505, - 603, 510, 603, 530, 0, 537, 539, 542, 516, 0, - 549, 516, 554, 516, 0, 514, 496, 0, 395, 397, + 123, 125, 20, 124, 452, 457, 456, 599, 602, 591, + 601, 0, 454, 0, 603, 600, 592, 575, 0, 0, + 0, 0, 262, 274, 74, 266, 605, 432, 605, 567, + 75, 73, 605, 256, 303, 72, 0, 255, 409, 71, + 591, 0, 594, 18, 0, 0, 219, 0, 220, 299, + 0, 0, 0, 591, 15, 591, 78, 14, 0, 591, + 0, 596, 596, 247, 0, 0, 596, 565, 0, 0, + 86, 0, 96, 103, 533, 466, 465, 467, 468, 0, + 464, 463, 447, 441, 440, 443, 0, 0, 438, 459, + 0, 470, 0, 436, 0, 445, 0, 474, 475, 53, + 234, 235, 4, 592, 0, 0, 0, 0, 0, 0, + 0, 0, 540, 536, 535, 534, 537, 538, 509, 542, + 554, 510, 558, 557, 553, 533, 498, 0, 502, 507, + 605, 512, 605, 532, 0, 539, 541, 544, 518, 0, + 551, 518, 556, 518, 0, 516, 498, 0, 397, 399, 0, 92, 0, 84, 81, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 208, 210, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 586, 603, 585, 0, 588, 587, - 0, 412, 410, 306, 431, 0, 0, 401, 65, 304, - 325, 113, 114, 115, 472, 473, 496, 492, 323, 0, - 603, 0, 0, 0, 584, 583, 56, 0, 603, 297, - 338, 0, 337, 0, 0, 603, 0, 0, 0, 0, - 0, 0, 110, 0, 603, 0, 320, 0, 126, 0, - 0, 451, 453, 0, 0, 602, 567, 0, 273, 572, - 267, 0, 270, 261, 0, 269, 0, 262, 0, 589, - 0, 589, 603, 603, 255, 266, 589, 0, 303, 52, - 0, 0, 0, 0, 0, 0, 17, 589, 295, 13, - 590, 77, 291, 294, 298, 596, 246, 595, 596, 248, - 299, 564, 102, 94, 0, 89, 0, 0, 603, 0, - 531, 308, 392, 467, 0, 0, 442, 448, 446, 437, - 458, 469, 435, 444, 0, 0, 7, 21, 22, 23, - 24, 25, 37, 36, 50, 51, 498, 544, 0, 589, - 589, 0, 0, 499, 0, 512, 559, 509, 0, 513, - 497, 0, 523, 545, 0, 526, 553, 0, 528, 557, - 0, 0, 603, 0, 28, 30, 0, 31, 589, 0, - 82, 93, 48, 38, 46, 0, 249, 198, 29, 0, - 285, 214, 222, 227, 228, 229, 224, 226, 236, 237, - 230, 231, 207, 208, 234, 235, 35, 34, 591, 223, - 225, 219, 220, 221, 209, 210, 211, 212, 213, 576, - 581, 577, 582, 406, 265, 404, 0, 576, 578, 577, - 579, 405, 603, 576, 577, 265, 603, 603, 39, 249, + 0, 0, 0, 0, 588, 605, 587, 0, 590, 589, + 0, 414, 412, 308, 433, 0, 0, 403, 65, 306, + 327, 113, 114, 115, 474, 475, 498, 494, 325, 0, + 605, 0, 0, 0, 586, 585, 56, 0, 605, 299, + 340, 0, 339, 0, 0, 605, 0, 0, 0, 0, + 0, 0, 110, 0, 605, 0, 322, 0, 126, 0, + 0, 453, 455, 0, 0, 604, 569, 0, 275, 574, + 269, 0, 272, 263, 0, 271, 0, 264, 0, 591, + 0, 591, 605, 605, 257, 268, 591, 0, 305, 52, + 0, 0, 0, 0, 0, 0, 17, 591, 297, 13, + 592, 77, 293, 296, 300, 598, 248, 597, 598, 250, + 301, 566, 102, 94, 0, 89, 0, 0, 605, 0, + 533, 310, 394, 469, 0, 0, 444, 450, 448, 439, + 460, 471, 437, 446, 0, 0, 7, 21, 22, 23, + 24, 25, 37, 36, 50, 51, 500, 546, 0, 591, + 591, 0, 0, 501, 0, 514, 561, 511, 0, 515, + 499, 0, 525, 547, 0, 528, 555, 0, 530, 559, + 0, 0, 605, 0, 28, 30, 0, 31, 591, 0, + 82, 93, 48, 38, 46, 0, 251, 198, 29, 0, + 287, 216, 224, 229, 230, 231, 226, 228, 238, 239, + 232, 233, 207, 209, 236, 237, 35, 34, 593, 225, + 227, 221, 222, 223, 211, 212, 213, 214, 215, 578, + 583, 579, 584, 408, 267, 406, 0, 578, 580, 579, + 581, 407, 605, 578, 579, 267, 605, 605, 39, 251, 199, 45, 206, 63, 66, 0, 0, 0, 113, 114, - 117, 0, 0, 603, 0, 589, 0, 289, 603, 603, - 418, 603, 339, 580, 296, 0, 576, 577, 603, 341, - 313, 340, 316, 107, 109, 0, 106, 108, 0, 0, - 0, 0, 272, 0, 319, 568, 570, 569, 0, 0, - 274, 268, 603, 571, 566, 252, 251, 256, 257, 259, - 302, 593, 19, 0, 26, 205, 79, 16, 589, 594, - 95, 87, 99, 101, 0, 98, 100, 591, 0, 460, - 0, 449, 215, 216, 538, 355, 589, 348, 495, 494, - 240, 330, 0, 506, 603, 558, 515, 543, 516, 516, - 516, 550, 516, 538, 516, 242, 331, 383, 381, 0, - 380, 379, 278, 0, 91, 85, 0, 0, 0, 0, - 0, 603, 0, 0, 0, 0, 403, 69, 409, 0, - 0, 402, 67, 398, 62, 0, 0, 603, 326, 0, - 0, 409, 329, 562, 57, 419, 420, 603, 421, 0, - 603, 344, 0, 0, 342, 0, 0, 409, 0, 0, - 0, 0, 0, 105, 0, 127, 456, 318, 0, 0, - 271, 275, 263, 603, 11, 292, 247, 97, 0, 385, - 0, 0, 309, 440, 356, 353, 541, 0, 0, 511, - 0, 519, 0, 521, 0, 527, 0, 524, 529, 0, - 378, 591, 591, 502, 503, 603, 603, 363, 0, 547, - 363, 363, 361, 0, 0, 276, 83, 47, 250, 576, - 577, 0, 576, 577, 0, 0, 44, 203, 43, 204, - 70, 0, 41, 201, 42, 202, 68, 399, 400, 0, - 0, 0, 0, 493, 324, 0, 0, 423, 345, 0, - 12, 425, 0, 310, 0, 311, 0, 0, 321, 274, - 603, 258, 391, 0, 0, 0, 0, 0, 351, 241, - 516, 516, 516, 516, 243, 0, 0, 0, 501, 0, - 359, 360, 363, 371, 546, 0, 374, 0, 376, 396, - 277, 409, 239, 238, 40, 200, 413, 411, 0, 0, - 0, 422, 0, 104, 111, 0, 424, 0, 314, 317, - 0, 415, 416, 414, 389, 591, 387, 390, 394, 393, - 357, 354, 0, 349, 520, 0, 517, 522, 525, 384, - 382, 297, 0, 504, 603, 0, 362, 369, 363, 363, - 363, 548, 363, 363, 64, 327, 110, 0, 603, 0, - 603, 603, 0, 0, 386, 0, 352, 0, 516, 580, - 296, 358, 0, 366, 0, 368, 0, 375, 0, 372, - 377, 107, 109, 0, 576, 577, 417, 343, 322, 388, - 350, 518, 363, 363, 363, 363, 105, 367, 0, 364, - 370, 373, 363, 365 + 117, 0, 0, 605, 0, 591, 0, 291, 605, 605, + 420, 605, 341, 582, 298, 0, 578, 579, 605, 343, + 315, 342, 318, 107, 109, 0, 106, 108, 0, 0, + 0, 0, 274, 0, 321, 570, 572, 571, 0, 0, + 276, 270, 605, 573, 568, 254, 253, 258, 259, 261, + 304, 595, 19, 0, 26, 205, 79, 16, 591, 596, + 95, 87, 99, 101, 0, 98, 100, 593, 0, 462, + 0, 451, 217, 218, 540, 357, 591, 350, 497, 496, + 242, 332, 0, 508, 605, 560, 517, 545, 518, 518, + 518, 552, 518, 540, 518, 244, 333, 385, 383, 0, + 382, 381, 280, 0, 91, 85, 0, 0, 0, 0, + 0, 605, 0, 0, 0, 0, 405, 69, 411, 0, + 0, 404, 67, 400, 62, 0, 0, 605, 328, 0, + 0, 411, 331, 564, 57, 421, 422, 605, 423, 0, + 605, 346, 0, 0, 344, 0, 0, 411, 0, 0, + 0, 0, 0, 105, 0, 127, 458, 320, 0, 0, + 273, 277, 265, 605, 11, 294, 249, 97, 0, 387, + 0, 0, 311, 442, 358, 355, 543, 0, 0, 513, + 0, 521, 0, 523, 0, 529, 0, 526, 531, 0, + 380, 593, 593, 504, 505, 605, 605, 365, 0, 549, + 365, 365, 363, 0, 0, 278, 83, 47, 252, 578, + 579, 0, 578, 579, 0, 0, 44, 203, 43, 204, + 70, 0, 41, 201, 42, 202, 68, 401, 402, 0, + 0, 0, 0, 495, 326, 0, 0, 425, 347, 0, + 12, 427, 0, 312, 0, 313, 0, 0, 323, 276, + 605, 260, 393, 0, 0, 0, 0, 0, 353, 243, + 518, 518, 518, 518, 245, 0, 0, 0, 503, 0, + 361, 362, 365, 373, 548, 0, 376, 0, 378, 398, + 279, 411, 241, 240, 40, 200, 415, 413, 0, 0, + 0, 424, 0, 104, 111, 0, 426, 0, 316, 319, + 0, 417, 418, 416, 391, 593, 389, 392, 396, 395, + 359, 356, 0, 351, 522, 0, 519, 524, 527, 386, + 384, 299, 0, 506, 605, 0, 364, 371, 365, 365, + 365, 550, 365, 365, 64, 329, 110, 0, 605, 0, + 605, 605, 0, 0, 388, 0, 354, 0, 518, 582, + 298, 360, 0, 368, 0, 370, 0, 377, 0, 374, + 379, 107, 109, 0, 578, 579, 419, 345, 324, 390, + 352, 520, 365, 365, 365, 365, 105, 369, 0, 366, + 372, 375, 365, 367 }; /* YYPGOTO[NTERM-NUM]. */ @@ -2446,37 +2446,37 @@ static const yytype_int16 yytable[] = 120, 120, 711, 373, 373, 267, 267, 534, 120, 517, 731, 350, 351, 302, 306, 273, 278, 977, 277, 301, 840, 566, 350, 351, 890, 689, 438, 570, 884, 896, - 525, -480, 342, 3, 215, 547, 86, 644, 767, -479, + 525, -482, 342, 3, 215, 547, 86, 644, 767, -481, 809, 652, 483, 434, 655, 466, 646, 121, 121, 120, 387, 330, 332, 334, 336, 121, 475, 264, 270, -112, - 289, 271, 349, 1001, 1013, 673, 292, -104, 432, -483, + 289, 271, 349, 1001, 1013, 673, 292, -104, 432, -485, 248, 672, 549, 775, 272, 549, 120, 549, 644, 549, 652, 549, 768, 567, 391, 432, 685, 244, -96, 673, - 245, 246, 885, 337, 338, 695, 121, 387, 437, -296, - 752, 388, 841, -479, 273, 278, 868, 977, -482, 868, - 598, 244, -296, -296, 245, 246, 390, 514, 247, -77, - 248, 358, 437, 121, 285, -483, -296, 86, 673, 444, - 445, -104, 901, -484, 292, 812, 809, -485, 215, 215, - -91, 539, 247, 395, 248, -487, 272, 533, -296, 361, - 362, 602, -577, 673, 983, -296, 362, 470, 471, 734, - 396, -296, 320, -101, -482, -577, 339, 262, -296, 520, - -486, 262, 871, 205, 495, 363, 495, 527, 527, 280, - 504, 363, 527, 248, 497, 830, 868, 714, -488, -484, - 215, 602, 602, -485, 215, 547, -336, 373, 215, 215, - -474, -487, 737, 86, -478, 435, 971, 280, 86, 86, - -336, -573, 761, 447, 480, 572, 86, 420, 421, 422, - 454, 459, 711, 711, 441, 267, -486, 311, 442, 267, + 245, 246, 885, 337, 338, 695, 121, 387, 437, -298, + 752, 388, 841, -481, 273, 278, 868, 977, -484, 868, + 598, 244, -298, -298, 245, 246, 390, 514, 247, -77, + 248, 358, 437, 121, 285, -485, -298, 86, 673, 444, + 445, -104, 901, -486, 292, 812, 809, -487, 215, 215, + -91, 539, 247, 395, 248, -489, 272, 533, -298, 361, + 362, 602, -579, 673, 983, -298, 362, 470, 471, 734, + 396, -298, 320, -101, -484, -579, 339, 262, -298, 520, + -488, 262, 871, 205, 495, 363, 495, 527, 527, 280, + 504, 363, 527, 248, 497, 830, 868, 714, -490, -486, + 215, 602, 602, -487, 215, 547, -338, 373, 215, 215, + -476, -489, 737, 86, -480, 435, 971, 280, 86, 86, + -338, -575, 761, 447, 480, 572, 86, 420, 421, 422, + 454, 459, 711, 711, 441, 267, -488, 311, 442, 267, 296, 718, 719, 757, 534, 591, 463, 268, 124, 124, - 757, 516, 436, 266, -488, -336, 124, 806, 373, 522, - 876, 468, -336, 467, 931, 741, -474, 472, 519, 428, - -478, 86, 215, 215, 215, 215, 86, 226, 215, 215, - -111, 918, 476, 424, -474, 562, 455, 670, 576, -111, - 576, 557, 558, 559, 560, 86, 478, 124, -474, 549, + 757, 516, 436, 266, -490, -338, 124, 806, 373, 522, + 876, 468, -338, 467, 931, 741, -476, 472, 519, 428, + -480, 86, 215, 215, 215, 215, 86, 226, 215, 215, + -111, 918, 476, 424, -476, 562, 455, 670, 576, -111, + 576, 557, 558, 559, 560, 86, 478, 124, -476, 549, 556, -103, 42, 483, 69, 43, 515, 534, 600, 561, 674, 512, 935, 936, 120, 86, 515, 292, 215, 492, 86, 311, 544, 609, 124, 426, 486, 505, 511, 849, - 262, -573, 436, -474, -110, 773, 396, -573, 757, 226, - -474, 296, 518, 504, -110, 789, 530, 626, 791, -76, + 262, -575, 436, -476, -110, 773, 396, -575, 757, 226, + -476, 296, 518, 504, -110, 789, 530, 626, 791, -76, 60, 793, 886, 215, 120, 262, 999, 892, 894, 1002, -111, 121, 818, 609, 609, -102, 532, 596, 504, 791, 262, 650, 596, -106, 650, 524, 680, 790, 215, 262, @@ -2497,89 +2497,89 @@ static const yytype_int16 yytable[] = 246, 751, 104, 104, 832, 800, 766, 311, 104, 104, 104, 244, 282, 104, 245, 246, 783, 460, 776, 120, 585, 120, 588, 651, 602, 777, 425, 604, 604, 741, - 602, -481, 124, 426, 778, 602, 602, 462, 418, 419, - 420, 421, 422, 104, 462, -481, 788, 801, 802, 1021, + 602, -483, 124, 426, 778, 602, 602, 462, 418, 419, + 420, 421, 422, 104, 462, -483, 788, 801, 802, 1021, 277, 740, 921, 277, 771, 771, 787, 104, 809, 244, 817, 823, 245, 246, 792, 826, 121, 794, 121, 827, 834, 277, 124, 837, 215, 86, 808, 811, 248, 811, - -481, 485, -96, 847, 120, 843, 811, -481, 566, 804, + -483, 485, -96, 847, 120, 843, 811, -483, 566, 804, 247, 965, 248, 799, 850, 527, 852, 967, 854, 856, 205, 243, 904, 825, 533, 905, 215, 873, 897, 104, 495, 104, 909, 673, 244, 449, 124, 245, 246, 1033, 913, 282, 915, 205, 923, 824, 922, 927, 786, 424, - 939, 121, -285, 899, 124, 596, 273, 602, 942, 273, - 945, 492, 660, 662, 947, 247, -285, 248, -409, 949, - 951, 464, 576, 956, 957, 786, 335, 273, -409, 323, + 939, 121, -287, 899, 124, 596, 273, 602, 942, 273, + 945, 492, 660, 662, 947, 247, -287, 248, -411, 949, + 951, 464, 576, 956, 957, 786, 335, 273, -411, 323, 324, 267, 267, 968, 450, 424, 262, 969, 485, 833, 978, 426, 979, 715, 660, 662, 985, 86, 924, 504, - 720, -285, 989, -103, 311, 86, 609, 990, -285, 215, + 720, -287, 989, -103, 311, 86, 609, 990, -287, 215, 991, 726, 609, 215, 1004, 771, 747, 609, 609, 580, 465, 1005, 104, 86, 86, 907, 650, 426, 911, 325, - 326, -409, 760, 104, 104, 764, 1006, 86, 877, 1015, - 215, -409, 725, -591, 267, -409, -591, -591, 1017, 86, - 86, 495, 1022, 1024, 1026, -409, 1028, 86, 1046, 912, - 959, 1038, -576, 748, 749, 282, 282, 755, 86, 86, - -577, 755, 1048, 723, 754, 129, 248, 124, -409, 124, - -409, 120, -97, 576, 576, 104, 651, -409, -409, 104, - -409, 938, 774, 104, 104, 1037, 944, -409, 104, 860, + 326, -411, 760, 104, 104, 764, 1006, 86, 877, 1015, + 215, -411, 725, -593, 267, -411, -593, -593, 1017, 86, + 86, 495, 1022, 1024, 1026, -411, 1028, 86, 1046, 912, + 959, 1038, -578, 748, 749, 282, 282, 755, 86, 86, + -579, 755, 1048, 723, 754, 129, 248, 124, -411, 124, + -411, 120, -97, 576, 576, 104, 651, -411, -411, 104, + -411, 938, 774, 104, 104, 1037, 944, -411, 104, 860, 1039, 1036, 1009, 104, 104, 744, 898, 353, 354, 355, 356, 104, 482, 207, 753, 691, 691, 553, 993, 609, 323, 324, 900, 357, 998, 211, 211, 758, 121, 86, - 86, 211, -286, 962, 496, 908, -297, 86, 811, 0, - 0, 0, 124, 0, 0, 0, -286, 916, 917, 0, - -297, 0, 0, 0, 0, 920, 104, 104, 104, 104, + 86, 211, -288, 962, 496, 908, -299, 86, 811, 0, + 0, 0, 124, 0, 0, 0, -288, 916, 917, 0, + -299, 0, 0, 0, 0, 920, 104, 104, 104, 104, 104, 104, 0, 104, 104, 485, 0, 925, 120, 803, 325, 326, 485, 120, 0, 473, 0, 0, 0, 282, - 104, -286, 0, 1014, 267, -297, 0, -102, -286, 424, - 604, 0, -297, 86, 844, 86, 604, 888, 86, 0, + 104, -288, 0, 1014, 267, -299, 0, -102, -288, 424, + 604, 0, -299, 86, 844, 86, 604, 888, 86, 0, 104, 604, 604, 104, 0, 104, 0, 0, 104, 0, 120, 513, 576, 262, 0, 121, 867, 851, 853, 855, 121, 857, 835, 858, 474, 424, 504, 958, 680, 811, - 0, 426, 440, 0, 0, 966, 215, 0, 104, -293, - 846, 0, -293, -293, -574, 537, 0, 0, 104, 104, + 0, 426, 440, 0, 0, 966, 215, 0, 104, -295, + 846, 0, -295, -295, -576, 537, 0, 0, 104, 104, 0, 0, 0, 650, 946, 948, 0, 121, 0, 424, - 465, 872, 0, 104, 0, 104, 104, 426, 866, -293, - -293, 267, -293, 396, 104, 863, 0, 0, 104, -106, + 465, 872, 0, 104, 0, 104, 104, 426, 866, -295, + -295, 267, -295, 396, 104, 863, 0, 0, 104, -106, 0, 744, 104, 353, 354, 355, 356, 104, 409, 410, 0, 1010, 104, 1011, 538, 0, 1012, 0, 930, 357, - 932, 426, 0, 604, 933, 0, 0, -478, -481, 0, + 932, 426, 0, 604, 933, 0, 0, -480, -483, 0, 798, 887, 889, 651, 0, 0, 893, 895, 0, 124, - 0, -478, -481, -108, 104, 0, 997, 417, 418, 419, + 0, -480, -483, -108, 104, 0, 997, 417, 418, 419, 420, 421, 422, 104, 0, 0, 211, 211, 0, 0, 0, 0, 887, 889, 0, 893, 895, 0, 462, 0, - 322, 104, 323, 324, -574, 0, -478, -481, 104, -285, - -574, 214, 214, -478, -481, 0, 0, 214, 263, 263, - 982, 0, 263, -285, 980, 981, -106, 0, 0, -106, + 322, 104, 323, 324, -576, 0, -480, -483, 104, -287, + -576, 214, 214, -480, -483, 0, 0, 214, 263, 263, + 982, 0, 263, -287, 980, 981, -106, 0, 0, -106, -106, 0, 1023, 1025, 1027, 0, 1029, 1030, 0, 984, - 986, 987, 988, 1000, -580, 1003, 506, 509, 0, 286, - 288, 0, 325, 326, 263, 304, 124, -106, -285, -106, - 0, 124, 0, 0, 0, -285, 340, 341, 955, 0, + 986, 987, 988, 1000, -582, 1003, 506, 509, 0, 286, + 288, 0, 325, 326, 263, 304, 124, -106, -287, -106, + 0, 124, 0, 0, 0, -287, 340, 341, 955, 0, -108, 0, 0, -108, -108, 0, 1047, 1049, 1050, 1051, - 1016, 0, 755, 1018, 0, 872, 1053, -580, 872, 994, + 1016, 0, 755, 1018, 0, 872, 1053, -582, 872, 994, 872, 955, 866, 0, 903, 866, 863, 866, 124, 863, - 0, -108, 863, -108, 863, -576, 0, -580, 0, 0, + 0, -108, 863, -108, 863, -578, 0, -582, 0, 0, 211, 211, 211, 211, 0, 1040, 564, 565, 214, 691, - 1042, -580, 1044, -576, 0, 0, 1045, 1041, -297, 104, + 1042, -582, 1044, -578, 0, 0, 1045, 1041, -299, 104, 104, 744, 0, 353, 354, 355, 356, 0, 872, 780, - 0, 0, -297, 0, 0, 866, 1052, 0, 0, 357, - -580, 0, 863, 424, -580, 0, -580, -577, -99, 0, - -576, 104, 0, -580, -580, 872, 0, 872, -576, 872, - 0, 872, 866, 359, 866, 0, 866, -297, 866, 863, - 992, 863, -576, 863, -297, 863, -576, 0, 781, 0, - 0, 872, 0, 0, 424, 426, 0, -580, 866, -580, - -576, 462, -577, -576, 0, 863, -580, 462, 974, 0, - 353, 354, 355, 356, 0, -576, 0, -576, 0, 675, - -577, -576, 214, 214, -576, 0, 357, 0, 0, 450, - 0, 1007, 104, -576, -577, -576, 426, -98, 0, -576, - 104, 104, -576, 0, 104, 424, 0, 104, 104, 329, + 0, 0, -299, 0, 0, 866, 1052, 0, 0, 357, + -582, 0, 863, 424, -582, 0, -582, -579, -99, 0, + -578, 104, 0, -582, -582, 872, 0, 872, -578, 872, + 0, 872, 866, 359, 866, 0, 866, -299, 866, 863, + 992, 863, -578, 863, -299, 863, -578, 0, 781, 0, + 0, 872, 0, 0, 424, 426, 0, -582, 866, -582, + -578, 462, -579, -578, 0, 863, -582, 462, 974, 0, + 353, 354, 355, 356, 0, -578, 0, -578, 0, 675, + -579, -578, 214, 214, -578, 0, 357, 0, 0, 450, + 0, 1007, 104, -578, -579, -578, 426, -98, 0, -578, + 104, 104, -578, 0, 104, 424, 0, 104, 104, 329, 323, 324, 104, 104, 548, 0, 323, 324, 104, 104, - 488, 489, 490, 340, 0, -577, 0, -577, 0, -577, - 0, -100, 104, -577, 263, 104, -577, 0, 263, -577, + 488, 489, 490, 340, 0, -579, 0, -579, 0, -579, + 0, -100, 104, -579, 263, 104, -579, 0, 263, -579, 1008, 0, 214, 214, 104, 104, 0, 426, 0, 0, 0, 0, 104, 331, 323, 324, 0, 0, 0, 0, 325, 326, 0, 104, 104, 0, 325, 326, 0, 333, - 323, 324, -577, 0, -577, 543, 323, 324, -577, 396, - 0, -577, 0, 0, 244, 0, 0, 245, 246, 0, + 323, 324, -579, 0, -579, 543, 323, 324, -579, 396, + 0, -579, 0, 0, 244, 0, 0, 245, 246, 0, 0, 550, 323, 324, 409, 410, 0, 0, 763, 0, 353, 354, 355, 356, 325, 326, 214, 214, 214, 214, 0, 492, 214, 214, 104, 247, 357, 248, 0, 358, @@ -2596,22 +2596,22 @@ static const yytype_int16 yytable[] = 245, 246, 0, 0, 211, 659, 0, 263, 0, 659, 659, 104, 739, 323, 324, 0, 263, 415, 416, 417, 418, 419, 420, 421, 422, 702, 0, 0, 247, 706, - 248, 0, 0, 707, -603, 103, 710, 0, 713, 313, - 304, 352, 0, 353, 354, 355, 356, -603, -603, -603, - -603, -603, -603, 0, -603, 0, 0, 659, 0, 357, - -603, -603, 358, 325, 326, 0, 313, 710, 0, 0, - 304, -603, -603, 0, -603, -603, -603, -603, -603, 0, + 248, 0, 0, 707, -605, 103, 710, 0, 713, 313, + 304, 352, 0, 353, 354, 355, 356, -605, -605, -605, + -605, -605, -605, 0, -605, 0, 0, 659, 0, 357, + -605, -605, 358, 325, 326, 0, 313, 710, 0, 0, + 304, -605, -605, 0, -605, -605, -605, -605, -605, 0, 263, 0, 0, 359, 344, 345, 346, 347, 348, 360, 361, 362, 0, 0, 0, 0, 742, 743, 0, 0, 0, 0, 0, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 750, 0, 0, 363, 0, 211, 364, - 0, 0, 0, -603, 352, 0, 353, 354, 355, 356, - 995, 0, 765, 0, 0, 772, 0, -603, 0, 0, - 0, 0, 357, 0, 0, 358, 0, -603, 0, 0, - -603, -603, 100, 0, 100, 126, 126, 126, 0, 0, + 0, 0, 0, -605, 352, 0, 353, 354, 355, 356, + 995, 0, 765, 0, 0, 772, 0, -605, 0, 0, + 0, 0, 357, 0, 0, 358, 0, -605, 0, 0, + -605, -605, 100, 0, 100, 126, 126, 126, 0, 0, 0, 0, 0, 228, 0, 0, 359, 0, 0, 0, - -603, -603, 360, 361, 362, 0, 272, -603, -603, -603, - -603, 0, 83, 0, 83, 744, 0, 353, 354, 355, + -605, -605, 360, 361, 362, 0, 272, -605, -605, -605, + -605, 0, 83, 0, 83, 744, 0, 353, 354, 355, 356, 0, 0, 225, 103, 0, 0, 0, 0, 363, 100, 0, 364, 357, 312, 0, 0, 744, 214, 353, 354, 355, 356, 0, 0, 365, 0, 0, 0, 0, @@ -2667,7 +2667,7 @@ static const yytype_int16 yytable[] = 0, 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, 0, 0, 0, 0, 0, 0, 396, 397, 398, 399, 400, 401, 402, 403, - 404, 405, 406, -604, -604, 0, 0, 409, 410, 312, + 404, 405, 406, -606, -606, 0, 0, 409, 410, 312, 0, 0, 0, 0, 103, 0, 0, 0, 0, 0, 0, 313, 103, 610, 0, 0, 0, 0, 0, 610, 0, 0, 0, 0, 610, 610, 0, 0, 0, 0, @@ -2685,7 +2685,7 @@ static const yytype_int16 yytable[] = 964, 101, 0, 0, 103, 0, 0, 0, 0, 0, 0, 0, 0, 412, 0, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 0, 0, 0, 0, 100, - 0, 0, 0, -272, 0, 0, 312, 100, 0, 0, + 0, 0, 0, -274, 0, 0, 312, 100, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 0, 0, 0, 101, 0, 0, 0, 100, 100, 0, 0, 83, 103, 0, 103, 0, 0, 103, 0, 83, 605, 100, @@ -2708,7 +2708,7 @@ static const yytype_int16 yytable[] = 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 0, 0, 0, 0, 0, 0, 83, 0, 83, 0, 0, - 83, 0, 0, 0, 0, 0, 0, -603, 4, 0, + 83, 0, 0, 0, 0, 0, 0, -605, 4, 0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0, 0, 0, 0, 0, 0, 15, 0, 16, 17, 18, 19, 0, 0, 0, 0, 0, 20, 21, 22, @@ -2720,10 +2720,10 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 50, 51, 0, 52, 53, 0, 54, 0, 0, 55, 101, 56, 57, 58, 59, 60, 61, 0, 0, 62, - -603, 0, 0, -603, -603, 0, 0, 396, -604, -604, - -604, -604, 401, 402, 0, 0, -604, -604, 0, 63, + -605, 0, 0, -605, -605, 0, 0, 396, -606, -606, + -606, -606, 401, 402, 0, 0, -606, -606, 0, 63, 64, 65, 409, 410, 0, 0, 0, 0, 0, 0, - 0, -603, 0, -603, 0, 0, 0, 0, 0, 0, + 0, -605, 0, -605, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 779, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 0, 0, 0, @@ -2737,91 +2737,91 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 101, 101, 0, 0, 0, 0, 0, 0, 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 101, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -474, 0, + 0, 0, 0, 0, 0, 0, 0, 0, -476, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, -474, -474, -474, -474, -474, -474, 0, -474, 0, - 0, 0, 0, 0, 0, -474, -474, 0, 0, 0, - 0, 0, 0, 0, 101, -474, -474, 0, -474, -474, - -474, -474, -474, 0, 101, 101, 0, 0, 0, 0, + 0, -476, -476, -476, -476, -476, -476, 0, -476, 0, + 0, 0, 0, 0, 0, -476, -476, 0, 0, 0, + 0, 0, 0, 0, 101, -476, -476, 0, -476, -476, + -476, -476, -476, 0, 101, 101, 0, 0, 0, 0, 0, 0, 101, 0, 0, 486, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -474, -474, -474, -474, -474, -474, -474, -474, -474, -474, - -474, -474, -474, 0, 0, -474, -474, -474, 0, -474, - -474, 0, 0, 0, 0, 0, -474, 0, 0, 0, - 0, -474, 0, 0, 0, 0, 0, 0, 101, 0, - 101, -474, 0, 101, -474, -474, 0, -474, -474, 0, - -474, -474, -474, -474, -474, -474, -474, -474, -474, -474, - 0, 0, -603, 0, 0, -474, -474, -474, -474, 0, - 0, -474, -474, -474, -474, -603, -603, -603, -603, -603, - -603, 0, -603, 0, 0, 0, 0, 0, 0, -603, - -603, 0, 0, 0, 0, 0, 0, 0, 0, -603, - -603, 0, -603, -603, -603, -603, -603, 0, 0, 0, + -476, -476, -476, -476, -476, -476, -476, -476, -476, -476, + -476, -476, -476, 0, 0, -476, -476, -476, 0, -476, + -476, 0, 0, 0, 0, 0, -476, 0, 0, 0, + 0, -476, 0, 0, 0, 0, 0, 0, 101, 0, + 101, -476, 0, 101, -476, -476, 0, -476, -476, 0, + -476, -476, -476, -476, -476, -476, -476, -476, -476, -476, + 0, 0, -605, 0, 0, -476, -476, -476, -476, 0, + 0, -476, -476, -476, -476, -605, -605, -605, -605, -605, + -605, 0, -605, 0, 0, 0, 0, 0, 0, -605, + -605, 0, 0, 0, 0, 0, 0, 0, 0, -605, + -605, 0, -605, -605, -605, -605, -605, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, -603, -603, -603, -603, -603, -603, - -603, -603, -603, -603, -603, -603, -603, 0, 0, -603, - -603, -603, 0, 0, -603, 0, 0, 0, 0, 0, - -603, 0, 0, 0, 0, -603, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -603, 0, 0, -603, -603, - 0, 0, -603, 0, -603, -603, -603, -603, -603, -603, - -603, -603, -603, -603, 0, 0, -580, 0, 0, -603, - -603, -603, -603, 0, 272, -603, -603, -603, -603, -580, - -580, -580, 0, -580, -580, 0, -580, 0, 0, 0, - 0, 0, -580, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -580, -580, 0, -580, -580, -580, -580, - -580, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, -605, -605, -605, -605, -605, -605, + -605, -605, -605, -605, -605, -605, -605, 0, 0, -605, + -605, -605, 0, 0, -605, 0, 0, 0, 0, 0, + -605, 0, 0, 0, 0, -605, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -605, 0, 0, -605, -605, + 0, 0, -605, 0, -605, -605, -605, -605, -605, -605, + -605, -605, -605, -605, 0, 0, -582, 0, 0, -605, + -605, -605, -605, 0, 272, -605, -605, -605, -605, -582, + -582, -582, 0, -582, -582, 0, -582, 0, 0, 0, + 0, 0, -582, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -582, -582, 0, -582, -582, -582, -582, + -582, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -580, -580, - -580, -580, -580, -580, -580, -580, -580, -580, -580, -580, - -580, 0, 0, -580, -580, -580, 0, 784, -580, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, -580, - 0, 0, 0, 0, 0, 0, 0, 0, 0, -580, - 0, 0, -580, -580, 0, -107, -580, 0, -580, -580, - -580, -580, -580, -580, -580, -580, -580, -580, 0, 0, - -580, 0, -580, -580, -580, 0, -99, 0, 0, -580, - -580, -580, -580, -580, -580, -580, 0, -580, -580, 0, - -580, 0, 0, 0, 0, 0, -580, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, -580, -580, 0, - -580, -580, -580, -580, -580, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, -582, -582, + -582, -582, -582, -582, -582, -582, -582, -582, -582, -582, + -582, 0, 0, -582, -582, -582, 0, 784, -582, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, -582, + 0, 0, 0, 0, 0, 0, 0, 0, 0, -582, + 0, 0, -582, -582, 0, -107, -582, 0, -582, -582, + -582, -582, -582, -582, -582, -582, -582, -582, 0, 0, + -582, 0, -582, -582, -582, 0, -99, 0, 0, -582, + -582, -582, -582, -582, -582, -582, 0, -582, -582, 0, + -582, 0, 0, 0, 0, 0, -582, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -582, -582, 0, + -582, -582, -582, -582, -582, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, -580, -580, -580, -580, -580, -580, -580, -580, - -580, -580, -580, -580, -580, 0, 0, -580, -580, -580, - 0, 784, -580, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -580, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -580, 0, 0, -580, -580, 0, -107, - -580, 0, -580, -580, -580, -580, -580, -580, -580, -580, - -580, -580, 0, 0, -296, 0, -580, -580, -580, 0, - -580, 0, 0, -580, -580, -580, -580, -296, -296, -296, - 0, -296, -296, 0, -296, 0, 0, 0, 0, 0, + 0, 0, -582, -582, -582, -582, -582, -582, -582, -582, + -582, -582, -582, -582, -582, 0, 0, -582, -582, -582, + 0, 784, -582, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -582, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -582, 0, 0, -582, -582, 0, -107, + -582, 0, -582, -582, -582, -582, -582, -582, -582, -582, + -582, -582, 0, 0, -298, 0, -582, -582, -582, 0, + -582, 0, 0, -582, -582, -582, -582, -298, -298, -298, + 0, -298, -298, 0, -298, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, -296, -296, 0, -296, -296, -296, -296, -296, 0, + 0, -298, -298, 0, -298, -298, -298, -298, -298, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -296, -296, -296, -296, - -296, -296, -296, -296, -296, -296, -296, -296, -296, 0, - 0, -296, -296, -296, 0, 785, -296, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, -296, 0, 0, - 0, 0, 0, 0, 0, 0, 0, -296, 0, 0, - -296, -296, 0, -109, -296, 0, -296, -296, -296, -296, - -296, -296, -296, -296, -296, -296, 0, 0, -296, 0, - 0, -296, -296, 0, -101, 0, 0, -296, -296, -296, - -296, -296, -296, -296, 0, -296, -296, 0, -296, 0, + 0, 0, 0, 0, 0, 0, -298, -298, -298, -298, + -298, -298, -298, -298, -298, -298, -298, -298, -298, 0, + 0, -298, -298, -298, 0, 785, -298, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -298, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -298, 0, 0, + -298, -298, 0, -109, -298, 0, -298, -298, -298, -298, + -298, -298, -298, -298, -298, -298, 0, 0, -298, 0, + 0, -298, -298, 0, -101, 0, 0, -298, -298, -298, + -298, -298, -298, -298, 0, -298, -298, 0, -298, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, -296, -296, 0, -296, -296, - -296, -296, -296, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -298, -298, 0, -298, -298, + -298, -298, -298, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, - -296, -296, -296, 0, 0, -296, -296, -296, 0, 785, - -296, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, -296, 0, 0, 0, 0, 0, 0, 0, 0, - 0, -296, 0, 0, -296, -296, 0, -109, -296, 0, - -296, -296, -296, -296, -296, -296, -296, -296, -296, -296, - 0, 0, 0, 0, 0, -296, -296, 0, -296, 0, - 0, -296, -296, -296, -296, 290, 0, 5, 6, 7, - 8, 9, 10, 11, 12, 13, 14, -603, -603, -603, - 0, 0, -603, 15, 0, 16, 17, 18, 19, 0, + -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, + -298, -298, -298, 0, 0, -298, -298, -298, 0, 785, + -298, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, -298, 0, 0, 0, 0, 0, 0, 0, 0, + 0, -298, 0, 0, -298, -298, 0, -109, -298, 0, + -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, + 0, 0, 0, 0, 0, -298, -298, 0, -298, 0, + 0, -298, -298, -298, -298, 290, 0, 5, 6, 7, + 8, 9, 10, 11, 12, 13, 14, -605, -605, -605, + 0, 0, -605, 15, 0, 16, 17, 18, 19, 0, 0, 0, 0, 0, 20, 21, 22, 23, 24, 25, 26, 0, 0, 27, 0, 0, 0, 0, 0, 28, 0, 30, 31, 32, 33, 34, 35, 36, 37, 38, @@ -2830,12 +2830,12 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 50, 51, 0, 52, 53, 0, 54, 0, 0, 55, 0, 56, 57, - 58, 59, 60, 61, 0, 0, 62, -603, 0, 0, - -603, -603, 0, 0, 0, 0, 0, 0, 0, 0, + 58, 59, 60, 61, 0, 0, 62, -605, 0, 0, + -605, -605, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 0, - 0, 0, 0, 0, 0, 0, 0, 0, -603, 290, - -603, 5, 6, 7, 8, 9, 10, 11, 12, 13, - 14, 0, 0, -603, 0, -603, -603, 15, 0, 16, + 0, 0, 0, 0, 0, 0, 0, 0, -605, 290, + -605, 5, 6, 7, 8, 9, 10, 11, 12, 13, + 14, 0, 0, -605, 0, -605, -605, 15, 0, 16, 17, 18, 19, 0, 0, 0, 0, 0, 20, 21, 22, 23, 24, 25, 26, 0, 0, 27, 0, 0, 0, 0, 0, 28, 0, 30, 31, 32, 33, 34, @@ -2845,12 +2845,12 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 50, 51, 0, 52, 53, 0, 54, 0, 0, 55, 0, 56, 57, 58, 59, 60, 61, 0, 0, - 62, -603, 0, 0, -603, -603, 0, 0, 0, 0, + 62, -605, 0, 0, -605, -605, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 0, 0, 0, 0, 0, 0, 0, - 0, 0, -603, 290, -603, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 0, 0, -603, 0, 0, - -603, 15, -603, 16, 17, 18, 19, 0, 0, 0, + 0, 0, -605, 290, -605, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 0, 0, -605, 0, 0, + -605, 15, -605, 16, 17, 18, 19, 0, 0, 0, 0, 0, 20, 21, 22, 23, 24, 25, 26, 0, 0, 27, 0, 0, 0, 0, 0, 28, 0, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 0, @@ -2859,12 +2859,12 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 50, 51, 0, 52, 53, 0, 54, 0, 0, 55, 0, 56, 57, 58, 59, - 60, 61, 0, 0, 62, -603, 0, 0, -603, -603, + 60, 61, 0, 0, 62, -605, 0, 0, -605, -605, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 0, 0, 0, - 0, 0, 0, 0, 0, 0, -603, 290, -603, 5, + 0, 0, 0, 0, 0, 0, -605, 290, -605, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0, - 0, -603, 0, 0, -603, 15, 0, 16, 17, 18, + 0, -605, 0, 0, -605, 15, 0, 16, 17, 18, 19, 0, 0, 0, 0, 0, 20, 21, 22, 23, 24, 25, 26, 0, 0, 27, 0, 0, 0, 0, 0, 28, 0, 30, 31, 32, 33, 34, 35, 36, @@ -2873,11 +2873,11 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 50, 51, 0, 52, 53, 0, 54, 0, 0, 55, 0, - 56, 57, 58, 59, 60, 61, 0, 0, 62, -603, - 0, 0, -603, -603, 4, 0, 5, 6, 7, 8, + 56, 57, 58, 59, 60, 61, 0, 0, 62, -605, + 0, 0, -605, -605, 4, 0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0, 0, 63, 64, 65, 0, 15, 0, 16, 17, 18, 19, 0, 0, - -603, 0, -603, 20, 21, 22, 23, 24, 25, 26, + -605, 0, -605, 20, 21, 22, 23, 24, 25, 26, 0, 0, 27, 0, 0, 0, 0, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 0, 40, 41, 42, 0, 0, 43, 0, 0, 44, @@ -2885,12 +2885,12 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 50, 51, 0, 52, 53, 0, 54, 0, 0, 55, 0, 56, 57, 58, - 59, 60, 61, 0, 0, 62, -603, 0, 0, -603, - -603, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 59, 60, 61, 0, 0, 62, -605, 0, 0, -605, + -605, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 64, 65, 0, 0, - -603, 0, 0, 0, 0, 0, 0, -603, 290, -603, + -605, 0, 0, 0, 0, 0, 0, -605, 290, -605, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, - 0, -603, -603, 0, 0, 0, 15, 0, 16, 17, + 0, -605, -605, 0, 0, 0, 15, 0, 16, 17, 18, 19, 0, 0, 0, 0, 0, 20, 21, 22, 23, 24, 25, 26, 0, 0, 27, 0, 0, 0, 0, 0, 28, 0, 30, 31, 32, 33, 34, 35, @@ -2900,10 +2900,10 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 50, 51, 0, 52, 53, 0, 54, 0, 0, 55, 0, 56, 57, 58, 59, 60, 61, 0, 0, 62, - -603, 0, 0, -603, -603, 290, 0, 5, 6, 7, + -605, 0, 0, -605, -605, 290, 0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0, 0, 63, 64, 65, 0, 15, 0, 16, 17, 18, 19, 0, - 0, -603, 0, -603, 20, 21, 22, 23, 24, 25, + 0, -605, 0, -605, 20, 21, 22, 23, 24, 25, 26, 0, 0, 27, 0, 0, 0, 0, 0, 28, 0, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 0, 40, 41, 42, 0, 0, 43, 0, 0, @@ -2911,11 +2911,11 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 291, 51, 0, 52, 53, 0, 54, 0, 0, 55, 0, 56, 57, - 58, 59, 60, 61, 0, 0, 62, -603, 0, 0, - -603, -603, 290, 0, 5, 6, 7, 8, 9, 10, + 58, 59, 60, 61, 0, 0, 62, -605, 0, 0, + -605, -605, 290, 0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0, 0, 63, 64, 65, 0, - 15, 0, 16, 17, 18, 19, 0, -603, -603, 0, - -603, 20, 21, 22, 23, 24, 25, 26, 0, 0, + 15, 0, 16, 17, 18, 19, 0, -605, -605, 0, + -605, 20, 21, 22, 23, 24, 25, 26, 0, 0, 27, 0, 0, 0, 0, 0, 28, 0, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 0, 40, 41, 42, 0, 0, 43, 0, 0, 44, 45, 0, @@ -2923,10 +2923,10 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 50, 51, 0, 52, 53, 0, 54, 0, 0, 55, 0, 56, 57, 58, 59, 60, - 61, 0, 0, 62, -603, 0, 0, -603, -603, 290, + 61, 0, 0, 62, -605, 0, 0, -605, -605, 290, 0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0, 0, 63, 64, 65, 0, 15, 0, 16, - 17, 18, 19, 0, -603, -603, 0, -603, 20, 21, + 17, 18, 19, 0, -605, -605, 0, -605, 20, 21, 22, 23, 24, 25, 26, 0, 0, 27, 0, 0, 0, 0, 0, 28, 0, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 0, 40, 41, 42, 0, @@ -2935,11 +2935,11 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 50, 51, 0, 52, 53, 0, 54, 0, 0, 55, 0, 56, 57, 58, 59, 60, 61, 0, 0, - 62, -603, 0, 0, -603, -603, 0, 0, 0, 0, + 62, -605, 0, 0, -605, -605, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 63, 64, 65, 0, 0, -603, 0, 0, 0, 0, - 0, 0, -603, 290, -603, 5, 6, 7, 8, 9, - 10, 11, 12, 13, 14, 0, 0, -603, 0, 0, + 63, 64, 65, 0, 0, -605, 0, 0, 0, 0, + 0, 0, -605, 290, -605, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 0, 0, -605, 0, 0, 0, 15, 0, 16, 17, 18, 19, 0, 0, 0, 0, 0, 20, 21, 22, 23, 24, 25, 26, 0, 0, 27, 0, 0, 0, 0, 0, 28, 0, 30, @@ -2949,10 +2949,10 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 50, 51, 0, 52, 53, 0, 54, 0, 0, 55, 0, 56, 57, 58, 59, - 60, 61, 0, 0, 62, -603, 0, 0, -603, -603, + 60, 61, 0, 0, 62, -605, 0, 0, -605, -605, 0, 0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 0, 0, 63, 64, 65, 0, 15, 0, - 16, 17, 18, 19, 0, 0, -603, 0, -603, 20, + 16, 17, 18, 19, 0, 0, -605, 0, -605, 20, 21, 22, 23, 24, 25, 26, 0, 0, 27, 0, 0, 0, 0, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 0, 40, 41, 42, @@ -3002,20 +3002,6 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 0, 200, 201, 0, 0, 0, 0, 0, 0, 202, 203, - -573, -573, -573, -573, -573, -573, -573, -573, -573, 0, - 0, 0, 0, 0, 0, 0, -573, 0, -573, -573, - -573, -573, 0, -573, 0, 0, 0, -573, -573, -573, - -573, -573, -573, -573, 0, 0, -573, 0, 0, 0, - 0, 0, 0, 0, 0, -573, -573, -573, -573, -573, - -573, -573, -573, -573, 0, -573, -573, -573, 0, 0, - -573, 0, 0, -573, -573, 0, -573, -573, -573, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, -573, 0, 0, - -573, -573, 0, -573, -573, 0, -573, -573, -573, -573, - 0, -573, -573, -573, -573, -573, -573, 0, 0, -573, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, -573, - -573, -573, 0, -573, 0, 0, 0, 0, 0, -573, -575, -575, -575, -575, -575, -575, -575, -575, -575, 0, 0, 0, 0, 0, 0, 0, -575, 0, -575, -575, -575, -575, 0, -575, 0, 0, 0, -575, -575, -575, @@ -3030,79 +3016,93 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -575, -575, -575, 0, -575, 0, 0, 0, 0, 0, -575, - -574, -574, -574, -574, -574, -574, -574, -574, -574, 0, - 0, 0, 0, 0, 0, 0, -574, 0, -574, -574, - -574, -574, 0, -574, 0, 0, 0, -574, -574, -574, - -574, -574, -574, -574, 0, 0, -574, 0, 0, 0, - 0, 0, 0, 0, 0, -574, -574, -574, -574, -574, - -574, -574, -574, -574, 0, -574, -574, -574, 0, 0, - -574, 0, 0, -574, -574, 0, -574, -574, -574, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, -574, 0, 0, - -574, -574, 0, -574, -574, 0, -574, -574, -574, -574, - 0, -574, -574, -574, -574, -574, -574, 0, 0, -574, - 0, 0, 0, 0, 0, 0, -576, -576, -576, -576, - -576, -576, -576, -576, -576, 0, 0, 0, 0, -574, - -574, -574, -576, -574, -576, -576, -576, -576, 0, -574, - 0, 0, 0, -576, -576, -576, -576, -576, -576, -576, - 0, 0, -576, 0, 0, 0, 0, 0, 0, 0, - 0, -576, -576, -576, -576, -576, -576, -576, -576, -576, - 0, -576, -576, -576, 0, 0, -576, 0, 0, -576, - -576, 0, -576, -576, -576, 0, 0, 0, 0, 0, + -577, -577, -577, -577, -577, -577, -577, -577, -577, 0, + 0, 0, 0, 0, 0, 0, -577, 0, -577, -577, + -577, -577, 0, -577, 0, 0, 0, -577, -577, -577, + -577, -577, -577, -577, 0, 0, -577, 0, 0, 0, + 0, 0, 0, 0, 0, -577, -577, -577, -577, -577, + -577, -577, -577, -577, 0, -577, -577, -577, 0, 0, + -577, 0, 0, -577, -577, 0, -577, -577, -577, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -576, 815, 0, -576, -576, 0, -576, - -576, 0, -576, -576, -576, -576, 0, -576, -576, -576, - -576, -576, -576, 0, 0, -576, 0, 0, 0, 0, - 0, 0, -107, -577, -577, -577, -577, -577, -577, -577, - -577, -577, 0, 0, 0, -576, -576, -576, 0, -577, - 0, -577, -577, -577, -577, -576, 0, 0, 0, 0, - -577, -577, -577, -577, -577, -577, -577, 0, 0, -577, - 0, 0, 0, 0, 0, 0, 0, 0, -577, -577, - -577, -577, -577, -577, -577, -577, -577, 0, -577, -577, - -577, 0, 0, -577, 0, 0, -577, -577, 0, -577, - -577, -577, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -577, 0, 0, + -577, -577, 0, -577, -577, 0, -577, -577, -577, -577, + 0, -577, -577, -577, -577, -577, -577, 0, 0, -577, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -577, 816, 0, -577, -577, 0, -577, -577, 0, -577, - -577, -577, -577, 0, -577, -577, -577, -577, -577, -577, - 0, 0, -577, 0, 0, 0, 0, 0, 0, -109, - -265, -265, -265, -265, -265, -265, -265, -265, -265, 0, - 0, 0, -577, -577, -577, 0, -265, 0, -265, -265, - -265, -265, -577, 0, 0, 0, 0, -265, -265, -265, - -265, -265, -265, -265, 0, 0, -265, 0, 0, 0, - 0, 0, 0, 0, 0, -265, -265, -265, -265, -265, - -265, -265, -265, -265, 0, -265, -265, -265, 0, 0, - -265, 0, 0, -265, -265, 0, -265, -265, -265, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, -577, + -577, -577, 0, -577, 0, 0, 0, 0, 0, -577, + -576, -576, -576, -576, -576, -576, -576, -576, -576, 0, + 0, 0, 0, 0, 0, 0, -576, 0, -576, -576, + -576, -576, 0, -576, 0, 0, 0, -576, -576, -576, + -576, -576, -576, -576, 0, 0, -576, 0, 0, 0, + 0, 0, 0, 0, 0, -576, -576, -576, -576, -576, + -576, -576, -576, -576, 0, -576, -576, -576, 0, 0, + -576, 0, 0, -576, -576, 0, -576, -576, -576, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, -265, 0, 0, - -265, -265, 0, -265, -265, 0, -265, -265, -265, -265, - 0, -265, -265, -265, -265, -265, -265, 0, 0, -265, + 0, 0, 0, 0, 0, 0, 0, -576, 0, 0, + -576, -576, 0, -576, -576, 0, -576, -576, -576, -576, + 0, -576, -576, -576, -576, -576, -576, 0, 0, -576, 0, 0, 0, 0, 0, 0, -578, -578, -578, -578, - -578, -578, -578, -578, -578, 0, 0, 0, 0, -265, - -265, -265, -578, 0, -578, -578, -578, -578, 0, 272, + -578, -578, -578, -578, -578, 0, 0, 0, 0, -576, + -576, -576, -578, -576, -578, -578, -578, -578, 0, -576, 0, 0, 0, -578, -578, -578, -578, -578, -578, -578, 0, 0, -578, 0, 0, 0, 0, 0, 0, 0, 0, -578, -578, -578, -578, -578, -578, -578, -578, -578, 0, -578, -578, -578, 0, 0, -578, 0, 0, -578, -578, 0, -578, -578, -578, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, -578, 0, 0, -578, -578, 0, -578, + 0, 0, 0, -578, 815, 0, -578, -578, 0, -578, -578, 0, -578, -578, -578, -578, 0, -578, -578, -578, -578, -578, -578, 0, 0, -578, 0, 0, 0, 0, - 0, 0, -579, -579, -579, -579, -579, -579, -579, -579, - -579, 0, 0, 0, 0, -578, -578, -578, -579, 0, - -579, -579, -579, -579, 0, -578, 0, 0, 0, -579, - -579, -579, -579, -579, -579, -579, 0, 0, -579, 0, - 0, 0, 0, 0, 0, 0, 0, -579, -579, -579, - -579, -579, -579, -579, -579, -579, 0, -579, -579, -579, - 0, 0, -579, 0, 0, -579, -579, 0, -579, -579, - -579, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, -579, - 0, 0, -579, -579, 0, -579, -579, 0, -579, -579, - -579, -579, 0, -579, -579, -579, -579, -579, -579, 0, - 0, -579, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, -107, -579, -579, -579, -579, -579, -579, -579, + -579, -579, 0, 0, 0, -578, -578, -578, 0, -579, + 0, -579, -579, -579, -579, -578, 0, 0, 0, 0, + -579, -579, -579, -579, -579, -579, -579, 0, 0, -579, + 0, 0, 0, 0, 0, 0, 0, 0, -579, -579, + -579, -579, -579, -579, -579, -579, -579, 0, -579, -579, + -579, 0, 0, -579, 0, 0, -579, -579, 0, -579, + -579, -579, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -579, 816, 0, -579, -579, 0, -579, -579, 0, -579, + -579, -579, -579, 0, -579, -579, -579, -579, -579, -579, + 0, 0, -579, 0, 0, 0, 0, 0, 0, -109, + -267, -267, -267, -267, -267, -267, -267, -267, -267, 0, + 0, 0, -579, -579, -579, 0, -267, 0, -267, -267, + -267, -267, -579, 0, 0, 0, 0, -267, -267, -267, + -267, -267, -267, -267, 0, 0, -267, 0, 0, 0, + 0, 0, 0, 0, 0, -267, -267, -267, -267, -267, + -267, -267, -267, -267, 0, -267, -267, -267, 0, 0, + -267, 0, 0, -267, -267, 0, -267, -267, -267, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, -579, -579, -579, 0, 0, 0, 0, 0, 0, - 0, -579, 130, 131, 132, 133, 134, 135, 136, 137, + 0, 0, 0, 0, 0, 0, 0, -267, 0, 0, + -267, -267, 0, -267, -267, 0, -267, -267, -267, -267, + 0, -267, -267, -267, -267, -267, -267, 0, 0, -267, + 0, 0, 0, 0, 0, 0, -580, -580, -580, -580, + -580, -580, -580, -580, -580, 0, 0, 0, 0, -267, + -267, -267, -580, 0, -580, -580, -580, -580, 0, 272, + 0, 0, 0, -580, -580, -580, -580, -580, -580, -580, + 0, 0, -580, 0, 0, 0, 0, 0, 0, 0, + 0, -580, -580, -580, -580, -580, -580, -580, -580, -580, + 0, -580, -580, -580, 0, 0, -580, 0, 0, -580, + -580, 0, -580, -580, -580, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -580, 0, 0, -580, -580, 0, -580, + -580, 0, -580, -580, -580, -580, 0, -580, -580, -580, + -580, -580, -580, 0, 0, -580, 0, 0, 0, 0, + 0, 0, -581, -581, -581, -581, -581, -581, -581, -581, + -581, 0, 0, 0, 0, -580, -580, -580, -581, 0, + -581, -581, -581, -581, 0, -580, 0, 0, 0, -581, + -581, -581, -581, -581, -581, -581, 0, 0, -581, 0, + 0, 0, 0, 0, 0, 0, 0, -581, -581, -581, + -581, -581, -581, -581, -581, -581, 0, -581, -581, -581, + 0, 0, -581, 0, 0, -581, -581, 0, -581, -581, + -581, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, -581, + 0, 0, -581, -581, 0, -581, -581, 0, -581, -581, + -581, -581, 0, -581, -581, -581, -581, -581, -581, 0, + 0, -581, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, -581, -581, -581, 0, 0, 0, 0, 0, 0, + 0, -581, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 0, 0, 0, 154, 155, 156, 230, 231, 232, 233, 161, 162, 163, 0, @@ -3598,22 +3598,22 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 412, 248, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 0, 0, 0, 0, 0, 0, 0, 0, - -272, 396, 397, 398, 399, 400, 401, 402, 403, 404, + -274, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 0, 0, 409, 410, 0, 0, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 0, 0, 409, 410, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 412, 0, 413, 414, 415, 416, 417, 418, 419, 420, 421, - 422, 0, 0, 0, 0, 0, 0, 0, 412, -273, + 422, 0, 0, 0, 0, 0, 0, 0, 412, -275, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, - 0, 0, 0, 0, 0, 0, 0, 0, -274, 396, + 0, 0, 0, 0, 0, 0, 0, 0, -276, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 0, 0, 409, 410, 0, 0, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 0, 0, 409, 410, 0, 0, 0, 411, 0, 0, 0, 0, 0, 0, 0, 0, 412, 0, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 0, - 0, 0, 0, 0, 0, 0, 412, -275, 413, 414, + 0, 0, 0, 0, 0, 0, 412, -277, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 0, 0, 409, 410, 0, 0, 0, 491, 396, @@ -4969,43 +4969,43 @@ static const yytype_int16 yyr1[] = 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, - 188, 188, 188, 188, 188, 189, 189, 189, 189, 190, - 190, 191, 191, 192, 192, 193, 193, 193, 193, 193, - 194, 194, 194, 194, 194, 196, 195, 197, 198, 198, - 199, 199, 200, 200, 200, 200, 201, 201, 201, 202, - 202, 202, 202, 202, 202, 202, 202, 202, 203, 202, - 204, 205, 202, 206, 202, 202, 202, 202, 202, 202, - 202, 202, 202, 202, 202, 202, 202, 207, 208, 202, - 202, 202, 209, 210, 202, 211, 212, 202, 202, 202, - 213, 214, 202, 215, 202, 216, 217, 202, 218, 202, - 202, 202, 202, 202, 202, 202, 219, 220, 220, 220, - 221, 221, 222, 222, 223, 223, 224, 224, 225, 225, - 225, 225, 225, 225, 225, 225, 226, 225, 227, 227, - 227, 227, 228, 228, 229, 229, 229, 229, 229, 229, - 229, 229, 229, 229, 229, 229, 229, 229, 229, 230, - 230, 232, 231, 231, 231, 233, 233, 234, 234, 235, - 235, 236, 236, 237, 237, 239, 238, 240, 240, 240, - 240, 241, 241, 241, 241, 241, 241, 241, 241, 241, - 243, 242, 244, 242, 245, 246, 246, 247, 247, 248, - 248, 248, 249, 249, 250, 250, 251, 251, 251, 251, - 252, 252, 253, 253, 253, 253, 254, 254, 255, 256, - 255, 255, 255, 257, 257, 258, 258, 259, 260, 260, - 261, 261, 262, 262, 263, 264, 263, 265, 265, 266, - 266, 267, 268, 268, 268, 268, 268, 268, 269, 269, - 270, 270, 270, 270, 271, 271, 271, 271, 271, 272, - 272, 273, 273, 273, 273, 273, 273, 273, 273, 274, - 274, 275, 276, 275, 277, 277, 278, 278, 279, 280, - 280, 281, 281, 282, 282, 283, 283, 284, 284, 285, - 285, 286, 286, 286, 286, 287, 287, 288, 288, 288, + 188, 188, 188, 188, 188, 188, 188, 189, 189, 189, + 189, 190, 190, 191, 191, 192, 192, 193, 193, 193, + 193, 193, 194, 194, 194, 194, 194, 196, 195, 197, + 198, 198, 199, 199, 200, 200, 200, 200, 201, 201, + 201, 202, 202, 202, 202, 202, 202, 202, 202, 202, + 203, 202, 204, 205, 202, 206, 202, 202, 202, 202, + 202, 202, 202, 202, 202, 202, 202, 202, 202, 207, + 208, 202, 202, 202, 209, 210, 202, 211, 212, 202, + 202, 202, 213, 214, 202, 215, 202, 216, 217, 202, + 218, 202, 202, 202, 202, 202, 202, 202, 219, 220, + 220, 220, 221, 221, 222, 222, 223, 223, 224, 224, + 225, 225, 225, 225, 225, 225, 225, 225, 226, 225, + 227, 227, 227, 227, 228, 228, 229, 229, 229, 229, + 229, 229, 229, 229, 229, 229, 229, 229, 229, 229, + 229, 230, 230, 232, 231, 231, 231, 233, 233, 234, + 234, 235, 235, 236, 236, 237, 237, 239, 238, 240, + 240, 240, 240, 241, 241, 241, 241, 241, 241, 241, + 241, 241, 243, 242, 244, 242, 245, 246, 246, 247, + 247, 248, 248, 248, 249, 249, 250, 250, 251, 251, + 251, 251, 252, 252, 253, 253, 253, 253, 254, 254, + 255, 256, 255, 255, 255, 257, 257, 258, 258, 259, + 260, 260, 261, 261, 262, 262, 263, 264, 263, 265, + 265, 266, 266, 267, 268, 268, 268, 268, 268, 268, + 269, 269, 270, 270, 270, 270, 271, 271, 271, 271, + 271, 272, 272, 273, 273, 273, 273, 273, 273, 273, + 273, 274, 274, 275, 276, 275, 277, 277, 278, 278, + 279, 280, 280, 281, 281, 282, 282, 283, 283, 284, + 284, 285, 285, 286, 286, 286, 286, 287, 287, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, 288, - 288, 288, 289, 289, 289, 289, 289, 290, 290, 291, - 292, 291, 293, 293, 294, 295, 296, 297, 297, 298, - 298, 299, 299, 300, 300, 301, 301, 302, 303, 303, - 304, 305, 304, 306, 306, 307, 307, 308, 308, 309, - 309, 309, 309, 310, 310, 310, 311, 311, 311, 311, - 312, 312, 312, 313, 313, 314, 314, 315, 315, 316, - 316, 317, 317, 318, 319, 319, 319, 320, 320, 320, - 321, 322, 322, 323 + 288, 288, 288, 288, 289, 289, 289, 289, 289, 290, + 290, 291, 292, 291, 293, 293, 294, 295, 296, 297, + 297, 298, 298, 299, 299, 300, 300, 301, 301, 302, + 303, 303, 304, 305, 304, 306, 306, 307, 307, 308, + 308, 309, 309, 309, 309, 310, 310, 310, 311, 311, + 311, 311, 312, 312, 312, 313, 313, 314, 314, 315, + 315, 316, 316, 317, 317, 318, 319, 319, 319, 320, + 320, 320, 321, 322, 322, 323 }; /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ @@ -5031,47 +5031,47 @@ static const yytype_int8 yyr2[] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 3, - 6, 5, 5, 5, 5, 4, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 4, 4, 2, 2, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 2, 2, 3, 3, 3, 3, 6, 6, - 4, 6, 4, 6, 1, 1, 2, 4, 2, 1, - 3, 3, 3, 1, 1, 1, 2, 2, 4, 2, - 1, 2, 2, 4, 1, 0, 2, 2, 2, 1, - 1, 3, 1, 2, 3, 4, 3, 4, 2, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 0, 4, - 0, 0, 5, 0, 3, 3, 3, 2, 3, 3, - 1, 2, 4, 3, 2, 1, 2, 0, 0, 5, - 6, 6, 0, 0, 7, 0, 0, 7, 5, 4, - 0, 0, 9, 0, 6, 0, 0, 8, 0, 5, - 4, 4, 1, 1, 1, 1, 1, 1, 1, 2, - 1, 1, 1, 5, 1, 2, 1, 1, 1, 4, - 6, 3, 5, 2, 4, 1, 0, 4, 4, 2, - 2, 1, 2, 0, 6, 8, 4, 6, 4, 3, - 6, 2, 4, 6, 2, 4, 2, 4, 1, 1, - 1, 0, 4, 1, 4, 1, 4, 1, 3, 1, - 1, 4, 1, 3, 3, 0, 5, 2, 4, 5, - 5, 2, 4, 4, 3, 3, 3, 2, 1, 4, - 0, 5, 0, 5, 5, 1, 1, 6, 1, 1, - 1, 1, 2, 1, 2, 1, 1, 1, 1, 1, - 1, 2, 1, 1, 2, 3, 1, 2, 1, 0, - 4, 1, 2, 2, 3, 2, 3, 1, 1, 2, - 1, 2, 1, 2, 1, 0, 4, 2, 3, 1, - 4, 2, 1, 1, 1, 1, 1, 2, 2, 3, - 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, + 6, 5, 5, 5, 5, 4, 3, 3, 2, 3, + 2, 3, 3, 3, 3, 3, 3, 4, 4, 2, + 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 2, 2, 3, 3, 3, 3, + 6, 6, 4, 6, 4, 6, 1, 1, 2, 4, + 2, 1, 3, 3, 3, 1, 1, 1, 2, 2, + 4, 2, 1, 2, 2, 4, 1, 0, 2, 2, + 2, 1, 1, 3, 1, 2, 3, 4, 3, 4, + 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 0, 4, 0, 0, 5, 0, 3, 3, 3, 2, + 3, 3, 1, 2, 4, 3, 2, 1, 2, 0, + 0, 5, 6, 6, 0, 0, 7, 0, 0, 7, + 5, 4, 0, 0, 9, 0, 6, 0, 0, 8, + 0, 5, 4, 4, 1, 1, 1, 1, 1, 1, + 1, 2, 1, 1, 1, 5, 1, 2, 1, 1, + 1, 4, 6, 3, 5, 2, 4, 1, 0, 4, + 4, 2, 2, 1, 2, 0, 6, 8, 4, 6, + 4, 3, 6, 2, 4, 6, 2, 4, 2, 4, + 1, 1, 1, 0, 4, 1, 4, 1, 4, 1, + 3, 1, 1, 4, 1, 3, 3, 0, 5, 2, + 4, 5, 5, 2, 4, 4, 3, 3, 3, 2, + 1, 4, 0, 5, 0, 5, 5, 1, 1, 6, + 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, + 1, 1, 1, 2, 1, 1, 2, 3, 1, 2, + 1, 0, 4, 1, 2, 2, 3, 2, 3, 1, + 1, 2, 1, 2, 1, 2, 1, 0, 4, 2, + 3, 1, 4, 2, 1, 1, 1, 1, 1, 2, + 2, 3, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 0, 0, 4, 3, 3, 1, 2, 2, 2, - 1, 2, 1, 1, 3, 1, 3, 1, 1, 2, - 1, 4, 2, 2, 1, 2, 0, 6, 8, 4, - 6, 4, 6, 2, 4, 6, 2, 4, 2, 4, - 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, - 0, 4, 1, 3, 2, 2, 2, 1, 3, 1, - 3, 1, 1, 2, 1, 1, 1, 2, 2, 1, - 1, 0, 4, 1, 2, 1, 3, 1, 2, 3, - 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, - 1, 0, 1, 2, 0, 1, 1, 1, 1, 1, - 1, 1, 2, 0 + 1, 1, 1, 0, 0, 4, 3, 3, 1, 2, + 2, 2, 1, 2, 1, 1, 3, 1, 3, 1, + 1, 2, 1, 4, 2, 2, 1, 2, 0, 6, + 8, 4, 6, 4, 6, 2, 4, 6, 2, 4, + 2, 4, 1, 0, 1, 1, 1, 1, 1, 1, + 1, 1, 0, 4, 1, 3, 2, 2, 2, 1, + 3, 1, 3, 1, 1, 2, 1, 1, 1, 2, + 2, 1, 1, 0, 4, 1, 2, 1, 3, 1, + 2, 3, 3, 3, 2, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 0, 1, 0, 1, 2, 0, 1, 1, 1, + 1, 1, 1, 1, 2, 0 }; @@ -6951,7 +6951,7 @@ yyreduce: case 208: #line 2194 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_dot3(p, (yyvsp[-2].nd), (yyvsp[0].nd)); + (yyval.nd) = new_dot2(p, (yyvsp[-1].nd), new_nil(p)); } #line 6957 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -6959,7 +6959,7 @@ yyreduce: case 209: #line 2198 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "+", (yyvsp[0].nd)); + (yyval.nd) = new_dot3(p, (yyvsp[-2].nd), (yyvsp[0].nd)); } #line 6965 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -6967,7 +6967,7 @@ yyreduce: case 210: #line 2202 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "-", (yyvsp[0].nd)); + (yyval.nd) = new_dot3(p, (yyvsp[-1].nd), new_nil(p)); } #line 6973 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -6975,7 +6975,7 @@ yyreduce: case 211: #line 2206 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "*", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "+", (yyvsp[0].nd)); } #line 6981 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -6983,7 +6983,7 @@ yyreduce: case 212: #line 2210 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "/", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "-", (yyvsp[0].nd)); } #line 6989 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -6991,7 +6991,7 @@ yyreduce: case 213: #line 2214 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "%", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "*", (yyvsp[0].nd)); } #line 6997 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -6999,7 +6999,7 @@ yyreduce: case 214: #line 2218 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "**", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "/", (yyvsp[0].nd)); } #line 7005 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7007,7 +7007,7 @@ yyreduce: case 215: #line 2222 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_uni_op(p, call_bin_op(p, (yyvsp[-2].nd), "**", (yyvsp[0].nd)), "-@"); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "%", (yyvsp[0].nd)); } #line 7013 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7015,7 +7015,7 @@ yyreduce: case 216: #line 2226 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_uni_op(p, call_bin_op(p, (yyvsp[-2].nd), "**", (yyvsp[0].nd)), "-@"); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "**", (yyvsp[0].nd)); } #line 7021 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7023,7 +7023,7 @@ yyreduce: case 217: #line 2230 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_uni_op(p, (yyvsp[0].nd), "+@"); + (yyval.nd) = call_uni_op(p, call_bin_op(p, (yyvsp[-2].nd), "**", (yyvsp[0].nd)), "-@"); } #line 7029 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7031,7 +7031,7 @@ yyreduce: case 218: #line 2234 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_uni_op(p, (yyvsp[0].nd), "-@"); + (yyval.nd) = call_uni_op(p, call_bin_op(p, (yyvsp[-2].nd), "**", (yyvsp[0].nd)), "-@"); } #line 7037 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7039,7 +7039,7 @@ yyreduce: case 219: #line 2238 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "|", (yyvsp[0].nd)); + (yyval.nd) = call_uni_op(p, (yyvsp[0].nd), "+@"); } #line 7045 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7047,7 +7047,7 @@ yyreduce: case 220: #line 2242 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "^", (yyvsp[0].nd)); + (yyval.nd) = call_uni_op(p, (yyvsp[0].nd), "-@"); } #line 7053 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7055,7 +7055,7 @@ yyreduce: case 221: #line 2246 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "&", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "|", (yyvsp[0].nd)); } #line 7061 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7063,7 +7063,7 @@ yyreduce: case 222: #line 2250 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "<=>", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "^", (yyvsp[0].nd)); } #line 7069 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7071,7 +7071,7 @@ yyreduce: case 223: #line 2254 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), ">", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "&", (yyvsp[0].nd)); } #line 7077 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7079,7 +7079,7 @@ yyreduce: case 224: #line 2258 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), ">=", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "<=>", (yyvsp[0].nd)); } #line 7085 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7087,7 +7087,7 @@ yyreduce: case 225: #line 2262 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "<", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), ">", (yyvsp[0].nd)); } #line 7093 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7095,7 +7095,7 @@ yyreduce: case 226: #line 2266 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "<=", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), ">=", (yyvsp[0].nd)); } #line 7101 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7103,7 +7103,7 @@ yyreduce: case 227: #line 2270 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "==", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "<", (yyvsp[0].nd)); } #line 7109 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7111,7 +7111,7 @@ yyreduce: case 228: #line 2274 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "===", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "<=", (yyvsp[0].nd)); } #line 7117 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7119,7 +7119,7 @@ yyreduce: case 229: #line 2278 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "!=", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "==", (yyvsp[0].nd)); } #line 7125 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7127,7 +7127,7 @@ yyreduce: case 230: #line 2282 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "=~", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "===", (yyvsp[0].nd)); } #line 7133 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7135,7 +7135,7 @@ yyreduce: case 231: #line 2286 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "!~", (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "!=", (yyvsp[0].nd)); } #line 7141 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7143,7 +7143,7 @@ yyreduce: case 232: #line 2290 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_uni_op(p, cond((yyvsp[0].nd)), "!"); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "=~", (yyvsp[0].nd)); } #line 7149 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7151,7 +7151,7 @@ yyreduce: case 233: #line 2294 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_uni_op(p, cond((yyvsp[0].nd)), "~"); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "!~", (yyvsp[0].nd)); } #line 7157 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7159,7 +7159,7 @@ yyreduce: case 234: #line 2298 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "<<", (yyvsp[0].nd)); + (yyval.nd) = call_uni_op(p, cond((yyvsp[0].nd)), "!"); } #line 7165 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7167,7 +7167,7 @@ yyreduce: case 235: #line 2302 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), ">>", (yyvsp[0].nd)); + (yyval.nd) = call_uni_op(p, cond((yyvsp[0].nd)), "~"); } #line 7173 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7175,7 +7175,7 @@ yyreduce: case 236: #line 2306 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_and(p, (yyvsp[-2].nd), (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), "<<", (yyvsp[0].nd)); } #line 7181 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7183,7 +7183,7 @@ yyreduce: case 237: #line 2310 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_or(p, (yyvsp[-2].nd), (yyvsp[0].nd)); + (yyval.nd) = call_bin_op(p, (yyvsp[-2].nd), ">>", (yyvsp[0].nd)); } #line 7189 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7191,7 +7191,7 @@ yyreduce: case 238: #line 2314 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_if(p, cond((yyvsp[-5].nd)), (yyvsp[-3].nd), (yyvsp[0].nd)); + (yyval.nd) = new_and(p, (yyvsp[-2].nd), (yyvsp[0].nd)); } #line 7197 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7199,7 +7199,7 @@ yyreduce: case 239: #line 2318 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_if(p, cond((yyvsp[-5].nd)), (yyvsp[-3].nd), (yyvsp[0].nd)); + (yyval.nd) = new_or(p, (yyvsp[-2].nd), (yyvsp[0].nd)); } #line 7205 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7207,17 +7207,33 @@ yyreduce: case 240: #line 2322 "mrbgems/mruby-compiler/core/parse.y" { + (yyval.nd) = new_if(p, cond((yyvsp[-5].nd)), (yyvsp[-3].nd), (yyvsp[0].nd)); + } +#line 7213 "mrbgems/mruby-compiler/core/y.tab.c" + break; + + case 241: +#line 2326 "mrbgems/mruby-compiler/core/parse.y" + { + (yyval.nd) = new_if(p, cond((yyvsp[-5].nd)), (yyvsp[-3].nd), (yyvsp[0].nd)); + } +#line 7221 "mrbgems/mruby-compiler/core/y.tab.c" + break; + + case 242: +#line 2330 "mrbgems/mruby-compiler/core/parse.y" + { (yyval.nd) = (yyvsp[-3].nd); void_expr_error(p, (yyvsp[0].nd)); defn_setup(p, (yyval.nd), (yyvsp[-2].nd), (yyvsp[0].nd)); nvars_unnest(p); p->in_def--; } -#line 7217 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7233 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 241: -#line 2330 "mrbgems/mruby-compiler/core/parse.y" + case 243: +#line 2338 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-5].nd); void_expr_error(p, (yyvsp[-2].nd)); @@ -7226,11 +7242,11 @@ yyreduce: nvars_unnest(p); p->in_def--; } -#line 7230 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7246 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 242: -#line 2339 "mrbgems/mruby-compiler/core/parse.y" + case 244: +#line 2347 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-3].nd); void_expr_error(p, (yyvsp[0].nd)); @@ -7239,11 +7255,11 @@ yyreduce: p->in_def--; p->in_single--; } -#line 7243 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7259 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 243: -#line 2348 "mrbgems/mruby-compiler/core/parse.y" + case 245: +#line 2356 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-5].nd); void_expr_error(p, (yyvsp[-2].nd)); @@ -7253,71 +7269,71 @@ yyreduce: p->in_def--; p->in_single--; } -#line 7257 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7273 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 244: -#line 2358 "mrbgems/mruby-compiler/core/parse.y" + case 246: +#line 2366 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[0].nd); } -#line 7265 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7281 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 246: -#line 2365 "mrbgems/mruby-compiler/core/parse.y" + case 248: +#line 2373 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-1].nd); NODE_LINENO((yyval.nd), (yyvsp[-1].nd)); } -#line 7274 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7290 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 247: -#line 2370 "mrbgems/mruby-compiler/core/parse.y" + case 249: +#line 2378 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = push((yyvsp[-3].nd), new_kw_hash(p, (yyvsp[-1].nd))); } -#line 7282 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7298 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 248: -#line 2374 "mrbgems/mruby-compiler/core/parse.y" + case 250: +#line 2382 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = cons(new_kw_hash(p, (yyvsp[-1].nd)), 0); NODE_LINENO((yyval.nd), (yyvsp[-1].nd)); } -#line 7291 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7307 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 249: -#line 2381 "mrbgems/mruby-compiler/core/parse.y" + case 251: +#line 2389 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[0].nd); } -#line 7299 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7315 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 250: -#line 2385 "mrbgems/mruby-compiler/core/parse.y" + case 252: +#line 2393 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[-2].nd)); void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = new_mod_rescue(p, (yyvsp[-2].nd), (yyvsp[0].nd)); } -#line 7309 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7325 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 251: -#line 2393 "mrbgems/mruby-compiler/core/parse.y" + case 253: +#line 2401 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-1].nd); } -#line 7317 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7333 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 252: -#line 2397 "mrbgems/mruby-compiler/core/parse.y" + case 254: +#line 2405 "mrbgems/mruby-compiler/core/parse.y" { #if 1 mrb_sym r = MRB_QSYM(mul); @@ -7341,273 +7357,257 @@ yyreduce: (yyval.nd) = 0; } } -#line 7345 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7361 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 257: -#line 2429 "mrbgems/mruby-compiler/core/parse.y" + case 259: +#line 2437 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = cons((yyvsp[-1].nd),0); NODE_LINENO((yyval.nd), (yyvsp[-1].nd)); } -#line 7354 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7370 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 258: -#line 2434 "mrbgems/mruby-compiler/core/parse.y" + case 260: +#line 2442 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = cons(push((yyvsp[-3].nd), new_kw_hash(p, (yyvsp[-1].nd))), 0); NODE_LINENO((yyval.nd), (yyvsp[-3].nd)); } -#line 7363 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7379 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 259: -#line 2439 "mrbgems/mruby-compiler/core/parse.y" + case 261: +#line 2447 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = cons(list1(new_kw_hash(p, (yyvsp[-1].nd))), 0); NODE_LINENO((yyval.nd), (yyvsp[-1].nd)); } -#line 7372 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7388 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 260: -#line 2446 "mrbgems/mruby-compiler/core/parse.y" + case 262: +#line 2454 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = cons(list1((yyvsp[0].nd)), 0); NODE_LINENO((yyval.nd), (yyvsp[0].nd)); } -#line 7382 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7398 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 261: -#line 2452 "mrbgems/mruby-compiler/core/parse.y" + case 263: +#line 2460 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = cons((yyvsp[-1].nd), (yyvsp[0].nd)); NODE_LINENO((yyval.nd), (yyvsp[-1].nd)); } -#line 7391 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7407 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 262: -#line 2457 "mrbgems/mruby-compiler/core/parse.y" + case 264: +#line 2465 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = cons(list1(new_kw_hash(p, (yyvsp[-1].nd))), (yyvsp[0].nd)); NODE_LINENO((yyval.nd), (yyvsp[-1].nd)); } -#line 7400 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7416 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 263: -#line 2462 "mrbgems/mruby-compiler/core/parse.y" + case 265: +#line 2470 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = cons(push((yyvsp[-3].nd), new_kw_hash(p, (yyvsp[-1].nd))), (yyvsp[0].nd)); NODE_LINENO((yyval.nd), (yyvsp[-3].nd)); } -#line 7409 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7425 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 264: -#line 2467 "mrbgems/mruby-compiler/core/parse.y" + case 266: +#line 2475 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = cons(0, (yyvsp[0].nd)); NODE_LINENO((yyval.nd), (yyvsp[0].nd)); } -#line 7418 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7434 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 265: -#line 2473 "mrbgems/mruby-compiler/core/parse.y" + case 267: +#line 2481 "mrbgems/mruby-compiler/core/parse.y" { (yyval.stack) = p->cmdarg_stack; CMDARG_PUSH(1); } -#line 7427 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7443 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 266: -#line 2478 "mrbgems/mruby-compiler/core/parse.y" + case 268: +#line 2486 "mrbgems/mruby-compiler/core/parse.y" { p->cmdarg_stack = (yyvsp[-1].stack); (yyval.nd) = (yyvsp[0].nd); } -#line 7436 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7452 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 267: -#line 2485 "mrbgems/mruby-compiler/core/parse.y" + case 269: +#line 2493 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_block_arg(p, (yyvsp[0].nd)); } -#line 7444 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7460 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 268: -#line 2491 "mrbgems/mruby-compiler/core/parse.y" + case 270: +#line 2499 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[0].nd); } -#line 7452 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7468 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 269: -#line 2495 "mrbgems/mruby-compiler/core/parse.y" + case 271: +#line 2503 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = 0; } -#line 7460 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7476 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 272: -#line 2505 "mrbgems/mruby-compiler/core/parse.y" + case 274: +#line 2513 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = cons((yyvsp[0].nd), 0); NODE_LINENO((yyval.nd), (yyvsp[0].nd)); } -#line 7470 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7486 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 273: -#line 2511 "mrbgems/mruby-compiler/core/parse.y" + case 275: +#line 2519 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = cons(new_splat(p, (yyvsp[0].nd)), 0); NODE_LINENO((yyval.nd), (yyvsp[0].nd)); } -#line 7480 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7496 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 274: -#line 2517 "mrbgems/mruby-compiler/core/parse.y" + case 276: +#line 2525 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = push((yyvsp[-2].nd), (yyvsp[0].nd)); } -#line 7489 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7505 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 275: -#line 2522 "mrbgems/mruby-compiler/core/parse.y" + case 277: +#line 2530 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = push((yyvsp[-3].nd), new_splat(p, (yyvsp[0].nd))); } -#line 7498 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7514 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 276: -#line 2529 "mrbgems/mruby-compiler/core/parse.y" + case 278: +#line 2537 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = push((yyvsp[-2].nd), (yyvsp[0].nd)); } -#line 7507 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7523 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 277: -#line 2534 "mrbgems/mruby-compiler/core/parse.y" + case 279: +#line 2542 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = push((yyvsp[-3].nd), new_splat(p, (yyvsp[0].nd))); } -#line 7516 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7532 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 278: -#line 2539 "mrbgems/mruby-compiler/core/parse.y" + case 280: +#line 2547 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = list1(new_splat(p, (yyvsp[0].nd))); } -#line 7525 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7541 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 286: -#line 2553 "mrbgems/mruby-compiler/core/parse.y" + case 288: +#line 2561 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_nvar(p, (yyvsp[0].num)); } -#line 7533 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7549 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 287: -#line 2557 "mrbgems/mruby-compiler/core/parse.y" + case 289: +#line 2565 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_fcall(p, (yyvsp[0].id), 0); } -#line 7541 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7557 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 288: -#line 2561 "mrbgems/mruby-compiler/core/parse.y" + case 290: +#line 2569 "mrbgems/mruby-compiler/core/parse.y" { (yyval.stack) = p->cmdarg_stack; p->cmdarg_stack = 0; } -#line 7550 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7566 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 289: -#line 2567 "mrbgems/mruby-compiler/core/parse.y" + case 291: +#line 2575 "mrbgems/mruby-compiler/core/parse.y" { p->cmdarg_stack = (yyvsp[-2].stack); (yyval.nd) = (yyvsp[-1].nd); } -#line 7559 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7575 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 290: -#line 2572 "mrbgems/mruby-compiler/core/parse.y" + case 292: +#line 2580 "mrbgems/mruby-compiler/core/parse.y" { (yyval.stack) = p->cmdarg_stack; p->cmdarg_stack = 0; } -#line 7568 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7584 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 291: -#line 2576 "mrbgems/mruby-compiler/core/parse.y" + case 293: +#line 2584 "mrbgems/mruby-compiler/core/parse.y" {p->lstate = EXPR_ENDARG;} -#line 7574 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7590 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 292: -#line 2577 "mrbgems/mruby-compiler/core/parse.y" + case 294: +#line 2585 "mrbgems/mruby-compiler/core/parse.y" { p->cmdarg_stack = (yyvsp[-3].stack); (yyval.nd) = (yyvsp[-2].nd); } -#line 7583 "mrbgems/mruby-compiler/core/y.tab.c" - break; - - case 293: -#line 2581 "mrbgems/mruby-compiler/core/parse.y" - {p->lstate = EXPR_ENDARG;} -#line 7589 "mrbgems/mruby-compiler/core/y.tab.c" - break; - - case 294: -#line 2582 "mrbgems/mruby-compiler/core/parse.y" - { - (yyval.nd) = new_nil(p); - } -#line 7597 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7599 "mrbgems/mruby-compiler/core/y.tab.c" break; case 295: -#line 2586 "mrbgems/mruby-compiler/core/parse.y" - { - (yyval.nd) = (yyvsp[-1].nd); - } +#line 2589 "mrbgems/mruby-compiler/core/parse.y" + {p->lstate = EXPR_ENDARG;} #line 7605 "mrbgems/mruby-compiler/core/y.tab.c" break; case 296: #line 2590 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_colon2(p, (yyvsp[-2].nd), (yyvsp[0].id)); + (yyval.nd) = new_nil(p); } #line 7613 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7615,7 +7615,7 @@ yyreduce: case 297: #line 2594 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_colon3(p, (yyvsp[0].id)); + (yyval.nd) = (yyvsp[-1].nd); } #line 7621 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7623,33 +7623,33 @@ yyreduce: case 298: #line 2598 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_array(p, (yyvsp[-1].nd)); - NODE_LINENO((yyval.nd), (yyvsp[-1].nd)); + (yyval.nd) = new_colon2(p, (yyvsp[-2].nd), (yyvsp[0].id)); } -#line 7630 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7629 "mrbgems/mruby-compiler/core/y.tab.c" break; case 299: -#line 2603 "mrbgems/mruby-compiler/core/parse.y" +#line 2602 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_hash(p, (yyvsp[-1].nd)); - NODE_LINENO((yyval.nd), (yyvsp[-1].nd)); + (yyval.nd) = new_colon3(p, (yyvsp[0].id)); } -#line 7639 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7637 "mrbgems/mruby-compiler/core/y.tab.c" break; case 300: -#line 2608 "mrbgems/mruby-compiler/core/parse.y" +#line 2606 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_return(p, 0); + (yyval.nd) = new_array(p, (yyvsp[-1].nd)); + NODE_LINENO((yyval.nd), (yyvsp[-1].nd)); } -#line 7647 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7646 "mrbgems/mruby-compiler/core/y.tab.c" break; case 301: -#line 2612 "mrbgems/mruby-compiler/core/parse.y" +#line 2611 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_yield(p, (yyvsp[0].nd)); + (yyval.nd) = new_hash(p, (yyvsp[-1].nd)); + NODE_LINENO((yyval.nd), (yyvsp[-1].nd)); } #line 7655 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7657,7 +7657,7 @@ yyreduce: case 302: #line 2616 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_uni_op(p, cond((yyvsp[-1].nd)), "!"); + (yyval.nd) = new_return(p, 0); } #line 7663 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7665,7 +7665,7 @@ yyreduce: case 303: #line 2620 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = call_uni_op(p, new_nil(p), "!"); + (yyval.nd) = new_yield(p, (yyvsp[0].nd)); } #line 7671 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7673,41 +7673,57 @@ yyreduce: case 304: #line 2624 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_fcall(p, (yyvsp[-1].id), cons(0, (yyvsp[0].nd))); + (yyval.nd) = call_uni_op(p, cond((yyvsp[-1].nd)), "!"); } #line 7679 "mrbgems/mruby-compiler/core/y.tab.c" break; + case 305: +#line 2628 "mrbgems/mruby-compiler/core/parse.y" + { + (yyval.nd) = call_uni_op(p, new_nil(p), "!"); + } +#line 7687 "mrbgems/mruby-compiler/core/y.tab.c" + break; + case 306: -#line 2629 "mrbgems/mruby-compiler/core/parse.y" +#line 2632 "mrbgems/mruby-compiler/core/parse.y" + { + (yyval.nd) = new_fcall(p, (yyvsp[-1].id), cons(0, (yyvsp[0].nd))); + } +#line 7695 "mrbgems/mruby-compiler/core/y.tab.c" + break; + + case 308: +#line 2637 "mrbgems/mruby-compiler/core/parse.y" { call_with_block(p, (yyvsp[-1].nd), (yyvsp[0].nd)); (yyval.nd) = (yyvsp[-1].nd); } -#line 7688 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7704 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 307: -#line 2634 "mrbgems/mruby-compiler/core/parse.y" + case 309: +#line 2642 "mrbgems/mruby-compiler/core/parse.y" { local_nest(p); (yyval.num) = p->lpar_beg; p->lpar_beg = ++p->paren_nest; } -#line 7698 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7714 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 308: -#line 2640 "mrbgems/mruby-compiler/core/parse.y" + case 310: +#line 2648 "mrbgems/mruby-compiler/core/parse.y" { (yyval.stack) = p->cmdarg_stack; p->cmdarg_stack = 0; } -#line 7707 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7723 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 309: -#line 2645 "mrbgems/mruby-compiler/core/parse.y" + case 311: +#line 2653 "mrbgems/mruby-compiler/core/parse.y" { p->lpar_beg = (yyvsp[-3].num); (yyval.nd) = new_lambda(p, (yyvsp[-2].nd), (yyvsp[0].nd)); @@ -7715,149 +7731,149 @@ yyreduce: p->cmdarg_stack = (yyvsp[-1].stack); CMDARG_LEXPOP(); } -#line 7719 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7735 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 310: -#line 2656 "mrbgems/mruby-compiler/core/parse.y" + case 312: +#line 2664 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_if(p, cond((yyvsp[-4].nd)), (yyvsp[-2].nd), (yyvsp[-1].nd)); SET_LINENO((yyval.nd), (yyvsp[-5].num)); } -#line 7728 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7744 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 311: -#line 2664 "mrbgems/mruby-compiler/core/parse.y" + case 313: +#line 2672 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_unless(p, cond((yyvsp[-4].nd)), (yyvsp[-2].nd), (yyvsp[-1].nd)); SET_LINENO((yyval.nd), (yyvsp[-5].num)); } -#line 7737 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7753 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 312: -#line 2668 "mrbgems/mruby-compiler/core/parse.y" + case 314: +#line 2676 "mrbgems/mruby-compiler/core/parse.y" {COND_PUSH(1);} -#line 7743 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7759 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 313: -#line 2668 "mrbgems/mruby-compiler/core/parse.y" + case 315: +#line 2676 "mrbgems/mruby-compiler/core/parse.y" {COND_POP();} -#line 7749 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7765 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 314: -#line 2671 "mrbgems/mruby-compiler/core/parse.y" + case 316: +#line 2679 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_while(p, cond((yyvsp[-4].nd)), (yyvsp[-1].nd)); SET_LINENO((yyval.nd), (yyvsp[-6].num)); } -#line 7758 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7774 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 315: -#line 2675 "mrbgems/mruby-compiler/core/parse.y" + case 317: +#line 2683 "mrbgems/mruby-compiler/core/parse.y" {COND_PUSH(1);} -#line 7764 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7780 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 316: -#line 2675 "mrbgems/mruby-compiler/core/parse.y" + case 318: +#line 2683 "mrbgems/mruby-compiler/core/parse.y" {COND_POP();} -#line 7770 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7786 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 317: -#line 2678 "mrbgems/mruby-compiler/core/parse.y" + case 319: +#line 2686 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_until(p, cond((yyvsp[-4].nd)), (yyvsp[-1].nd)); SET_LINENO((yyval.nd), (yyvsp[-6].num)); } -#line 7779 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7795 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 318: -#line 2685 "mrbgems/mruby-compiler/core/parse.y" + case 320: +#line 2693 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_case(p, (yyvsp[-3].nd), (yyvsp[-1].nd)); } -#line 7787 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7803 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 319: -#line 2689 "mrbgems/mruby-compiler/core/parse.y" + case 321: +#line 2697 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_case(p, 0, (yyvsp[-1].nd)); } -#line 7795 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7811 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 320: -#line 2693 "mrbgems/mruby-compiler/core/parse.y" + case 322: +#line 2701 "mrbgems/mruby-compiler/core/parse.y" {COND_PUSH(1);} -#line 7801 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7817 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 321: -#line 2695 "mrbgems/mruby-compiler/core/parse.y" + case 323: +#line 2703 "mrbgems/mruby-compiler/core/parse.y" {COND_POP();} -#line 7807 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7823 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 322: -#line 2698 "mrbgems/mruby-compiler/core/parse.y" + case 324: +#line 2706 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_for(p, (yyvsp[-7].nd), (yyvsp[-4].nd), (yyvsp[-1].nd)); SET_LINENO((yyval.nd), (yyvsp[-8].num)); } -#line 7816 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7832 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 323: -#line 2704 "mrbgems/mruby-compiler/core/parse.y" + case 325: +#line 2712 "mrbgems/mruby-compiler/core/parse.y" { if (p->in_def || p->in_single) yyerror(p, "class definition in method body"); (yyval.nd) = local_switch(p); nvars_block(p); } -#line 7827 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7843 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 324: -#line 2712 "mrbgems/mruby-compiler/core/parse.y" + case 326: +#line 2720 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_class(p, (yyvsp[-4].nd), (yyvsp[-3].nd), (yyvsp[-1].nd)); SET_LINENO((yyval.nd), (yyvsp[-5].num)); local_resume(p, (yyvsp[-2].nd)); nvars_unnest(p); } -#line 7838 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7854 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 325: -#line 2720 "mrbgems/mruby-compiler/core/parse.y" + case 327: +#line 2728 "mrbgems/mruby-compiler/core/parse.y" { (yyval.num) = p->in_def; p->in_def = 0; } -#line 7847 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7863 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 326: -#line 2725 "mrbgems/mruby-compiler/core/parse.y" + case 328: +#line 2733 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = cons(local_switch(p), nint(p->in_single)); nvars_block(p); p->in_single = 0; } -#line 7857 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7873 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 327: -#line 2732 "mrbgems/mruby-compiler/core/parse.y" + case 329: +#line 2740 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_sclass(p, (yyvsp[-5].nd), (yyvsp[-1].nd)); SET_LINENO((yyval.nd), (yyvsp[-7].num)); @@ -7866,44 +7882,44 @@ yyreduce: p->in_def = (yyvsp[-4].num); p->in_single = intn((yyvsp[-2].nd)->cdr); } -#line 7870 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7886 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 328: -#line 2742 "mrbgems/mruby-compiler/core/parse.y" + case 330: +#line 2750 "mrbgems/mruby-compiler/core/parse.y" { if (p->in_def || p->in_single) yyerror(p, "module definition in method body"); (yyval.nd) = local_switch(p); nvars_block(p); } -#line 7881 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7897 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 329: -#line 2750 "mrbgems/mruby-compiler/core/parse.y" + case 331: +#line 2758 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_module(p, (yyvsp[-3].nd), (yyvsp[-1].nd)); SET_LINENO((yyval.nd), (yyvsp[-4].num)); local_resume(p, (yyvsp[-2].nd)); nvars_unnest(p); } -#line 7892 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7908 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 330: -#line 2760 "mrbgems/mruby-compiler/core/parse.y" + case 332: +#line 2768 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-3].nd); defn_setup(p, (yyval.nd), (yyvsp[-2].nd), (yyvsp[-1].nd)); nvars_unnest(p); p->in_def--; } -#line 7903 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7919 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 331: -#line 2770 "mrbgems/mruby-compiler/core/parse.y" + case 333: +#line 2778 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-3].nd); defs_setup(p, (yyval.nd), (yyvsp[-2].nd), (yyvsp[-1].nd)); @@ -7911,29 +7927,13 @@ yyreduce: p->in_def--; p->in_single--; } -#line 7915 "mrbgems/mruby-compiler/core/y.tab.c" - break; - - case 332: -#line 2778 "mrbgems/mruby-compiler/core/parse.y" - { - (yyval.nd) = new_break(p, 0); - } -#line 7923 "mrbgems/mruby-compiler/core/y.tab.c" - break; - - case 333: -#line 2782 "mrbgems/mruby-compiler/core/parse.y" - { - (yyval.nd) = new_next(p, 0); - } #line 7931 "mrbgems/mruby-compiler/core/y.tab.c" break; case 334: #line 2786 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_redo(p); + (yyval.nd) = new_break(p, 0); } #line 7939 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7941,56 +7941,56 @@ yyreduce: case 335: #line 2790 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_retry(p); + (yyval.nd) = new_next(p, 0); } #line 7947 "mrbgems/mruby-compiler/core/y.tab.c" break; case 336: -#line 2796 "mrbgems/mruby-compiler/core/parse.y" +#line 2794 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = (yyvsp[0].nd); - if (!(yyval.nd)) (yyval.nd) = new_nil(p); + (yyval.nd) = new_redo(p); } -#line 7956 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7955 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 343: -#line 2815 "mrbgems/mruby-compiler/core/parse.y" + case 337: +#line 2798 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_if(p, cond((yyvsp[-3].nd)), (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_retry(p); } -#line 7964 "mrbgems/mruby-compiler/core/y.tab.c" +#line 7963 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 345: -#line 2822 "mrbgems/mruby-compiler/core/parse.y" + case 338: +#line 2804 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[0].nd); + if (!(yyval.nd)) (yyval.nd) = new_nil(p); } #line 7972 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 346: -#line 2828 "mrbgems/mruby-compiler/core/parse.y" + case 345: +#line 2823 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = list1(list1((yyvsp[0].nd))); + (yyval.nd) = new_if(p, cond((yyvsp[-3].nd)), (yyvsp[-1].nd), (yyvsp[0].nd)); } #line 7980 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 348: -#line 2835 "mrbgems/mruby-compiler/core/parse.y" + case 347: +#line 2830 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = list3((yyvsp[0].nd),0,0); + (yyval.nd) = (yyvsp[0].nd); } #line 7988 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 349: -#line 2839 "mrbgems/mruby-compiler/core/parse.y" + case 348: +#line 2836 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = list3((yyvsp[-3].nd), new_arg(p, (yyvsp[0].id)), 0); + (yyval.nd) = list1(list1((yyvsp[0].nd))); } #line 7996 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -7998,7 +7998,7 @@ yyreduce: case 350: #line 2843 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = list3((yyvsp[-5].nd), new_arg(p, (yyvsp[-2].id)), (yyvsp[0].nd)); + (yyval.nd) = list3((yyvsp[0].nd),0,0); } #line 8004 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8006,24 +8006,24 @@ yyreduce: case 351: #line 2847 "mrbgems/mruby-compiler/core/parse.y" { - local_add_f(p, 0); - (yyval.nd) = list3((yyvsp[-2].nd), (node*)-1, 0); + (yyval.nd) = list3((yyvsp[-3].nd), new_arg(p, (yyvsp[0].id)), 0); } -#line 8013 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8012 "mrbgems/mruby-compiler/core/y.tab.c" break; case 352: -#line 2852 "mrbgems/mruby-compiler/core/parse.y" +#line 2851 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = list3((yyvsp[-4].nd), (node*)-1, (yyvsp[0].nd)); + (yyval.nd) = list3((yyvsp[-5].nd), new_arg(p, (yyvsp[-2].id)), (yyvsp[0].nd)); } -#line 8021 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8020 "mrbgems/mruby-compiler/core/y.tab.c" break; case 353: -#line 2856 "mrbgems/mruby-compiler/core/parse.y" +#line 2855 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = list3(0, new_arg(p, (yyvsp[0].id)), 0); + local_add_f(p, 0); + (yyval.nd) = list3((yyvsp[-2].nd), (node*)-1, 0); } #line 8029 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8031,7 +8031,7 @@ yyreduce: case 354: #line 2860 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = list3(0, new_arg(p, (yyvsp[-2].id)), (yyvsp[0].nd)); + (yyval.nd) = list3((yyvsp[-4].nd), (node*)-1, (yyvsp[0].nd)); } #line 8037 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8039,40 +8039,40 @@ yyreduce: case 355: #line 2864 "mrbgems/mruby-compiler/core/parse.y" { - local_add_f(p, 0); - (yyval.nd) = list3(0, (node*)-1, 0); + (yyval.nd) = list3(0, new_arg(p, (yyvsp[0].id)), 0); } -#line 8046 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8045 "mrbgems/mruby-compiler/core/y.tab.c" break; case 356: -#line 2869 "mrbgems/mruby-compiler/core/parse.y" +#line 2868 "mrbgems/mruby-compiler/core/parse.y" { - local_add_f(p, 0); + (yyval.nd) = list3(0, new_arg(p, (yyvsp[-2].id)), (yyvsp[0].nd)); } -#line 8054 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8053 "mrbgems/mruby-compiler/core/y.tab.c" break; case 357: -#line 2873 "mrbgems/mruby-compiler/core/parse.y" +#line 2872 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = list3(0, (node*)-1, (yyvsp[0].nd)); + local_add_f(p, 0); + (yyval.nd) = list3(0, (node*)-1, 0); } #line 8062 "mrbgems/mruby-compiler/core/y.tab.c" break; case 358: -#line 2879 "mrbgems/mruby-compiler/core/parse.y" +#line 2877 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args_tail(p, (yyvsp[-3].nd), (yyvsp[-1].nd), (yyvsp[0].id)); + local_add_f(p, 0); } #line 8070 "mrbgems/mruby-compiler/core/y.tab.c" break; case 359: -#line 2883 "mrbgems/mruby-compiler/core/parse.y" +#line 2881 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args_tail(p, (yyvsp[-1].nd), 0, (yyvsp[0].id)); + (yyval.nd) = list3(0, (node*)-1, (yyvsp[0].nd)); } #line 8078 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8080,7 +8080,7 @@ yyreduce: case 360: #line 2887 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args_tail(p, 0, (yyvsp[-1].nd), (yyvsp[0].id)); + (yyval.nd) = new_args_tail(p, (yyvsp[-3].nd), (yyvsp[-1].nd), (yyvsp[0].id)); } #line 8086 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8088,39 +8088,39 @@ yyreduce: case 361: #line 2891 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args_tail(p, 0, 0, (yyvsp[0].id)); + (yyval.nd) = new_args_tail(p, (yyvsp[-1].nd), 0, (yyvsp[0].id)); } #line 8094 "mrbgems/mruby-compiler/core/y.tab.c" break; case 362: -#line 2897 "mrbgems/mruby-compiler/core/parse.y" +#line 2895 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = (yyvsp[0].nd); + (yyval.nd) = new_args_tail(p, 0, (yyvsp[-1].nd), (yyvsp[0].id)); } #line 8102 "mrbgems/mruby-compiler/core/y.tab.c" break; case 363: -#line 2901 "mrbgems/mruby-compiler/core/parse.y" +#line 2899 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args_tail(p, 0, 0, 0); + (yyval.nd) = new_args_tail(p, 0, 0, (yyvsp[0].id)); } #line 8110 "mrbgems/mruby-compiler/core/y.tab.c" break; case 364: -#line 2907 "mrbgems/mruby-compiler/core/parse.y" +#line 2905 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-5].nd), (yyvsp[-3].nd), (yyvsp[-1].id), 0, (yyvsp[0].nd)); + (yyval.nd) = (yyvsp[0].nd); } #line 8118 "mrbgems/mruby-compiler/core/y.tab.c" break; case 365: -#line 2911 "mrbgems/mruby-compiler/core/parse.y" +#line 2909 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-7].nd), (yyvsp[-5].nd), (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_args_tail(p, 0, 0, 0); } #line 8126 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8128,7 +8128,7 @@ yyreduce: case 366: #line 2915 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-3].nd), (yyvsp[-1].nd), 0, 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-5].nd), (yyvsp[-3].nd), (yyvsp[-1].id), 0, (yyvsp[0].nd)); } #line 8134 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8136,7 +8136,7 @@ yyreduce: case 367: #line 2919 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-5].nd), (yyvsp[-3].nd), 0, (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-7].nd), (yyvsp[-5].nd), (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); } #line 8142 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8144,7 +8144,7 @@ yyreduce: case 368: #line 2923 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-3].nd), 0, (yyvsp[-1].id), 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-3].nd), (yyvsp[-1].nd), 0, 0, (yyvsp[0].nd)); } #line 8150 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8152,7 +8152,7 @@ yyreduce: case 369: #line 2927 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-2].nd), 0, 0, 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-5].nd), (yyvsp[-3].nd), 0, (yyvsp[-1].nd), (yyvsp[0].nd)); } #line 8158 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8160,7 +8160,7 @@ yyreduce: case 370: #line 2931 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-5].nd), 0, (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-3].nd), 0, (yyvsp[-1].id), 0, (yyvsp[0].nd)); } #line 8166 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8168,7 +8168,7 @@ yyreduce: case 371: #line 2935 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-1].nd), 0, 0, 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-2].nd), 0, 0, 0, (yyvsp[0].nd)); } #line 8174 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8176,7 +8176,7 @@ yyreduce: case 372: #line 2939 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, (yyvsp[-3].nd), (yyvsp[-1].id), 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-5].nd), 0, (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); } #line 8182 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8184,7 +8184,7 @@ yyreduce: case 373: #line 2943 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, (yyvsp[-5].nd), (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-1].nd), 0, 0, 0, (yyvsp[0].nd)); } #line 8190 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8192,7 +8192,7 @@ yyreduce: case 374: #line 2947 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, (yyvsp[-1].nd), 0, 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, 0, (yyvsp[-3].nd), (yyvsp[-1].id), 0, (yyvsp[0].nd)); } #line 8198 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8200,7 +8200,7 @@ yyreduce: case 375: #line 2951 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, (yyvsp[-3].nd), 0, (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_args(p, 0, (yyvsp[-5].nd), (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); } #line 8206 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8208,7 +8208,7 @@ yyreduce: case 376: #line 2955 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, 0, (yyvsp[-1].id), 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, 0, (yyvsp[-1].nd), 0, 0, (yyvsp[0].nd)); } #line 8214 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8216,7 +8216,7 @@ yyreduce: case 377: #line 2959 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, 0, (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_args(p, 0, (yyvsp[-3].nd), 0, (yyvsp[-1].nd), (yyvsp[0].nd)); } #line 8222 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8224,138 +8224,154 @@ yyreduce: case 378: #line 2963 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, 0, 0, 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, 0, 0, (yyvsp[-1].id), 0, (yyvsp[0].nd)); } #line 8230 "mrbgems/mruby-compiler/core/y.tab.c" break; case 379: -#line 2969 "mrbgems/mruby-compiler/core/parse.y" +#line 2967 "mrbgems/mruby-compiler/core/parse.y" + { + (yyval.nd) = new_args(p, 0, 0, (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); + } +#line 8238 "mrbgems/mruby-compiler/core/y.tab.c" + break; + + case 380: +#line 2971 "mrbgems/mruby-compiler/core/parse.y" + { + (yyval.nd) = new_args(p, 0, 0, 0, 0, (yyvsp[0].nd)); + } +#line 8246 "mrbgems/mruby-compiler/core/y.tab.c" + break; + + case 381: +#line 2977 "mrbgems/mruby-compiler/core/parse.y" { local_add_blk(p, 0); (yyval.nd) = 0; } -#line 8239 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8255 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 380: -#line 2974 "mrbgems/mruby-compiler/core/parse.y" + case 382: +#line 2982 "mrbgems/mruby-compiler/core/parse.y" { p->cmd_start = TRUE; (yyval.nd) = (yyvsp[0].nd); } -#line 8248 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8264 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 381: -#line 2980 "mrbgems/mruby-compiler/core/parse.y" + case 383: +#line 2988 "mrbgems/mruby-compiler/core/parse.y" {local_add_blk(p, 0);} -#line 8254 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8270 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 382: -#line 2981 "mrbgems/mruby-compiler/core/parse.y" + case 384: +#line 2989 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = 0; } -#line 8262 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8278 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 383: -#line 2985 "mrbgems/mruby-compiler/core/parse.y" + case 385: +#line 2993 "mrbgems/mruby-compiler/core/parse.y" { local_add_blk(p, 0); (yyval.nd) = 0; } -#line 8271 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8287 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 384: -#line 2990 "mrbgems/mruby-compiler/core/parse.y" + case 386: +#line 2998 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-2].nd); } -#line 8279 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8295 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 385: -#line 2997 "mrbgems/mruby-compiler/core/parse.y" + case 387: +#line 3005 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = 0; } -#line 8287 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8303 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 386: -#line 3001 "mrbgems/mruby-compiler/core/parse.y" + case 388: +#line 3009 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = 0; } -#line 8295 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8311 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 389: -#line 3011 "mrbgems/mruby-compiler/core/parse.y" + case 391: +#line 3019 "mrbgems/mruby-compiler/core/parse.y" { local_add_f(p, (yyvsp[0].id)); new_bv(p, (yyvsp[0].id)); } -#line 8304 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8320 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 391: -#line 3019 "mrbgems/mruby-compiler/core/parse.y" + case 393: +#line 3027 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-2].nd); } -#line 8312 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8328 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 392: -#line 3023 "mrbgems/mruby-compiler/core/parse.y" + case 394: +#line 3031 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[0].nd); } -#line 8320 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8336 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 393: -#line 3029 "mrbgems/mruby-compiler/core/parse.y" + case 395: +#line 3037 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-1].nd); } -#line 8328 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8344 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 394: -#line 3033 "mrbgems/mruby-compiler/core/parse.y" + case 396: +#line 3041 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-1].nd); } -#line 8336 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8352 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 395: -#line 3039 "mrbgems/mruby-compiler/core/parse.y" + case 397: +#line 3047 "mrbgems/mruby-compiler/core/parse.y" { local_nest(p); nvars_nest(p); } -#line 8345 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8361 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 396: -#line 3046 "mrbgems/mruby-compiler/core/parse.y" + case 398: +#line 3054 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_block(p,(yyvsp[-2].nd),(yyvsp[-1].nd)); local_unnest(p); nvars_unnest(p); } -#line 8355 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8371 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 397: -#line 3054 "mrbgems/mruby-compiler/core/parse.y" + case 399: +#line 3062 "mrbgems/mruby-compiler/core/parse.y" { if ((yyvsp[-1].nd)->car == (node*)NODE_YIELD) { yyerror(p, "block given to yield"); @@ -8365,55 +8381,39 @@ yyreduce: } (yyval.nd) = (yyvsp[-1].nd); } -#line 8369 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8385 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 398: -#line 3064 "mrbgems/mruby-compiler/core/parse.y" + case 400: +#line 3072 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_call(p, (yyvsp[-3].nd), (yyvsp[-1].id), (yyvsp[0].nd), (yyvsp[-2].num)); } -#line 8377 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8393 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 399: -#line 3068 "mrbgems/mruby-compiler/core/parse.y" + case 401: +#line 3076 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_call(p, (yyvsp[-4].nd), (yyvsp[-2].id), (yyvsp[-1].nd), (yyvsp[-3].num)); call_with_block(p, (yyval.nd), (yyvsp[0].nd)); } -#line 8386 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8402 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 400: -#line 3073 "mrbgems/mruby-compiler/core/parse.y" + case 402: +#line 3081 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_call(p, (yyvsp[-4].nd), (yyvsp[-2].id), (yyvsp[-1].nd), (yyvsp[-3].num)); call_with_block(p, (yyval.nd), (yyvsp[0].nd)); } -#line 8395 "mrbgems/mruby-compiler/core/y.tab.c" - break; - - case 401: -#line 3080 "mrbgems/mruby-compiler/core/parse.y" - { - (yyval.nd) = new_fcall(p, (yyvsp[-1].id), (yyvsp[0].nd)); - } -#line 8403 "mrbgems/mruby-compiler/core/y.tab.c" - break; - - case 402: -#line 3084 "mrbgems/mruby-compiler/core/parse.y" - { - (yyval.nd) = new_call(p, (yyvsp[-3].nd), (yyvsp[-1].id), (yyvsp[0].nd), (yyvsp[-2].num)); - } #line 8411 "mrbgems/mruby-compiler/core/y.tab.c" break; case 403: #line 3088 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_call(p, (yyvsp[-3].nd), (yyvsp[-1].id), (yyvsp[0].nd), tCOLON2); + (yyval.nd) = new_fcall(p, (yyvsp[-1].id), (yyvsp[0].nd)); } #line 8419 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8421,7 +8421,7 @@ yyreduce: case 404: #line 3092 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_call(p, (yyvsp[-2].nd), (yyvsp[0].id), 0, tCOLON2); + (yyval.nd) = new_call(p, (yyvsp[-3].nd), (yyvsp[-1].id), (yyvsp[0].nd), (yyvsp[-2].num)); } #line 8427 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8429,7 +8429,7 @@ yyreduce: case 405: #line 3096 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_call(p, (yyvsp[-2].nd), MRB_SYM(call), (yyvsp[0].nd), (yyvsp[-1].num)); + (yyval.nd) = new_call(p, (yyvsp[-3].nd), (yyvsp[-1].id), (yyvsp[0].nd), tCOLON2); } #line 8435 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8437,7 +8437,7 @@ yyreduce: case 406: #line 3100 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_call(p, (yyvsp[-2].nd), MRB_SYM(call), (yyvsp[0].nd), tCOLON2); + (yyval.nd) = new_call(p, (yyvsp[-2].nd), (yyvsp[0].id), 0, tCOLON2); } #line 8443 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8445,7 +8445,7 @@ yyreduce: case 407: #line 3104 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_super(p, (yyvsp[0].nd)); + (yyval.nd) = new_call(p, (yyvsp[-2].nd), MRB_SYM(call), (yyvsp[0].nd), (yyvsp[-1].num)); } #line 8451 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8453,7 +8453,7 @@ yyreduce: case 408: #line 3108 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_zsuper(p); + (yyval.nd) = new_call(p, (yyvsp[-2].nd), MRB_SYM(call), (yyvsp[0].nd), tCOLON2); } #line 8459 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8461,63 +8461,79 @@ yyreduce: case 409: #line 3112 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_call(p, (yyvsp[-3].nd), MRB_QSYM(aref), (yyvsp[-1].nd), '.'); + (yyval.nd) = new_super(p, (yyvsp[0].nd)); } #line 8467 "mrbgems/mruby-compiler/core/y.tab.c" break; case 410: -#line 3118 "mrbgems/mruby-compiler/core/parse.y" +#line 3116 "mrbgems/mruby-compiler/core/parse.y" + { + (yyval.nd) = new_zsuper(p); + } +#line 8475 "mrbgems/mruby-compiler/core/y.tab.c" + break; + + case 411: +#line 3120 "mrbgems/mruby-compiler/core/parse.y" + { + (yyval.nd) = new_call(p, (yyvsp[-3].nd), MRB_QSYM(aref), (yyvsp[-1].nd), '.'); + } +#line 8483 "mrbgems/mruby-compiler/core/y.tab.c" + break; + + case 412: +#line 3126 "mrbgems/mruby-compiler/core/parse.y" { local_nest(p); nvars_nest(p); (yyval.num) = p->lineno; } -#line 8477 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8493 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 411: -#line 3125 "mrbgems/mruby-compiler/core/parse.y" + case 413: +#line 3133 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_block(p,(yyvsp[-2].nd),(yyvsp[-1].nd)); SET_LINENO((yyval.nd), (yyvsp[-3].num)); local_unnest(p); nvars_unnest(p); } -#line 8488 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8504 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 412: -#line 3132 "mrbgems/mruby-compiler/core/parse.y" + case 414: +#line 3140 "mrbgems/mruby-compiler/core/parse.y" { local_nest(p); nvars_nest(p); (yyval.num) = p->lineno; } -#line 8498 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8514 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 413: -#line 3139 "mrbgems/mruby-compiler/core/parse.y" + case 415: +#line 3147 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_block(p,(yyvsp[-2].nd),(yyvsp[-1].nd)); SET_LINENO((yyval.nd), (yyvsp[-3].num)); local_unnest(p); nvars_unnest(p); } -#line 8509 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8525 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 414: -#line 3150 "mrbgems/mruby-compiler/core/parse.y" + case 416: +#line 3158 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = cons(cons((yyvsp[-3].nd), (yyvsp[-1].nd)), (yyvsp[0].nd)); } -#line 8517 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8533 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 415: -#line 3156 "mrbgems/mruby-compiler/core/parse.y" + case 417: +#line 3164 "mrbgems/mruby-compiler/core/parse.y" { if ((yyvsp[0].nd)) { (yyval.nd) = cons(cons(0, (yyvsp[0].nd)), 0); @@ -8526,297 +8542,281 @@ yyreduce: (yyval.nd) = 0; } } -#line 8530 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8546 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 417: -#line 3170 "mrbgems/mruby-compiler/core/parse.y" + case 419: +#line 3178 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = list1(list3((yyvsp[-4].nd), (yyvsp[-3].nd), (yyvsp[-1].nd))); if ((yyvsp[0].nd)) (yyval.nd) = append((yyval.nd), (yyvsp[0].nd)); } -#line 8539 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8555 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 419: -#line 3178 "mrbgems/mruby-compiler/core/parse.y" + case 421: +#line 3186 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = list1((yyvsp[0].nd)); } -#line 8547 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8563 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 422: -#line 3186 "mrbgems/mruby-compiler/core/parse.y" + case 424: +#line 3194 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[0].nd); } -#line 8555 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8571 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 424: -#line 3193 "mrbgems/mruby-compiler/core/parse.y" + case 426: +#line 3201 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[0].nd); } -#line 8563 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8579 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 431: -#line 3207 "mrbgems/mruby-compiler/core/parse.y" + case 433: +#line 3215 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = concat_string(p, (yyvsp[-1].nd), (yyvsp[0].nd)); } -#line 8571 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8587 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 434: -#line 3215 "mrbgems/mruby-compiler/core/parse.y" + case 436: +#line 3223 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[0].nd); } -#line 8579 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8595 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 435: -#line 3219 "mrbgems/mruby-compiler/core/parse.y" + case 437: +#line 3227 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_dstr(p, push((yyvsp[-1].nd), (yyvsp[0].nd))); } -#line 8587 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8603 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 437: -#line 3226 "mrbgems/mruby-compiler/core/parse.y" + case 439: +#line 3234 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = append((yyvsp[-1].nd), (yyvsp[0].nd)); } -#line 8595 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8611 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 438: -#line 3232 "mrbgems/mruby-compiler/core/parse.y" + case 440: +#line 3240 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = list1((yyvsp[0].nd)); } -#line 8603 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8619 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 439: -#line 3236 "mrbgems/mruby-compiler/core/parse.y" + case 441: +#line 3244 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = p->lex_strterm; p->lex_strterm = NULL; } -#line 8612 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8628 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 440: -#line 3242 "mrbgems/mruby-compiler/core/parse.y" + case 442: +#line 3250 "mrbgems/mruby-compiler/core/parse.y" { p->lex_strterm = (yyvsp[-2].nd); (yyval.nd) = list2((yyvsp[-3].nd), (yyvsp[-1].nd)); } -#line 8621 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8637 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 441: -#line 3247 "mrbgems/mruby-compiler/core/parse.y" + case 443: +#line 3255 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = list1(new_literal_delim(p)); } -#line 8629 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8645 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 442: -#line 3251 "mrbgems/mruby-compiler/core/parse.y" + case 444: +#line 3259 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = list1(new_literal_delim(p)); } -#line 8637 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8653 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 443: -#line 3257 "mrbgems/mruby-compiler/core/parse.y" + case 445: +#line 3265 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[0].nd); } -#line 8645 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8661 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 444: -#line 3261 "mrbgems/mruby-compiler/core/parse.y" + case 446: +#line 3269 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_dxstr(p, push((yyvsp[-1].nd), (yyvsp[0].nd))); } -#line 8653 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8669 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 445: -#line 3267 "mrbgems/mruby-compiler/core/parse.y" + case 447: +#line 3275 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[0].nd); } -#line 8661 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8677 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 446: -#line 3271 "mrbgems/mruby-compiler/core/parse.y" + case 448: +#line 3279 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_dregx(p, (yyvsp[-1].nd), (yyvsp[0].nd)); } -#line 8669 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8685 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 450: -#line 3284 "mrbgems/mruby-compiler/core/parse.y" + case 452: +#line 3292 "mrbgems/mruby-compiler/core/parse.y" { parser_heredoc_info * inf = parsing_heredoc_inf(p); inf->doc = push(inf->doc, new_str(p, "", 0)); heredoc_end(p); } -#line 8679 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8695 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 451: -#line 3290 "mrbgems/mruby-compiler/core/parse.y" + case 453: +#line 3298 "mrbgems/mruby-compiler/core/parse.y" { heredoc_end(p); } -#line 8687 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8703 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 454: -#line 3300 "mrbgems/mruby-compiler/core/parse.y" + case 456: +#line 3308 "mrbgems/mruby-compiler/core/parse.y" { parser_heredoc_info * inf = parsing_heredoc_inf(p); inf->doc = push(inf->doc, (yyvsp[0].nd)); heredoc_treat_nextline(p); } -#line 8697 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8713 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 455: -#line 3306 "mrbgems/mruby-compiler/core/parse.y" + case 457: +#line 3314 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = p->lex_strterm; p->lex_strterm = NULL; } -#line 8706 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8722 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 456: -#line 3312 "mrbgems/mruby-compiler/core/parse.y" + case 458: +#line 3320 "mrbgems/mruby-compiler/core/parse.y" { parser_heredoc_info * inf = parsing_heredoc_inf(p); p->lex_strterm = (yyvsp[-2].nd); inf->doc = push(push(inf->doc, (yyvsp[-3].nd)), (yyvsp[-1].nd)); } -#line 8716 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8732 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 457: -#line 3320 "mrbgems/mruby-compiler/core/parse.y" + case 459: +#line 3328 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_words(p, list1((yyvsp[0].nd))); } -#line 8724 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8740 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 458: -#line 3324 "mrbgems/mruby-compiler/core/parse.y" + case 460: +#line 3332 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_words(p, push((yyvsp[-1].nd), (yyvsp[0].nd))); } -#line 8732 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8748 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 459: -#line 3331 "mrbgems/mruby-compiler/core/parse.y" + case 461: +#line 3339 "mrbgems/mruby-compiler/core/parse.y" { p->lstate = EXPR_ENDARG; (yyval.nd) = new_sym(p, (yyvsp[0].id)); } -#line 8741 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8757 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 460: -#line 3336 "mrbgems/mruby-compiler/core/parse.y" + case 462: +#line 3344 "mrbgems/mruby-compiler/core/parse.y" { p->lstate = EXPR_ENDARG; (yyval.nd) = new_dsym(p, new_dstr(p, push((yyvsp[-1].nd), (yyvsp[0].nd)))); } -#line 8750 "mrbgems/mruby-compiler/core/y.tab.c" - break; - - case 461: -#line 3343 "mrbgems/mruby-compiler/core/parse.y" - { - (yyval.id) = (yyvsp[0].id); - } -#line 8758 "mrbgems/mruby-compiler/core/y.tab.c" - break; - - case 466: -#line 3353 "mrbgems/mruby-compiler/core/parse.y" - { - (yyval.id) = new_strsym(p, (yyvsp[0].nd)); - } #line 8766 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 467: -#line 3357 "mrbgems/mruby-compiler/core/parse.y" + case 463: +#line 3351 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.id) = new_strsym(p, (yyvsp[0].nd)); + (yyval.id) = (yyvsp[0].id); } #line 8774 "mrbgems/mruby-compiler/core/y.tab.c" break; case 468: -#line 3363 "mrbgems/mruby-compiler/core/parse.y" +#line 3361 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_symbols(p, list1((yyvsp[0].nd))); + (yyval.id) = new_strsym(p, (yyvsp[0].nd)); } #line 8782 "mrbgems/mruby-compiler/core/y.tab.c" break; case 469: -#line 3367 "mrbgems/mruby-compiler/core/parse.y" +#line 3365 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_symbols(p, push((yyvsp[-1].nd), (yyvsp[0].nd))); + (yyval.id) = new_strsym(p, (yyvsp[0].nd)); } #line 8790 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 472: -#line 3375 "mrbgems/mruby-compiler/core/parse.y" + case 470: +#line 3371 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = negate_lit(p, (yyvsp[0].nd)); + (yyval.nd) = new_symbols(p, list1((yyvsp[0].nd))); } #line 8798 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 473: -#line 3379 "mrbgems/mruby-compiler/core/parse.y" + case 471: +#line 3375 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = negate_lit(p, (yyvsp[0].nd)); + (yyval.nd) = new_symbols(p, push((yyvsp[-1].nd), (yyvsp[0].nd))); } #line 8806 "mrbgems/mruby-compiler/core/y.tab.c" break; case 474: -#line 3385 "mrbgems/mruby-compiler/core/parse.y" +#line 3383 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_lvar(p, (yyvsp[0].id)); + (yyval.nd) = negate_lit(p, (yyvsp[0].nd)); } #line 8814 "mrbgems/mruby-compiler/core/y.tab.c" break; case 475: -#line 3389 "mrbgems/mruby-compiler/core/parse.y" +#line 3387 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_ivar(p, (yyvsp[0].id)); + (yyval.nd) = negate_lit(p, (yyvsp[0].nd)); } #line 8822 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8824,7 +8824,7 @@ yyreduce: case 476: #line 3393 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_gvar(p, (yyvsp[0].id)); + (yyval.nd) = new_lvar(p, (yyvsp[0].id)); } #line 8830 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8832,7 +8832,7 @@ yyreduce: case 477: #line 3397 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_cvar(p, (yyvsp[0].id)); + (yyval.nd) = new_ivar(p, (yyvsp[0].id)); } #line 8838 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8840,39 +8840,39 @@ yyreduce: case 478: #line 3401 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_const(p, (yyvsp[0].id)); + (yyval.nd) = new_gvar(p, (yyvsp[0].id)); } #line 8846 "mrbgems/mruby-compiler/core/y.tab.c" break; case 479: -#line 3407 "mrbgems/mruby-compiler/core/parse.y" +#line 3405 "mrbgems/mruby-compiler/core/parse.y" { - assignable(p, (yyvsp[0].nd)); + (yyval.nd) = new_cvar(p, (yyvsp[0].id)); } #line 8854 "mrbgems/mruby-compiler/core/y.tab.c" break; case 480: -#line 3411 "mrbgems/mruby-compiler/core/parse.y" +#line 3409 "mrbgems/mruby-compiler/core/parse.y" { - yyerror(p, "can't assign to numbered parameter"); + (yyval.nd) = new_const(p, (yyvsp[0].id)); } #line 8862 "mrbgems/mruby-compiler/core/y.tab.c" break; case 481: -#line 3417 "mrbgems/mruby-compiler/core/parse.y" +#line 3415 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = var_reference(p, (yyvsp[0].nd)); + assignable(p, (yyvsp[0].nd)); } #line 8870 "mrbgems/mruby-compiler/core/y.tab.c" break; case 482: -#line 3421 "mrbgems/mruby-compiler/core/parse.y" +#line 3419 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_nil(p); + yyerror(p, "can't assign to numbered parameter"); } #line 8878 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8880,7 +8880,7 @@ yyreduce: case 483: #line 3425 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_self(p); + (yyval.nd) = var_reference(p, (yyvsp[0].nd)); } #line 8886 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8888,7 +8888,7 @@ yyreduce: case 484: #line 3429 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_true(p); + (yyval.nd) = new_nil(p); } #line 8894 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8896,7 +8896,7 @@ yyreduce: case 485: #line 3433 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_false(p); + (yyval.nd) = new_self(p); } #line 8902 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -8904,28 +8904,44 @@ yyreduce: case 486: #line 3437 "mrbgems/mruby-compiler/core/parse.y" { + (yyval.nd) = new_true(p); + } +#line 8910 "mrbgems/mruby-compiler/core/y.tab.c" + break; + + case 487: +#line 3441 "mrbgems/mruby-compiler/core/parse.y" + { + (yyval.nd) = new_false(p); + } +#line 8918 "mrbgems/mruby-compiler/core/y.tab.c" + break; + + case 488: +#line 3445 "mrbgems/mruby-compiler/core/parse.y" + { const char *fn = mrb_sym_name_len(p->mrb, p->filename_sym, NULL); if (!fn) { fn = "(null)"; } (yyval.nd) = new_str(p, fn, strlen(fn)); } -#line 8914 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8930 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 487: -#line 3445 "mrbgems/mruby-compiler/core/parse.y" + case 489: +#line 3453 "mrbgems/mruby-compiler/core/parse.y" { char buf[16]; dump_int(p->lineno, buf); (yyval.nd) = new_int(p, buf, 10, 0); } -#line 8925 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8941 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 488: -#line 3452 "mrbgems/mruby-compiler/core/parse.y" + case 490: +#line 3460 "mrbgems/mruby-compiler/core/parse.y" { #ifdef MRB_UTF8_STRING const char *enc = "UTF-8"; @@ -8934,46 +8950,46 @@ yyreduce: #endif (yyval.nd) = new_str(p, enc, strlen(enc)); } -#line 8938 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8954 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 491: -#line 3467 "mrbgems/mruby-compiler/core/parse.y" + case 493: +#line 3475 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = 0; } -#line 8946 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8962 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 492: -#line 3471 "mrbgems/mruby-compiler/core/parse.y" + case 494: +#line 3479 "mrbgems/mruby-compiler/core/parse.y" { p->lstate = EXPR_BEG; p->cmd_start = TRUE; } -#line 8955 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8971 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 493: -#line 3476 "mrbgems/mruby-compiler/core/parse.y" + case 495: +#line 3484 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-1].nd); } -#line 8963 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8979 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 494: -#line 3487 "mrbgems/mruby-compiler/core/parse.y" + case 496: +#line 3495 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-1].nd); p->lstate = EXPR_BEG; p->cmd_start = TRUE; } -#line 8973 "mrbgems/mruby-compiler/core/y.tab.c" +#line 8989 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 495: -#line 3493 "mrbgems/mruby-compiler/core/parse.y" + case 497: +#line 3501 "mrbgems/mruby-compiler/core/parse.y" { #if 1 /* til real keyword args implemented */ @@ -8991,80 +9007,64 @@ yyreduce: new_args_tail(p, 0, new_kw_rest_args(p, nsym(k)), b)); #endif } -#line 8995 "mrbgems/mruby-compiler/core/y.tab.c" - break; - - case 497: -#line 3514 "mrbgems/mruby-compiler/core/parse.y" - { - (yyval.nd) = (yyvsp[-1].nd); - } -#line 9003 "mrbgems/mruby-compiler/core/y.tab.c" - break; - - case 498: -#line 3520 "mrbgems/mruby-compiler/core/parse.y" - { - local_nest(p); - } #line 9011 "mrbgems/mruby-compiler/core/y.tab.c" break; case 499: -#line 3526 "mrbgems/mruby-compiler/core/parse.y" +#line 3522 "mrbgems/mruby-compiler/core/parse.y" { - void_expr_error(p, (yyvsp[0].nd)); - (yyval.nd) = new_kw_arg(p, (yyvsp[-1].id), cons((yyvsp[0].nd), locals_node(p))); - local_unnest(p); + (yyval.nd) = (yyvsp[-1].nd); } -#line 9021 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9019 "mrbgems/mruby-compiler/core/y.tab.c" break; case 500: -#line 3532 "mrbgems/mruby-compiler/core/parse.y" +#line 3528 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_kw_arg(p, (yyvsp[0].id), 0); - local_unnest(p); + local_nest(p); } -#line 9030 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9027 "mrbgems/mruby-compiler/core/y.tab.c" break; case 501: -#line 3539 "mrbgems/mruby-compiler/core/parse.y" +#line 3534 "mrbgems/mruby-compiler/core/parse.y" { + void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = new_kw_arg(p, (yyvsp[-1].id), cons((yyvsp[0].nd), locals_node(p))); local_unnest(p); } -#line 9039 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9037 "mrbgems/mruby-compiler/core/y.tab.c" break; case 502: -#line 3544 "mrbgems/mruby-compiler/core/parse.y" +#line 3540 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_kw_arg(p, (yyvsp[0].id), 0); local_unnest(p); } -#line 9048 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9046 "mrbgems/mruby-compiler/core/y.tab.c" break; case 503: -#line 3551 "mrbgems/mruby-compiler/core/parse.y" +#line 3547 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = list1((yyvsp[0].nd)); + (yyval.nd) = new_kw_arg(p, (yyvsp[-1].id), cons((yyvsp[0].nd), locals_node(p))); + local_unnest(p); } -#line 9056 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9055 "mrbgems/mruby-compiler/core/y.tab.c" break; case 504: -#line 3555 "mrbgems/mruby-compiler/core/parse.y" +#line 3552 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = push((yyvsp[-2].nd), (yyvsp[0].nd)); + (yyval.nd) = new_kw_arg(p, (yyvsp[0].id), 0); + local_unnest(p); } #line 9064 "mrbgems/mruby-compiler/core/y.tab.c" break; case 505: -#line 3561 "mrbgems/mruby-compiler/core/parse.y" +#line 3559 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = list1((yyvsp[0].nd)); } @@ -9072,41 +9072,41 @@ yyreduce: break; case 506: -#line 3565 "mrbgems/mruby-compiler/core/parse.y" +#line 3563 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = push((yyvsp[-2].nd), (yyvsp[0].nd)); } #line 9080 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 509: -#line 3575 "mrbgems/mruby-compiler/core/parse.y" + case 507: +#line 3569 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_kw_rest_args(p, nsym((yyvsp[0].id))); + (yyval.nd) = list1((yyvsp[0].nd)); } #line 9088 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 510: -#line 3579 "mrbgems/mruby-compiler/core/parse.y" + case 508: +#line 3573 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_kw_rest_args(p, 0); + (yyval.nd) = push((yyvsp[-2].nd), (yyvsp[0].nd)); } #line 9096 "mrbgems/mruby-compiler/core/y.tab.c" break; case 511: -#line 3585 "mrbgems/mruby-compiler/core/parse.y" +#line 3583 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args_tail(p, (yyvsp[-3].nd), (yyvsp[-1].nd), (yyvsp[0].id)); + (yyval.nd) = new_kw_rest_args(p, nsym((yyvsp[0].id))); } #line 9104 "mrbgems/mruby-compiler/core/y.tab.c" break; case 512: -#line 3589 "mrbgems/mruby-compiler/core/parse.y" +#line 3587 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args_tail(p, (yyvsp[-1].nd), 0, (yyvsp[0].id)); + (yyval.nd) = new_kw_rest_args(p, 0); } #line 9112 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9114,7 +9114,7 @@ yyreduce: case 513: #line 3593 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args_tail(p, 0, (yyvsp[-1].nd), (yyvsp[0].id)); + (yyval.nd) = new_args_tail(p, (yyvsp[-3].nd), (yyvsp[-1].nd), (yyvsp[0].id)); } #line 9120 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9122,39 +9122,39 @@ yyreduce: case 514: #line 3597 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args_tail(p, 0, 0, (yyvsp[0].id)); + (yyval.nd) = new_args_tail(p, (yyvsp[-1].nd), 0, (yyvsp[0].id)); } #line 9128 "mrbgems/mruby-compiler/core/y.tab.c" break; case 515: -#line 3603 "mrbgems/mruby-compiler/core/parse.y" +#line 3601 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = (yyvsp[0].nd); + (yyval.nd) = new_args_tail(p, 0, (yyvsp[-1].nd), (yyvsp[0].id)); } #line 9136 "mrbgems/mruby-compiler/core/y.tab.c" break; case 516: -#line 3607 "mrbgems/mruby-compiler/core/parse.y" +#line 3605 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args_tail(p, 0, 0, 0); + (yyval.nd) = new_args_tail(p, 0, 0, (yyvsp[0].id)); } #line 9144 "mrbgems/mruby-compiler/core/y.tab.c" break; case 517: -#line 3613 "mrbgems/mruby-compiler/core/parse.y" +#line 3611 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-5].nd), (yyvsp[-3].nd), (yyvsp[-1].id), 0, (yyvsp[0].nd)); + (yyval.nd) = (yyvsp[0].nd); } #line 9152 "mrbgems/mruby-compiler/core/y.tab.c" break; case 518: -#line 3617 "mrbgems/mruby-compiler/core/parse.y" +#line 3615 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-7].nd), (yyvsp[-5].nd), (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_args_tail(p, 0, 0, 0); } #line 9160 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9162,7 +9162,7 @@ yyreduce: case 519: #line 3621 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-3].nd), (yyvsp[-1].nd), 0, 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-5].nd), (yyvsp[-3].nd), (yyvsp[-1].id), 0, (yyvsp[0].nd)); } #line 9168 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9170,7 +9170,7 @@ yyreduce: case 520: #line 3625 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-5].nd), (yyvsp[-3].nd), 0, (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-7].nd), (yyvsp[-5].nd), (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); } #line 9176 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9178,7 +9178,7 @@ yyreduce: case 521: #line 3629 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-3].nd), 0, (yyvsp[-1].id), 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-3].nd), (yyvsp[-1].nd), 0, 0, (yyvsp[0].nd)); } #line 9184 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9186,7 +9186,7 @@ yyreduce: case 522: #line 3633 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-5].nd), 0, (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-5].nd), (yyvsp[-3].nd), 0, (yyvsp[-1].nd), (yyvsp[0].nd)); } #line 9192 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9194,7 +9194,7 @@ yyreduce: case 523: #line 3637 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, (yyvsp[-1].nd), 0, 0, 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-3].nd), 0, (yyvsp[-1].id), 0, (yyvsp[0].nd)); } #line 9200 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9202,7 +9202,7 @@ yyreduce: case 524: #line 3641 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, (yyvsp[-3].nd), (yyvsp[-1].id), 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-5].nd), 0, (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); } #line 9208 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9210,7 +9210,7 @@ yyreduce: case 525: #line 3645 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, (yyvsp[-5].nd), (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_args(p, (yyvsp[-1].nd), 0, 0, 0, (yyvsp[0].nd)); } #line 9216 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9218,7 +9218,7 @@ yyreduce: case 526: #line 3649 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, (yyvsp[-1].nd), 0, 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, 0, (yyvsp[-3].nd), (yyvsp[-1].id), 0, (yyvsp[0].nd)); } #line 9224 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9226,7 +9226,7 @@ yyreduce: case 527: #line 3653 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, (yyvsp[-3].nd), 0, (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_args(p, 0, (yyvsp[-5].nd), (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); } #line 9232 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9234,7 +9234,7 @@ yyreduce: case 528: #line 3657 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, 0, (yyvsp[-1].id), 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, 0, (yyvsp[-1].nd), 0, 0, (yyvsp[0].nd)); } #line 9240 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9242,7 +9242,7 @@ yyreduce: case 529: #line 3661 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, 0, (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); + (yyval.nd) = new_args(p, 0, (yyvsp[-3].nd), 0, (yyvsp[-1].nd), (yyvsp[0].nd)); } #line 9248 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9250,7 +9250,7 @@ yyreduce: case 530: #line 3665 "mrbgems/mruby-compiler/core/parse.y" { - (yyval.nd) = new_args(p, 0, 0, 0, 0, (yyvsp[0].nd)); + (yyval.nd) = new_args(p, 0, 0, (yyvsp[-1].id), 0, (yyvsp[0].nd)); } #line 9256 "mrbgems/mruby-compiler/core/y.tab.c" break; @@ -9258,237 +9258,253 @@ yyreduce: case 531: #line 3669 "mrbgems/mruby-compiler/core/parse.y" { + (yyval.nd) = new_args(p, 0, 0, (yyvsp[-3].id), (yyvsp[-1].nd), (yyvsp[0].nd)); + } +#line 9264 "mrbgems/mruby-compiler/core/y.tab.c" + break; + + case 532: +#line 3673 "mrbgems/mruby-compiler/core/parse.y" + { + (yyval.nd) = new_args(p, 0, 0, 0, 0, (yyvsp[0].nd)); + } +#line 9272 "mrbgems/mruby-compiler/core/y.tab.c" + break; + + case 533: +#line 3677 "mrbgems/mruby-compiler/core/parse.y" + { local_add_f(p, MRB_QSYM(and)); (yyval.nd) = new_args(p, 0, 0, 0, 0, 0); } -#line 9265 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9281 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 532: -#line 3676 "mrbgems/mruby-compiler/core/parse.y" + case 534: +#line 3684 "mrbgems/mruby-compiler/core/parse.y" { yyerror(p, "formal argument cannot be a constant"); (yyval.nd) = 0; } -#line 9274 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9290 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 533: -#line 3681 "mrbgems/mruby-compiler/core/parse.y" + case 535: +#line 3689 "mrbgems/mruby-compiler/core/parse.y" { yyerror(p, "formal argument cannot be an instance variable"); (yyval.nd) = 0; } -#line 9283 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9299 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 534: -#line 3686 "mrbgems/mruby-compiler/core/parse.y" + case 536: +#line 3694 "mrbgems/mruby-compiler/core/parse.y" { yyerror(p, "formal argument cannot be a global variable"); (yyval.nd) = 0; } -#line 9292 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9308 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 535: -#line 3691 "mrbgems/mruby-compiler/core/parse.y" + case 537: +#line 3699 "mrbgems/mruby-compiler/core/parse.y" { yyerror(p, "formal argument cannot be a class variable"); (yyval.nd) = 0; } -#line 9301 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9317 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 536: -#line 3696 "mrbgems/mruby-compiler/core/parse.y" + case 538: +#line 3704 "mrbgems/mruby-compiler/core/parse.y" { yyerror(p, "formal argument cannot be a numbered parameter"); (yyval.nd) = 0; } -#line 9310 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9326 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 537: -#line 3703 "mrbgems/mruby-compiler/core/parse.y" + case 539: +#line 3711 "mrbgems/mruby-compiler/core/parse.y" { (yyval.id) = 0; } -#line 9318 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9334 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 538: -#line 3707 "mrbgems/mruby-compiler/core/parse.y" + case 540: +#line 3715 "mrbgems/mruby-compiler/core/parse.y" { local_add_f(p, (yyvsp[0].id)); (yyval.id) = (yyvsp[0].id); } -#line 9327 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9343 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 539: -#line 3714 "mrbgems/mruby-compiler/core/parse.y" + case 541: +#line 3722 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_arg(p, (yyvsp[0].id)); } -#line 9335 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9351 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 540: -#line 3718 "mrbgems/mruby-compiler/core/parse.y" + case 542: +#line 3726 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = local_switch(p); } -#line 9343 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9359 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 541: -#line 3722 "mrbgems/mruby-compiler/core/parse.y" + case 543: +#line 3730 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = new_masgn_param(p, (yyvsp[-1].nd), p->locals->car); local_resume(p, (yyvsp[-2].nd)); local_add_f(p, 0); } -#line 9353 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9369 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 542: -#line 3730 "mrbgems/mruby-compiler/core/parse.y" + case 544: +#line 3738 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = list1((yyvsp[0].nd)); } -#line 9361 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9377 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 543: -#line 3734 "mrbgems/mruby-compiler/core/parse.y" + case 545: +#line 3742 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = push((yyvsp[-2].nd), (yyvsp[0].nd)); } -#line 9369 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9385 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 544: -#line 3740 "mrbgems/mruby-compiler/core/parse.y" + case 546: +#line 3748 "mrbgems/mruby-compiler/core/parse.y" { local_add_f(p, (yyvsp[-1].id)); local_nest(p); (yyval.id) = (yyvsp[-1].id); } -#line 9379 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9395 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 545: -#line 3748 "mrbgems/mruby-compiler/core/parse.y" + case 547: +#line 3756 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = cons(nsym((yyvsp[-1].id)), cons((yyvsp[0].nd), locals_node(p))); local_unnest(p); } -#line 9389 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9405 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 546: -#line 3756 "mrbgems/mruby-compiler/core/parse.y" + case 548: +#line 3764 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = cons(nsym((yyvsp[-1].id)), cons((yyvsp[0].nd), locals_node(p))); local_unnest(p); } -#line 9399 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9415 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 547: -#line 3764 "mrbgems/mruby-compiler/core/parse.y" + case 549: +#line 3772 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = list1((yyvsp[0].nd)); } -#line 9407 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9423 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 548: -#line 3768 "mrbgems/mruby-compiler/core/parse.y" + case 550: +#line 3776 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = push((yyvsp[-2].nd), (yyvsp[0].nd)); } -#line 9415 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9431 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 549: -#line 3774 "mrbgems/mruby-compiler/core/parse.y" + case 551: +#line 3782 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = list1((yyvsp[0].nd)); } -#line 9423 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9439 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 550: -#line 3778 "mrbgems/mruby-compiler/core/parse.y" + case 552: +#line 3786 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = push((yyvsp[-2].nd), (yyvsp[0].nd)); } -#line 9431 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9447 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 553: -#line 3788 "mrbgems/mruby-compiler/core/parse.y" + case 555: +#line 3796 "mrbgems/mruby-compiler/core/parse.y" { local_add_f(p, (yyvsp[0].id)); (yyval.id) = (yyvsp[0].id); } -#line 9440 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9456 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 554: -#line 3793 "mrbgems/mruby-compiler/core/parse.y" + case 556: +#line 3801 "mrbgems/mruby-compiler/core/parse.y" { local_add_f(p, MRB_QSYM(mul)); (yyval.id) = -1; } -#line 9449 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9465 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 557: -#line 3804 "mrbgems/mruby-compiler/core/parse.y" + case 559: +#line 3812 "mrbgems/mruby-compiler/core/parse.y" { (yyval.id) = (yyvsp[0].id); } -#line 9457 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9473 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 558: -#line 3810 "mrbgems/mruby-compiler/core/parse.y" + case 560: +#line 3818 "mrbgems/mruby-compiler/core/parse.y" { (yyval.id) = (yyvsp[0].id); } -#line 9465 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9481 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 559: -#line 3814 "mrbgems/mruby-compiler/core/parse.y" + case 561: +#line 3822 "mrbgems/mruby-compiler/core/parse.y" { (yyval.id) = 0; } -#line 9473 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9489 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 560: -#line 3820 "mrbgems/mruby-compiler/core/parse.y" + case 562: +#line 3828 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[0].nd); if (!(yyval.nd)) (yyval.nd) = new_nil(p); } -#line 9482 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9498 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 561: -#line 3824 "mrbgems/mruby-compiler/core/parse.y" + case 563: +#line 3832 "mrbgems/mruby-compiler/core/parse.y" {p->lstate = EXPR_BEG;} -#line 9488 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9504 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 562: -#line 3825 "mrbgems/mruby-compiler/core/parse.y" + case 564: +#line 3833 "mrbgems/mruby-compiler/core/parse.y" { if ((yyvsp[-1].nd) == 0) { yyerror(p, "can't define singleton method for ()."); @@ -9511,55 +9527,55 @@ yyreduce: } (yyval.nd) = (yyvsp[-1].nd); } -#line 9515 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9531 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 564: -#line 3851 "mrbgems/mruby-compiler/core/parse.y" + case 566: +#line 3859 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = (yyvsp[-1].nd); } -#line 9523 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9539 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 565: -#line 3857 "mrbgems/mruby-compiler/core/parse.y" + case 567: +#line 3865 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = list1((yyvsp[0].nd)); NODE_LINENO((yyval.nd), (yyvsp[0].nd)); } -#line 9532 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9548 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 566: -#line 3862 "mrbgems/mruby-compiler/core/parse.y" + case 568: +#line 3870 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = push((yyvsp[-2].nd), (yyvsp[0].nd)); } -#line 9540 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9556 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 569: -#line 3872 "mrbgems/mruby-compiler/core/parse.y" + case 571: +#line 3880 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[-2].nd)); void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = cons((yyvsp[-2].nd), (yyvsp[0].nd)); } -#line 9550 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9566 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 570: -#line 3878 "mrbgems/mruby-compiler/core/parse.y" + case 572: +#line 3886 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = cons(new_sym(p, (yyvsp[-2].id)), (yyvsp[0].nd)); } -#line 9559 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9575 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 571: -#line 3883 "mrbgems/mruby-compiler/core/parse.y" + case 573: +#line 3891 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); if ((yyvsp[-2].nd)->car == (node*)NODE_DSTR) { @@ -9569,67 +9585,67 @@ yyreduce: (yyval.nd) = cons(new_sym(p, new_strsym(p, (yyvsp[-2].nd))), (yyvsp[0].nd)); } } -#line 9573 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9589 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 572: -#line 3893 "mrbgems/mruby-compiler/core/parse.y" + case 574: +#line 3901 "mrbgems/mruby-compiler/core/parse.y" { void_expr_error(p, (yyvsp[0].nd)); (yyval.nd) = cons(new_kw_rest_args(p, 0), (yyvsp[0].nd)); } -#line 9582 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9598 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 585: -#line 3920 "mrbgems/mruby-compiler/core/parse.y" + case 587: +#line 3928 "mrbgems/mruby-compiler/core/parse.y" { (yyval.num) = '.'; } -#line 9590 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9606 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 586: -#line 3924 "mrbgems/mruby-compiler/core/parse.y" + case 588: +#line 3932 "mrbgems/mruby-compiler/core/parse.y" { (yyval.num) = 0; } -#line 9598 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9614 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 588: -#line 3931 "mrbgems/mruby-compiler/core/parse.y" + case 590: +#line 3939 "mrbgems/mruby-compiler/core/parse.y" { (yyval.num) = tCOLON2; } -#line 9606 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9622 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 597: -#line 3952 "mrbgems/mruby-compiler/core/parse.y" + case 599: +#line 3960 "mrbgems/mruby-compiler/core/parse.y" {yyerrok;} -#line 9612 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9628 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 600: -#line 3958 "mrbgems/mruby-compiler/core/parse.y" + case 602: +#line 3966 "mrbgems/mruby-compiler/core/parse.y" { p->lineno += (yyvsp[0].num); p->column = 0; } -#line 9621 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9637 "mrbgems/mruby-compiler/core/y.tab.c" break; - case 603: -#line 3969 "mrbgems/mruby-compiler/core/parse.y" + case 605: +#line 3977 "mrbgems/mruby-compiler/core/parse.y" { (yyval.nd) = 0; } -#line 9629 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9645 "mrbgems/mruby-compiler/core/y.tab.c" break; -#line 9633 "mrbgems/mruby-compiler/core/y.tab.c" +#line 9649 "mrbgems/mruby-compiler/core/y.tab.c" default: break; } @@ -9861,7 +9877,7 @@ yyreturn: #endif return yyresult; } -#line 3973 "mrbgems/mruby-compiler/core/parse.y" +#line 3981 "mrbgems/mruby-compiler/core/parse.y" #define pylval (*((YYSTYPE*)(p->ylval))) |
