From 8c74b41425572faeb638f1269025b59d0785794f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Dagfinn=20Ilmari=20Manns=C3=A5ker?= Date: Thu, 27 Jun 2013 16:48:36 +0100 Subject: [PATCH] Remove support for "do SUBROUTINE(LIST)" It's been deprecated (and emitting a warning) since Perl v5.0.0, and support for it consitutes nearly 3% of the grammar. --- MANIFEST | 1 - perly.act | 785 ++++++++++++++---------------- perly.c | 3 - perly.h | 64 ++- perly.tab | 1316 ++++++++++++++++++++++++-------------------------- perly.y | 43 -- pod/perldelta.pod | 5 + pod/perlfunc.pod | 6 - t/lib/warnings/perly | 30 -- t/op/do.t | 66 +-- t/op/lexsub.t | 31 +- 11 files changed, 1047 insertions(+), 1303 deletions(-) delete mode 100644 t/lib/warnings/perly diff --git a/MANIFEST b/MANIFEST index efdc69a..23fa143 100644 --- a/MANIFEST +++ b/MANIFEST @@ -4976,7 +4976,6 @@ t/lib/warnings/op Tests for op.c for warnings.t t/lib/warnings/pad Tests for pad.c for warnings.t t/lib/warnings/perl Tests for perl.c for warnings.t t/lib/warnings/perlio Tests for perlio.c for warnings.t -t/lib/warnings/perly Tests for perly.y for warnings.t t/lib/warnings/pp Tests for pp.c for warnings.t t/lib/warnings/pp_ctl Tests for pp_ctl.c for warnings.t t/lib/warnings/pp_hot Tests for pp_hot.c for warnings.t diff --git a/perly.act b/perly.act index ec9fe92..d261d06 100644 --- a/perly.act +++ b/perly.act @@ -8,7 +8,7 @@ case 2: #line 142 "perly.y" { PL_parser->expect = XSTATE; - ;} + } break; case 3: @@ -16,14 +16,14 @@ case 2: { newPROG(block_end((ps[(3) - (4)].val.ival),(ps[(4) - (4)].val.opval))); (yyval.ival) = 0; - ;} + } break; case 4: #line 151 "perly.y" { parser->expect = XTERM; - ;} + } break; case 5: @@ -31,14 +31,14 @@ case 2: { PL_eval_root = (ps[(3) - (3)].val.opval); (yyval.ival) = 0; - ;} + } break; case 6: #line 160 "perly.y" { parser->expect = XBLOCK; - ;} + } break; case 7: @@ -49,14 +49,14 @@ case 2: (yyval.ival) = 0; yyunlex(); parser->yychar = YYEOF; - ;} + } break; case 8: #line 172 "perly.y" { parser->expect = XSTATE; - ;} + } break; case 9: @@ -67,14 +67,14 @@ case 2: (yyval.ival) = 0; yyunlex(); parser->yychar = YYEOF; - ;} + } break; case 10: #line 184 "perly.y" { parser->expect = XSTATE; - ;} + } break; case 11: @@ -85,14 +85,14 @@ case 2: (yyval.ival) = 0; yyunlex(); parser->yychar = YYEOF; - ;} + } break; case 12: #line 196 "perly.y" { parser->expect = XSTATE; - ;} + } break; case 13: @@ -100,7 +100,7 @@ case 2: { PL_eval_root = (ps[(3) - (3)].val.opval); (yyval.ival) = 0; - ;} + } break; case 14: @@ -110,7 +110,7 @@ case 2: (yyval.opval) = block_end((ps[(2) - (4)].val.ival), (ps[(3) - (4)].val.opval)); TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'{'); TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),'}'); - ;} + } break; case 15: @@ -120,12 +120,12 @@ case 2: (yyval.opval) = block_end((ps[(2) - (7)].val.ival), (ps[(5) - (7)].val.opval)); TOKEN_GETMAD((ps[(1) - (7)].val.i_tkval),(yyval.opval),'{'); TOKEN_GETMAD((ps[(7) - (7)].val.i_tkval),(yyval.opval),'}'); - ;} + } break; case 16: #line 227 "perly.y" - { (yyval.ival) = block_start(TRUE); ;} + { (yyval.ival) = block_start(TRUE); } break; case 17: @@ -135,17 +135,17 @@ case 2: (yyval.opval) = block_end((ps[(2) - (4)].val.ival), (ps[(3) - (4)].val.opval)); TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'{'); TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),'}'); - ;} + } break; case 18: #line 240 "perly.y" - { (yyval.ival) = block_start(FALSE); ;} + { (yyval.ival) = block_start(FALSE); } break; case 19: #line 245 "perly.y" - { (yyval.opval) = (OP*)NULL; ;} + { (yyval.opval) = (OP*)NULL; } break; case 20: @@ -154,12 +154,12 @@ case 2: PL_pad_reset_pending = TRUE; if ((ps[(1) - (2)].val.opval) && (ps[(2) - (2)].val.opval)) PL_hints |= HINT_BLOCK_SCOPE; - ;} + } break; case 21: #line 256 "perly.y" - { (yyval.opval) = (OP*)NULL; ;} + { (yyval.opval) = (OP*)NULL; } break; case 22: @@ -168,7 +168,7 @@ case 2: PL_pad_reset_pending = TRUE; if ((ps[(1) - (2)].val.opval) && (ps[(2) - (2)].val.opval)) PL_hints |= HINT_BLOCK_SCOPE; - ;} + } break; case 23: @@ -179,12 +179,12 @@ case 2: } else { (yyval.opval) = IF_MAD(newOP(OP_NULL, 0), NULL); } - ;} + } break; case 24: #line 275 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; case 25: @@ -195,7 +195,7 @@ case 2: PVAL((ps[(1) - (2)].val.p_tkval)), (ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.p_tkval), (ps[(2) - (2)].val.opval) ? cLISTOPx((yyval.opval))->op_first : (yyval.opval), 'L'); - ;} + } break; case 26: @@ -205,12 +205,12 @@ case 2: * PVAL((ps[(1) - (2)].val.p_tkval))[strlen(PVAL((ps[(1) - (2)].val.p_tkval)))+1], PVAL((ps[(1) - (2)].val.p_tkval)), (ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.p_tkval), cLISTOPx((yyval.opval))->op_first, 'L'); - ;} + } break; case 27: #line 297 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; case 28: @@ -218,7 +218,7 @@ case 2: { (yyval.opval) = newOP(OP_NULL,0); TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'p'); - ;} + } break; case 29: @@ -238,7 +238,7 @@ case 2: SvREFCNT_inc_simple_void(fmtcv); pad_add_anon(fmtcv, OP_NULL); } - ;} + } break; case 30: @@ -263,7 +263,7 @@ case 2: CvCLONE_on(PL_compcv); PL_parser->in_my = 0; PL_parser->in_my_stash = NULL; - ;} + } break; case 31: @@ -294,7 +294,7 @@ case 2: (yyval.opval) = (OP*)NULL; #endif intro_my(); - ;} + } break; case 32: @@ -312,12 +312,12 @@ case 2: package_version((ps[(2) - (4)].val.opval)); (yyval.opval) = (OP*)NULL; #endif - ;} + } break; case 33: #line 386 "perly.y" - { CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ ;} + { CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ } break; case 34: @@ -335,7 +335,7 @@ case 2: utilize(IVAL((ps[(1) - (7)].val.i_tkval)), (ps[(2) - (7)].val.ival), (ps[(4) - (7)].val.opval), (ps[(5) - (7)].val.opval), (ps[(6) - (7)].val.opval)); (yyval.opval) = (OP*)NULL; #endif - ;} + } break; case 35: @@ -347,7 +347,7 @@ case 2: TOKEN_GETMAD((ps[(2) - (7)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(5) - (7)].val.i_tkval),(yyval.opval),')'); PL_parser->copline = (line_t)IVAL((ps[(1) - (7)].val.i_tkval)); - ;} + } break; case 36: @@ -359,7 +359,7 @@ case 2: TOKEN_GETMAD((ps[(2) - (7)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(5) - (7)].val.i_tkval),(yyval.opval),')'); PL_parser->copline = (line_t)IVAL((ps[(1) - (7)].val.i_tkval)); - ;} + } break; case 37: @@ -373,17 +373,17 @@ case 2: ? 0 : offset)); PL_parser->copline = (line_t)IVAL((ps[(1) - (6)].val.i_tkval)); - ;} + } break; case 38: #line 432 "perly.y" - { (yyval.opval) = block_end((ps[(3) - (6)].val.ival), newWHENOP((ps[(4) - (6)].val.opval), op_scope((ps[(6) - (6)].val.opval)))); ;} + { (yyval.opval) = block_end((ps[(3) - (6)].val.ival), newWHENOP((ps[(4) - (6)].val.opval), op_scope((ps[(6) - (6)].val.opval)))); } break; case 39: #line 434 "perly.y" - { (yyval.opval) = newWHENOP(0, op_scope((ps[(2) - (2)].val.opval))); ;} + { (yyval.opval) = newWHENOP(0, op_scope((ps[(2) - (2)].val.opval))); } break; case 40: @@ -396,7 +396,7 @@ case 2: TOKEN_GETMAD((ps[(2) - (8)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(5) - (8)].val.i_tkval),(yyval.opval),')'); PL_parser->copline = (line_t)IVAL((ps[(1) - (8)].val.i_tkval)); - ;} + } break; case 41: @@ -409,7 +409,7 @@ case 2: TOKEN_GETMAD((ps[(2) - (8)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(5) - (8)].val.i_tkval),(yyval.opval),')'); PL_parser->copline = (line_t)IVAL((ps[(1) - (8)].val.i_tkval)); - ;} + } break; case 42: @@ -432,7 +432,7 @@ case 2: TOKEN_GETMAD((ps[(7) - (11)].val.i_tkval),(yyval.opval),'2'); TOKEN_GETMAD((ps[(10) - (11)].val.i_tkval),(yyval.opval),')'); PL_parser->copline = (line_t)IVAL((ps[(1) - (11)].val.i_tkval)); - ;} + } break; case 43: @@ -444,7 +444,7 @@ case 2: TOKEN_GETMAD((ps[(5) - (9)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(7) - (9)].val.i_tkval),(yyval.opval),')'); PL_parser->copline = (line_t)IVAL((ps[(1) - (9)].val.i_tkval)); - ;} + } break; case 44: @@ -456,7 +456,7 @@ case 2: TOKEN_GETMAD((ps[(3) - (8)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(6) - (8)].val.i_tkval),(yyval.opval),')'); PL_parser->copline = (line_t)IVAL((ps[(1) - (8)].val.i_tkval)); - ;} + } break; case 45: @@ -468,7 +468,7 @@ case 2: TOKEN_GETMAD((ps[(2) - (7)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(5) - (7)].val.i_tkval),(yyval.opval),')'); PL_parser->copline = (line_t)IVAL((ps[(1) - (7)].val.i_tkval)); - ;} + } break; case 46: @@ -477,7 +477,7 @@ case 2: /* a block is a loop that happens once */ (yyval.opval) = newWHILEOP(0, 1, (LOOP*)(OP*)NULL, (OP*)NULL, (ps[(1) - (2)].val.opval), (ps[(2) - (2)].val.opval), 0); - ;} + } break; case 47: @@ -487,7 +487,7 @@ case 2: if ((ps[(2) - (5)].val.opval)) { package_version((ps[(2) - (5)].val.opval)); } - ;} + } break; case 48: @@ -500,7 +500,7 @@ case 2: TOKEN_GETMAD((ps[(8) - (8)].val.i_tkval),(yyval.opval),'}'); if (PL_parser->copline > (line_t)IVAL((ps[(4) - (8)].val.i_tkval))) PL_parser->copline = (line_t)IVAL((ps[(4) - (8)].val.i_tkval)); - ;} + } break; case 49: @@ -509,7 +509,7 @@ case 2: PL_parser->expect = XSTATE; (yyval.opval) = (ps[(1) - (2)].val.opval); TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),';'); - ;} + } break; case 50: @@ -519,7 +519,7 @@ case 2: (yyval.opval) = IF_MAD(newOP(OP_NULL, 0), (OP*)NULL); TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),';'); PL_parser->copline = NOLINE; - ;} + } break; case 51: @@ -543,55 +543,55 @@ case 2: else PL_parser->copline--; (yyval.opval) = newSTATEOP(0, NULL, convert(OP_FORMLINE, 0, list)); - ;} + } break; case 52: #line 566 "perly.y" - { (yyval.opval) = NULL; ;} + { (yyval.opval) = NULL; } break; case 53: #line 568 "perly.y" - { (yyval.opval) = op_unscope((ps[(2) - (3)].val.opval)); ;} + { (yyval.opval) = op_unscope((ps[(2) - (3)].val.opval)); } break; case 54: #line 573 "perly.y" - { (yyval.opval) = (OP*)NULL; ;} + { (yyval.opval) = (OP*)NULL; } break; case 55: #line 575 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; case 56: #line 577 "perly.y" { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval)); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'i'); - ;} + } break; case 57: #line 581 "perly.y" { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval)); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'i'); - ;} + } break; case 58: #line 585 "perly.y" { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, scalar((ps[(3) - (3)].val.opval)), (ps[(1) - (3)].val.opval)); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'w'); - ;} + } break; case 59: #line 589 "perly.y" { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval)); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'w'); - ;} + } break; case 60: @@ -599,17 +599,17 @@ case 2: { (yyval.opval) = newFOROP(0, (OP*)NULL, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval), (OP*)NULL); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'w'); PL_parser->copline = (line_t)IVAL((ps[(2) - (3)].val.i_tkval)); - ;} + } break; case 61: #line 598 "perly.y" - { (yyval.opval) = newWHENOP((ps[(3) - (3)].val.opval), op_scope((ps[(1) - (3)].val.opval))); ;} + { (yyval.opval) = newWHENOP((ps[(3) - (3)].val.opval), op_scope((ps[(1) - (3)].val.opval))); } break; case 62: #line 603 "perly.y" - { (yyval.opval) = (OP*)NULL; ;} + { (yyval.opval) = (OP*)NULL; } break; case 63: @@ -618,7 +618,7 @@ case 2: ((ps[(2) - (2)].val.opval))->op_flags |= OPf_PARENS; (yyval.opval) = op_scope((ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 64: @@ -631,12 +631,12 @@ case 2: TOKEN_GETMAD((ps[(1) - (6)].val.i_tkval),(yyval.opval),'I'); TOKEN_GETMAD((ps[(2) - (6)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(4) - (6)].val.i_tkval),(yyval.opval),')'); - ;} + } break; case 65: #line 624 "perly.y" - { (yyval.opval) = (OP*)NULL; ;} + { (yyval.opval) = (OP*)NULL; } break; case 66: @@ -644,91 +644,91 @@ case 2: { (yyval.opval) = op_scope((ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 67: #line 634 "perly.y" { (yyval.ival) = (PL_min_intro_pending && PL_max_intro_pending >= PL_min_intro_pending); - intro_my(); ;} + intro_my(); } break; case 68: #line 640 "perly.y" - { (yyval.opval) = (OP*)NULL; ;} + { (yyval.opval) = (OP*)NULL; } break; case 70: #line 646 "perly.y" { YYSTYPE tmplval; (void)scan_num("1", &tmplval); - (yyval.opval) = tmplval.opval; ;} + (yyval.opval) = tmplval.opval; } break; case 72: #line 654 "perly.y" - { (yyval.opval) = invert(scalar((ps[(1) - (1)].val.opval))); ;} + { (yyval.opval) = invert(scalar((ps[(1) - (1)].val.opval))); } break; case 73: #line 659 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); ;} + { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); } break; case 74: #line 663 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); ;} + { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); } break; case 75: #line 667 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); ;} + { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); } break; case 76: #line 670 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; case 77: #line 671 "perly.y" - { (yyval.opval) = (OP*)NULL; ;} + { (yyval.opval) = (OP*)NULL; } break; case 78: #line 675 "perly.y" { (yyval.ival) = start_subparse(FALSE, 0); - SAVEFREESV(PL_compcv); ;} + SAVEFREESV(PL_compcv); } break; case 79: #line 681 "perly.y" { (yyval.ival) = start_subparse(FALSE, CVf_ANON); - SAVEFREESV(PL_compcv); ;} + SAVEFREESV(PL_compcv); } break; case 80: #line 686 "perly.y" { (yyval.ival) = start_subparse(TRUE, 0); - SAVEFREESV(PL_compcv); ;} + SAVEFREESV(PL_compcv); } break; case 83: #line 697 "perly.y" - { (yyval.opval) = (OP*)NULL; ;} + { (yyval.opval) = (OP*)NULL; } break; case 85: #line 703 "perly.y" - { (yyval.opval) = (OP*)NULL; ;} + { (yyval.opval) = (OP*)NULL; } break; case 86: #line 705 "perly.y" { (yyval.opval) = (ps[(2) - (2)].val.opval); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),':'); - ;} + } break; case 87: @@ -738,14 +738,14 @@ case 2: (OP*)NULL ); TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),':'); - ;} + } break; case 88: #line 719 "perly.y" { (yyval.opval) = (ps[(2) - (2)].val.opval); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),':'); - ;} + } break; case 89: @@ -755,12 +755,12 @@ case 2: (OP*)NULL ); TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),':'); - ;} + } break; case 90: #line 732 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; case 91: @@ -771,28 +771,28 @@ case 2: ); PL_parser->expect = XSTATE; TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),';'); - ;} + } break; case 92: #line 744 "perly.y" { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 93: #line 748 "perly.y" { (yyval.opval) = newLOGOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 94: #line 752 "perly.y" { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 96: @@ -805,7 +805,7 @@ case 2: #else (yyval.opval) = (ps[(1) - (2)].val.opval); #endif - ;} + } break; case 97: @@ -817,7 +817,7 @@ case 2: token_getmad((ps[(2) - (3)].val.i_tkval),term,','); ) (yyval.opval) = op_append_elem(OP_LIST, (ps[(1) - (3)].val.opval), term); - ;} + } break; case 99: @@ -825,7 +825,7 @@ case 2: { (yyval.opval) = convert(IVAL((ps[(1) - (3)].val.i_tkval)), OPf_STACKED, op_prepend_elem(OP_LIST, newGVREF(IVAL((ps[(1) - (3)].val.i_tkval)),(ps[(2) - (3)].val.opval)), (ps[(3) - (3)].val.opval)) ); TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 100: @@ -835,7 +835,7 @@ case 2: TOKEN_GETMAD((ps[(1) - (5)].val.i_tkval),(yyval.opval),'o'); TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')'); - ;} + } break; case 101: @@ -847,7 +847,7 @@ case 2: TOKEN_GETMAD((ps[(2) - (6)].val.i_tkval),(yyval.opval),'A'); TOKEN_GETMAD((ps[(4) - (6)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(6) - (6)].val.i_tkval),(yyval.opval),')'); - ;} + } break; case 102: @@ -856,7 +856,7 @@ case 2: op_append_elem(OP_LIST, scalar((ps[(1) - (3)].val.opval)), newUNOP(OP_METHOD, 0, (ps[(3) - (3)].val.opval)))); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'A'); - ;} + } break; case 103: @@ -865,7 +865,7 @@ case 2: op_append_elem(OP_LIST, op_prepend_elem(OP_LIST, (ps[(2) - (3)].val.opval), (ps[(3) - (3)].val.opval)), newUNOP(OP_METHOD, 0, (ps[(1) - (3)].val.opval)))); - ;} + } break; case 104: @@ -876,14 +876,14 @@ case 2: newUNOP(OP_METHOD, 0, (ps[(1) - (5)].val.opval)))); TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')'); - ;} + } break; case 105: #line 824 "perly.y" { (yyval.opval) = convert(IVAL((ps[(1) - (2)].val.i_tkval)), 0, (ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 106: @@ -892,13 +892,13 @@ case 2: TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'o'); TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')'); - ;} + } break; case 107: #line 834 "perly.y" { SvREFCNT_inc_simple_void(PL_compcv); - (yyval.opval) = newANONATTRSUB((ps[(2) - (3)].val.ival), 0, (OP*)NULL, (ps[(3) - (3)].val.opval)); ;} + (yyval.opval) = newANONATTRSUB((ps[(2) - (3)].val.ival), 0, (OP*)NULL, (ps[(3) - (3)].val.opval)); } break; case 108: @@ -906,7 +906,7 @@ case 2: { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, op_append_elem(OP_LIST, op_prepend_elem(OP_LIST, (ps[(4) - (5)].val.opval), (ps[(5) - (5)].val.opval)), (ps[(1) - (5)].val.opval))); - ;} + } break; case 111: @@ -916,7 +916,7 @@ case 2: TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{'); TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';'); TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}'); - ;} + } break; case 112: @@ -924,7 +924,7 @@ case 2: { (yyval.opval) = newBINOP(OP_AELEM, 0, oopsAV((ps[(1) - (4)].val.opval)), scalar((ps[(3) - (4)].val.opval))); TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'['); TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']'); - ;} + } break; case 113: @@ -935,7 +935,7 @@ case 2: TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'a'); TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'['); TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),']'); - ;} + } break; case 114: @@ -945,7 +945,7 @@ case 2: scalar((ps[(3) - (4)].val.opval))); TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'['); TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']'); - ;} + } break; case 115: @@ -955,7 +955,7 @@ case 2: TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{'); TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';'); TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}'); - ;} + } break; case 116: @@ -968,7 +968,7 @@ case 2: TOKEN_GETMAD((ps[(3) - (6)].val.i_tkval),(yyval.opval),'{'); TOKEN_GETMAD((ps[(5) - (6)].val.i_tkval),(yyval.opval),';'); TOKEN_GETMAD((ps[(6) - (6)].val.i_tkval),(yyval.opval),'}'); - ;} + } break; case 117: @@ -980,7 +980,7 @@ case 2: TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{'); TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';'); TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}'); - ;} + } break; case 118: @@ -990,7 +990,7 @@ case 2: TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'a'); TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')'); - ;} + } break; case 119: @@ -1001,7 +1001,7 @@ case 2: TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'a'); TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')'); - ;} + } break; case 120: @@ -1011,7 +1011,7 @@ case 2: newCVREF(0, scalar((ps[(1) - (4)].val.opval))))); TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')'); - ;} + } break; case 121: @@ -1020,7 +1020,7 @@ case 2: newCVREF(0, scalar((ps[(1) - (3)].val.opval)))); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')'); - ;} + } break; case 122: @@ -1030,7 +1030,7 @@ case 2: TOKEN_GETMAD((ps[(3) - (6)].val.i_tkval),(yyval.opval),')'); TOKEN_GETMAD((ps[(4) - (6)].val.i_tkval),(yyval.opval),'['); TOKEN_GETMAD((ps[(6) - (6)].val.i_tkval),(yyval.opval),']'); - ;} + } break; case 123: @@ -1038,7 +1038,7 @@ case 2: { (yyval.opval) = newSLICEOP(0, (ps[(3) - (4)].val.opval), (ps[(1) - (4)].val.opval)); TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'['); TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']'); - ;} + } break; case 124: @@ -1048,21 +1048,21 @@ case 2: TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),')'); TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'['); TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),']'); - ;} + } break; case 125: #line 956 "perly.y" { (yyval.opval) = newASSIGNOP(OPf_STACKED, (ps[(1) - (3)].val.opval), IVAL((ps[(2) - (3)].val.i_tkval)), (ps[(3) - (3)].val.opval)); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 126: #line 960 "perly.y" { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 127: @@ -1071,49 +1071,49 @@ case 2: scalar((ps[(1) - (3)].val.opval)); (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, (ps[(1) - (3)].val.opval), scalar((ps[(3) - (3)].val.opval))); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 128: #line 970 "perly.y" { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 129: #line 974 "perly.y" { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 130: #line 978 "perly.y" { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 131: #line 982 "perly.y" { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 132: #line 986 "perly.y" { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 133: #line 990 "perly.y" { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 134: @@ -1128,28 +1128,28 @@ case 2: op = (UNOP*)op->op_first; /* get to range */ token_getmad((ps[(2) - (3)].val.i_tkval),(OP*)op,'o'); }); - ;} + } break; case 135: #line 1006 "perly.y" { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 136: #line 1010 "perly.y" { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 137: #line 1014 "perly.y" { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 138: @@ -1159,14 +1159,14 @@ case 2: ((yyval.opval)->op_type == OP_NOT ? ((UNOP*)(yyval.opval))->op_first : (yyval.opval)), '~'); - ;} + } break; case 139: #line 1028 "perly.y" { (yyval.opval) = newUNOP(OP_NEGATE, 0, scalar((ps[(2) - (2)].val.opval))); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 140: @@ -1176,21 +1176,21 @@ case 2: (ps[(2) - (2)].val.opval) ); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'+'); - ;} + } break; case 141: #line 1039 "perly.y" { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval))); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 142: #line 1043 "perly.y" { (yyval.opval) = newUNOP(OP_COMPLEMENT, 0, scalar((ps[(2) - (2)].val.opval))); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 143: @@ -1198,7 +1198,7 @@ case 2: { (yyval.opval) = newUNOP(OP_POSTINC, 0, op_lvalue(scalar((ps[(1) - (2)].val.opval)), OP_POSTINC)); TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 144: @@ -1206,7 +1206,7 @@ case 2: { (yyval.opval) = newUNOP(OP_POSTDEC, 0, op_lvalue(scalar((ps[(1) - (2)].val.opval)), OP_POSTDEC)); TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 145: @@ -1221,7 +1221,7 @@ case 2: (ps[(1) - (2)].val.opval) )); TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 146: @@ -1229,7 +1229,7 @@ case 2: { (yyval.opval) = newUNOP(OP_PREINC, 0, op_lvalue(scalar((ps[(2) - (2)].val.opval)), OP_PREINC)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 147: @@ -1237,7 +1237,7 @@ case 2: { (yyval.opval) = newUNOP(OP_PREDEC, 0, op_lvalue(scalar((ps[(2) - (2)].val.opval)), OP_PREDEC)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 148: @@ -1245,7 +1245,7 @@ case 2: { (yyval.opval) = newANONLIST((ps[(2) - (3)].val.opval)); TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'['); TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),']'); - ;} + } break; case 149: @@ -1253,7 +1253,7 @@ case 2: { (yyval.opval) = newANONLIST((OP*)NULL); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'['); TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),']'); - ;} + } break; case 150: @@ -1262,7 +1262,7 @@ case 2: TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'{'); TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),';'); TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),'}'); - ;} + } break; case 151: @@ -1271,7 +1271,7 @@ case 2: TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'{'); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),';'); TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),'}'); - ;} + } break; case 152: @@ -1281,157 +1281,103 @@ case 2: TOKEN_GETMAD((ps[(1) - (5)].val.i_tkval),(yyval.opval),'o'); OP_GETMAD((ps[(3) - (5)].val.opval),(yyval.opval),'s'); OP_GETMAD((ps[(4) - (5)].val.opval),(yyval.opval),'a'); - ;} + } break; case 153: #line 1116 "perly.y" { (yyval.opval) = dofile((ps[(2) - (2)].val.opval), IVAL((ps[(1) - (2)].val.i_tkval))); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; case 154: #line 1120 "perly.y" { (yyval.opval) = newUNOP(OP_NULL, OPf_SPECIAL, op_scope((ps[(2) - (2)].val.opval))); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'D'); - ;} - break; - - case 155: -#line 1124 "perly.y" - { (yyval.opval) = newUNOP(OP_ENTERSUB, - OPf_SPECIAL|OPf_STACKED, - op_prepend_elem(OP_LIST, - scalar(newCVREF( - (OPpENTERSUB_AMPER<<8), - scalar((ps[(2) - (4)].val.opval)) - )),(OP*)NULL)); dep(); - TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'o'); - TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'('); - TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')'); - ;} - break; - - case 156: -#line 1136 "perly.y" - { (yyval.opval) = newUNOP(OP_ENTERSUB, - OPf_SPECIAL|OPf_STACKED, - op_append_elem(OP_LIST, - (ps[(4) - (5)].val.opval), - scalar(newCVREF( - (OPpENTERSUB_AMPER<<8), - scalar((ps[(2) - (5)].val.opval)) - )))); dep(); - TOKEN_GETMAD((ps[(1) - (5)].val.i_tkval),(yyval.opval),'o'); - TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'('); - TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')'); - ;} - break; - - case 157: -#line 1149 "perly.y" - { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED, - op_prepend_elem(OP_LIST, - scalar(newCVREF(0,scalar((ps[(2) - (4)].val.opval)))), (OP*)NULL)); dep(); - TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'o'); - TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'('); - TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')'); - ;} + } break; - case 158: -#line 1157 "perly.y" - { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED, - op_prepend_elem(OP_LIST, - (ps[(4) - (5)].val.opval), - scalar(newCVREF(0,scalar((ps[(2) - (5)].val.opval)))))); dep(); - TOKEN_GETMAD((ps[(1) - (5)].val.i_tkval),(yyval.opval),'o'); - TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'('); - TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')'); - ;} - break; - - case 163: -#line 1173 "perly.y" + case 159: +#line 1130 "perly.y" { (yyval.opval) = newCONDOP(0, (ps[(1) - (5)].val.opval), (ps[(3) - (5)].val.opval), (ps[(5) - (5)].val.opval)); TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'?'); TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),':'); - ;} + } break; - case 164: -#line 1178 "perly.y" + case 160: +#line 1135 "perly.y" { (yyval.opval) = newUNOP(OP_REFGEN, 0, op_lvalue((ps[(2) - (2)].val.opval),OP_REFGEN)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; - case 165: -#line 1182 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 161: +#line 1139 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 166: -#line 1184 "perly.y" + case 162: +#line 1141 "perly.y" { (yyval.opval) = localize((ps[(2) - (2)].val.opval),IVAL((ps[(1) - (2)].val.i_tkval))); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'k'); - ;} + } break; - case 167: -#line 1188 "perly.y" + case 163: +#line 1145 "perly.y" { (yyval.opval) = sawparens(IF_MAD(newUNOP(OP_NULL,0,(ps[(2) - (3)].val.opval)), (ps[(2) - (3)].val.opval))); TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')'); - ;} + } break; - case 168: -#line 1193 "perly.y" - { (yyval.opval) = IF_MAD(newUNOP(OP_NULL,0,(ps[(1) - (1)].val.opval)), (ps[(1) - (1)].val.opval)); ;} + case 164: +#line 1150 "perly.y" + { (yyval.opval) = IF_MAD(newUNOP(OP_NULL,0,(ps[(1) - (1)].val.opval)), (ps[(1) - (1)].val.opval)); } break; - case 169: -#line 1195 "perly.y" + case 165: +#line 1152 "perly.y" { (yyval.opval) = sawparens(newNULLLIST()); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),')'); - ;} + } break; - case 170: -#line 1200 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 166: +#line 1157 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 171: -#line 1202 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 167: +#line 1159 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 172: -#line 1204 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 168: +#line 1161 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 173: -#line 1206 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 169: +#line 1163 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 174: -#line 1208 "perly.y" - { (yyval.opval) = newUNOP(OP_AV2ARYLEN, 0, ref((ps[(1) - (1)].val.opval), OP_AV2ARYLEN));;} + case 170: +#line 1165 "perly.y" + { (yyval.opval) = newUNOP(OP_AV2ARYLEN, 0, ref((ps[(1) - (1)].val.opval), OP_AV2ARYLEN));} break; - case 175: -#line 1210 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 171: +#line 1167 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 176: -#line 1212 "perly.y" + case 172: +#line 1169 "perly.y" { (yyval.opval) = op_prepend_elem(OP_ASLICE, newOP(OP_PUSHMARK, 0), newLISTOP(OP_ASLICE, 0, @@ -1442,11 +1388,11 @@ case 2: (ps[(1) - (4)].val.opval)->op_private & OPpSLICEWARNING; TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'['); TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']'); - ;} + } break; - case 177: -#line 1224 "perly.y" + case 173: +#line 1181 "perly.y" { (yyval.opval) = op_prepend_elem(OP_KVASLICE, newOP(OP_PUSHMARK, 0), newLISTOP(OP_KVASLICE, 0, @@ -1457,11 +1403,11 @@ case 2: (ps[(1) - (4)].val.opval)->op_private & OPpSLICEWARNING; TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'['); TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']'); - ;} + } break; - case 178: -#line 1236 "perly.y" + case 174: +#line 1193 "perly.y" { (yyval.opval) = op_prepend_elem(OP_HSLICE, newOP(OP_PUSHMARK, 0), newLISTOP(OP_HSLICE, 0, @@ -1474,11 +1420,11 @@ case 2: TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{'); TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';'); TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}'); - ;} + } break; - case 179: -#line 1250 "perly.y" + case 175: +#line 1207 "perly.y" { (yyval.opval) = op_prepend_elem(OP_KVHSLICE, newOP(OP_PUSHMARK, 0), newLISTOP(OP_KVHSLICE, 0, @@ -1491,29 +1437,29 @@ case 2: TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{'); TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';'); TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}'); - ;} + } break; - case 180: -#line 1264 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 176: +#line 1221 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 181: -#line 1266 "perly.y" - { (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar((ps[(1) - (1)].val.opval))); ;} + case 177: +#line 1223 "perly.y" + { (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar((ps[(1) - (1)].val.opval))); } break; - case 182: -#line 1268 "perly.y" + case 178: +#line 1225 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (3)].val.opval))); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')'); - ;} + } break; - case 183: -#line 1273 "perly.y" + case 179: +#line 1230 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, op_append_elem(OP_LIST, (ps[(3) - (4)].val.opval), scalar((ps[(1) - (4)].val.opval)))); @@ -1525,158 +1471,158 @@ case 2: token_getmad((ps[(2) - (4)].val.i_tkval),op,'('); token_getmad((ps[(4) - (4)].val.i_tkval),op,')'); }); - ;} + } break; - case 184: -#line 1286 "perly.y" + case 180: +#line 1243 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, op_append_elem(OP_LIST, (ps[(3) - (3)].val.opval), scalar((ps[(2) - (3)].val.opval)))); TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; - case 185: -#line 1291 "perly.y" + case 181: +#line 1248 "perly.y" { (yyval.opval) = newSVREF((ps[(1) - (4)].val.opval)); TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'$'); - ;} + } break; - case 186: -#line 1295 "perly.y" + case 182: +#line 1252 "perly.y" { (yyval.opval) = newAVREF((ps[(1) - (4)].val.opval)); TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'@'); - ;} + } break; - case 187: -#line 1299 "perly.y" + case 183: +#line 1256 "perly.y" { (yyval.opval) = newHVREF((ps[(1) - (4)].val.opval)); TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'%'); - ;} + } break; - case 188: -#line 1303 "perly.y" + case 184: +#line 1260 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar(newCVREF(IVAL((ps[(3) - (4)].val.i_tkval)),(ps[(1) - (4)].val.opval)))); TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'&'); - ;} + } break; - case 189: -#line 1308 "perly.y" + case 185: +#line 1265 "perly.y" { (yyval.opval) = newGVREF(0,(ps[(1) - (4)].val.opval)); TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'*'); - ;} + } break; - case 190: -#line 1312 "perly.y" + case 186: +#line 1269 "perly.y" { (yyval.opval) = newOP(IVAL((ps[(1) - (1)].val.i_tkval)), OPf_SPECIAL); PL_hints |= HINT_BLOCK_SCOPE; TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; - case 191: -#line 1317 "perly.y" + case 187: +#line 1274 "perly.y" { (yyval.opval) = newLOOPEX(IVAL((ps[(1) - (2)].val.i_tkval)),(ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; - case 192: -#line 1321 "perly.y" + case 188: +#line 1278 "perly.y" { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval))); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; - case 193: -#line 1325 "perly.y" + case 189: +#line 1282 "perly.y" { (yyval.opval) = newOP(IVAL((ps[(1) - (1)].val.i_tkval)), 0); TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; - case 194: -#line 1329 "perly.y" + case 190: +#line 1286 "perly.y" { (yyval.opval) = newUNOP(IVAL((ps[(1) - (2)].val.i_tkval)), 0, (ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; - case 195: -#line 1333 "perly.y" + case 191: +#line 1290 "perly.y" { (yyval.opval) = newUNOP(IVAL((ps[(1) - (2)].val.i_tkval)), 0, (ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; - case 196: -#line 1337 "perly.y" + case 192: +#line 1294 "perly.y" { (yyval.opval) = newOP(OP_REQUIRE, (ps[(1) - (1)].val.i_tkval) ? OPf_SPECIAL : 0); TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; - case 197: -#line 1341 "perly.y" + case 193: +#line 1298 "perly.y" { (yyval.opval) = newUNOP(OP_REQUIRE, (ps[(1) - (2)].val.i_tkval) ? OPf_SPECIAL : 0, (ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; - case 198: -#line 1345 "perly.y" - { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (1)].val.opval))); ;} + case 194: +#line 1302 "perly.y" + { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (1)].val.opval))); } break; - case 199: -#line 1347 "perly.y" + case 195: +#line 1304 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, - op_append_elem(OP_LIST, (ps[(2) - (2)].val.opval), scalar((ps[(1) - (2)].val.opval)))); ;} + op_append_elem(OP_LIST, (ps[(2) - (2)].val.opval), scalar((ps[(1) - (2)].val.opval)))); } break; - case 200: -#line 1350 "perly.y" + case 196: +#line 1307 "perly.y" { (yyval.opval) = newOP(IVAL((ps[(1) - (1)].val.i_tkval)), 0); TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'o'); - ;} + } break; - case 201: -#line 1354 "perly.y" + case 197: +#line 1311 "perly.y" { (yyval.opval) = newOP(IVAL((ps[(1) - (3)].val.i_tkval)), 0); TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'o'); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')'); - ;} + } break; - case 202: -#line 1360 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 198: +#line 1317 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 203: -#line 1362 "perly.y" + case 199: +#line 1319 "perly.y" { (yyval.opval) = (ps[(1) - (3)].val.opval); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')'); - ;} + } break; - case 204: -#line 1367 "perly.y" + case 200: +#line 1324 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, - scalar((ps[(1) - (1)].val.opval))); ;} + scalar((ps[(1) - (1)].val.opval))); } break; - case 205: -#line 1370 "perly.y" + case 201: +#line 1327 "perly.y" { (yyval.opval) = (IVAL((ps[(1) - (3)].val.i_tkval)) == OP_NOT) ? newUNOP(IVAL((ps[(1) - (3)].val.i_tkval)), 0, newSVOP(OP_CONST, 0, newSViv(0))) : newOP(IVAL((ps[(1) - (3)].val.i_tkval)), OPf_SPECIAL); @@ -1684,20 +1630,20 @@ case 2: TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'o'); TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')'); - ;} + } break; - case 206: -#line 1379 "perly.y" + case 202: +#line 1336 "perly.y" { (yyval.opval) = newUNOP(IVAL((ps[(1) - (4)].val.i_tkval)), 0, (ps[(3) - (4)].val.opval)); TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'o'); TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')'); - ;} + } break; - case 207: -#line 1385 "perly.y" + case 203: +#line 1342 "perly.y" { if ( (ps[(1) - (1)].val.opval)->op_type != OP_TRANS && (ps[(1) - (1)].val.opval)->op_type != OP_TRANSR @@ -1707,199 +1653,196 @@ case 2: SAVEFREESV(PL_compcv); } else (yyval.ival) = 0; - ;} + } break; - case 208: -#line 1396 "perly.y" + case 204: +#line 1353 "perly.y" { (yyval.opval) = pmruntime((ps[(1) - (5)].val.opval), (ps[(4) - (5)].val.opval), 1, (ps[(2) - (5)].val.ival)); TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')'); - ;} + } break; - case 211: -#line 1403 "perly.y" + case 207: +#line 1360 "perly.y" { (yyval.opval) = newLISTOP(OP_DIE, 0, newOP(OP_PUSHMARK, 0), newSVOP(OP_CONST, 0, newSVpvs("Unimplemented"))); TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'X'); - ;} + } break; - case 213: -#line 1413 "perly.y" + case 209: +#line 1370 "perly.y" { (yyval.opval) = my_attrs((ps[(2) - (3)].val.opval),(ps[(3) - (3)].val.opval)); DO_MAD( token_getmad((ps[(1) - (3)].val.i_tkval),(yyval.opval),'d'); append_madprops((ps[(3) - (3)].val.opval)->op_madprop, (yyval.opval), 'a'); (ps[(3) - (3)].val.opval)->op_madprop = 0; ); - ;} + } break; - case 214: -#line 1421 "perly.y" + case 210: +#line 1378 "perly.y" { (yyval.opval) = localize((ps[(2) - (2)].val.opval),IVAL((ps[(1) - (2)].val.i_tkval))); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'d'); - ;} + } break; - case 215: -#line 1428 "perly.y" + case 211: +#line 1385 "perly.y" { (yyval.opval) = sawparens((ps[(2) - (3)].val.opval)); TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')'); - ;} + } break; - case 216: -#line 1433 "perly.y" + case 212: +#line 1390 "perly.y" { (yyval.opval) = sawparens(newNULLLIST()); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'('); TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),')'); - ;} + } break; - case 217: -#line 1438 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 213: +#line 1395 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 218: -#line 1440 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 214: +#line 1397 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 219: -#line 1442 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 215: +#line 1399 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 220: -#line 1447 "perly.y" - { (yyval.opval) = (OP*)NULL; ;} + case 216: +#line 1404 "perly.y" + { (yyval.opval) = (OP*)NULL; } break; - case 221: -#line 1449 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 217: +#line 1406 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 222: -#line 1453 "perly.y" - { (yyval.opval) = (OP*)NULL; ;} + case 218: +#line 1410 "perly.y" + { (yyval.opval) = (OP*)NULL; } break; - case 223: -#line 1455 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 219: +#line 1412 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - case 224: -#line 1461 "perly.y" - { PL_parser->in_my = 0; (yyval.opval) = my((ps[(1) - (1)].val.opval)); ;} + case 220: +#line 1418 "perly.y" + { PL_parser->in_my = 0; (yyval.opval) = my((ps[(1) - (1)].val.opval)); } break; - case 225: -#line 1465 "perly.y" + case 221: +#line 1422 "perly.y" { (yyval.opval) = newCVREF(IVAL((ps[(1) - (2)].val.i_tkval)),(ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'&'); - ;} + } break; - case 226: -#line 1471 "perly.y" + case 222: +#line 1428 "perly.y" { (yyval.opval) = newSVREF((ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'$'); - ;} + } break; - case 227: -#line 1477 "perly.y" + case 223: +#line 1434 "perly.y" { (yyval.opval) = newAVREF((ps[(2) - (2)].val.opval)); if ((yyval.opval)) (yyval.opval)->op_private |= IVAL((ps[(1) - (2)].val.i_tkval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'@'); - ;} + } break; - case 228: -#line 1484 "perly.y" + case 224: +#line 1441 "perly.y" { (yyval.opval) = newHVREF((ps[(2) - (2)].val.opval)); if ((yyval.opval)) (yyval.opval)->op_private |= IVAL((ps[(1) - (2)].val.i_tkval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'%'); - ;} + } break; - case 229: -#line 1491 "perly.y" + case 225: +#line 1448 "perly.y" { (yyval.opval) = newAVREF((ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'l'); - ;} + } break; - case 230: -#line 1495 "perly.y" + case 226: +#line 1452 "perly.y" { (yyval.opval) = newAVREF((ps[(1) - (4)].val.opval)); TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'l'); - ;} + } break; - case 231: -#line 1501 "perly.y" + case 227: +#line 1458 "perly.y" { (yyval.opval) = newGVREF(0,(ps[(2) - (2)].val.opval)); TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'*'); - ;} + } break; - case 233: -#line 1508 "perly.y" + case 229: +#line 1465 "perly.y" { (yyval.opval) = newAVREF((ps[(1) - (3)].val.opval)); TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),'@'); - ;} + } break; - case 235: -#line 1515 "perly.y" + case 231: +#line 1472 "perly.y" { (yyval.opval) = newHVREF((ps[(1) - (3)].val.opval)); TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),'@'); - ;} + } break; - case 237: -#line 1522 "perly.y" + case 233: +#line 1479 "perly.y" { (yyval.opval) = newGVREF(0,(ps[(1) - (3)].val.opval)); TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),'*'); - ;} + } break; - case 238: -#line 1529 "perly.y" - { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); ;} + case 234: +#line 1486 "perly.y" + { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); } break; - case 239: -#line 1531 "perly.y" - { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); ;} + case 235: +#line 1488 "perly.y" + { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); } break; - case 240: -#line 1533 "perly.y" - { (yyval.opval) = op_scope((ps[(1) - (1)].val.opval)); ;} + case 236: +#line 1490 "perly.y" + { (yyval.opval) = op_scope((ps[(1) - (1)].val.opval)); } break; - case 241: -#line 1536 "perly.y" - { (yyval.opval) = (ps[(1) - (1)].val.opval); ;} + case 237: +#line 1493 "perly.y" + { (yyval.opval) = (ps[(1) - (1)].val.opval); } break; - -/* Line 1267 of yacc.c. */ - default: break; /* Generated from: - * 570608a8d9575266e34e16588de5993f72c5756a88dcb273ffba0705beed3d8b perly.y + * 911fbbcab275e0f9645397ee5b80a7c2384e6b24f793c15e6d6e918ebfd4e384 perly.y * 5c9d2a0262457fe9b70073fc8ad6c188f812f38ad57712b7e2f53daa01b297cc regen_perly.pl * ex: set ro: */ diff --git a/perly.c b/perly.c index 5a934dc..d8eedf2 100644 --- a/perly.c +++ b/perly.c @@ -433,9 +433,6 @@ Perl_yyparse (pTHX_ int gramtype) switch (yyn) { - -#define dep() deprecate("\"do\" to call subroutines") - #ifdef PERL_IN_MADLY_C # define IVAL(i) (i)->tk_lval.ival # define PVAL(p) (p)->tk_lval.pval diff --git a/perly.h b/perly.h index 9c1eff5..2886bd3 100644 --- a/perly.h +++ b/perly.h @@ -5,27 +5,24 @@ */ #ifdef PERL_CORE -/* A Bison parser, made by GNU Bison 2.3. */ +/* A Bison parser, made by GNU Bison 2.7.12-4996. */ -/* Skeleton interface for Bison's Yacc-like parsers in C - - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify +/* Bison interface for Yacc-like parsers in C + + Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ + along with this program. If not, see . */ /* As a special exception, you may create a larger work that contains part or all of the Bison parser skeleton and distribute that work @@ -36,10 +33,18 @@ special exception, which will cause the skeleton and the resulting Bison output files to be licensed under the GNU General Public License without this special exception. - + This special exception was added by the Free Software Foundation in version 2.2 of Bison. */ +/* Enabling traces. */ +#ifndef YYDEBUG +# define YYDEBUG 0 +#endif +#if YYDEBUG +extern int yydebug; +#endif + /* Tokens. */ #ifndef YYTOKENTYPE # define YYTOKENTYPE @@ -129,6 +134,7 @@ PEG = 338 }; #endif + /* Tokens. */ #define GRAMPROG 258 #define GRAMEXPR 259 @@ -213,8 +219,6 @@ #define PEG 338 - - #ifdef PERL_IN_TOKE_C static bool S_is_opval_token(int type) { @@ -241,6 +245,8 @@ S_is_opval_token(int type) { #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE { +/* Line 2053 of yacc.c */ + I32 ival; /* __DEFAULT__ (marker for regen_perly.pl; must always be 1st union member) */ char *pval; @@ -256,18 +262,32 @@ typedef union YYSTYPE #ifdef PERL_MAD TOKEN* tkval; #endif -} -/* Line 1529 of yacc.c. */ - YYSTYPE; + + +/* Line 2053 of yacc.c */ +} YYSTYPE; +# define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 -# define YYSTYPE_IS_TRIVIAL 1 #endif +#ifdef YYPARSE_PARAM +#if defined __STDC__ || defined __cplusplus +int yyparse (void *YYPARSE_PARAM); +#else +int yyparse (); +#endif +#else /* ! YYPARSE_PARAM */ +#if defined __STDC__ || defined __cplusplus +int yyparse (void); +#else +int yyparse (); +#endif +#endif /* ! YYPARSE_PARAM */ /* Generated from: - * 570608a8d9575266e34e16588de5993f72c5756a88dcb273ffba0705beed3d8b perly.y + * 911fbbcab275e0f9645397ee5b80a7c2384e6b24f793c15e6d6e918ebfd4e384 perly.y * 5c9d2a0262457fe9b70073fc8ad6c188f812f38ad57712b7e2f53daa01b297cc regen_perly.pl * ex: set ro: */ diff --git a/perly.tab b/perly.tab index 9faefb4..84e1c82 100644 --- a/perly.tab +++ b/perly.tab @@ -6,16 +6,16 @@ #define YYFINAL 14 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 2965 +#define YYLAST 2627 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 105 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 69 /* YYNRULES -- Number of rules. */ -#define YYNRULES 241 +#define YYNRULES 237 /* YYNRULES -- Number of states. */ -#define YYNSTATES 478 +#define YYNSTATES 467 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 @@ -83,16 +83,15 @@ static const yytype_uint16 yyprhs[] = 431, 436, 440, 447, 452, 458, 462, 466, 470, 474, 478, 482, 486, 490, 494, 498, 502, 506, 510, 514, 517, 520, 523, 526, 529, 532, 535, 538, 541, 545, - 548, 553, 557, 563, 566, 569, 574, 580, 585, 591, - 593, 595, 597, 599, 605, 608, 610, 613, 617, 619, - 622, 624, 626, 628, 630, 632, 634, 639, 644, 650, - 656, 658, 660, 664, 669, 673, 678, 683, 688, 693, - 698, 700, 703, 706, 708, 711, 714, 716, 719, 721, - 724, 726, 730, 732, 736, 738, 742, 747, 748, 754, - 756, 758, 760, 762, 766, 769, 773, 776, 778, 780, - 782, 783, 785, 786, 788, 790, 793, 796, 799, 802, - 805, 810, 813, 815, 819, 821, 825, 827, 831, 833, - 835, 837 + 548, 553, 557, 563, 566, 569, 571, 573, 575, 577, + 583, 586, 588, 591, 595, 597, 600, 602, 604, 606, + 608, 610, 612, 617, 622, 628, 634, 636, 638, 642, + 647, 651, 656, 661, 666, 671, 676, 678, 681, 684, + 686, 689, 692, 694, 697, 699, 702, 704, 708, 710, + 714, 716, 720, 725, 726, 732, 734, 736, 738, 740, + 744, 747, 751, 754, 756, 758, 760, 761, 763, 764, + 766, 768, 771, 774, 777, 780, 783, 788, 791, 793, + 797, 799, 803, 805, 809, 811, 813, 815 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ @@ -154,34 +153,32 @@ static const yytype_int16 yyrhs[] = 97, -1, 157, 96, -1, 100, 157, -1, 99, 157, -1, 11, 147, 12, -1, 11, 12, -1, 67, 147, 20, 10, -1, 67, 20, 10, -1, 39, 140, 143, - 144, 113, -1, 66, 157, -1, 66, 113, -1, 66, - 142, 103, 102, -1, 66, 142, 103, 147, 102, -1, - 66, 165, 103, 102, -1, 66, 165, 103, 147, 102, - -1, 153, -1, 154, -1, 155, -1, 156, -1, 157, - 82, 157, 83, 157, -1, 93, 157, -1, 159, -1, - 69, 157, -1, 103, 147, 102, -1, 29, -1, 103, - 102, -1, 165, -1, 169, -1, 167, -1, 166, -1, - 168, -1, 152, -1, 170, 11, 147, 12, -1, 171, - 11, 147, 12, -1, 170, 9, 147, 20, 10, -1, - 171, 9, 147, 20, 10, -1, 26, -1, 164, -1, - 164, 103, 102, -1, 164, 103, 147, 102, -1, 68, - 142, 161, -1, 157, 101, 15, 18, -1, 157, 101, - 16, 18, -1, 157, 101, 17, 18, -1, 157, 101, - 19, 18, -1, 157, 101, 18, 18, -1, 53, -1, - 53, 157, -1, 79, 148, -1, 59, -1, 59, 113, - -1, 59, 157, -1, 71, -1, 71, 157, -1, 32, - -1, 32, 157, -1, 56, -1, 56, 103, 102, -1, - 30, -1, 30, 103, 102, -1, 31, -1, 57, 103, - 102, -1, 57, 103, 147, 102, -1, -1, 27, 158, - 103, 148, 102, -1, 23, -1, 149, -1, 55, -1, - 34, -1, 70, 160, 145, -1, 70, 160, -1, 103, - 147, 102, -1, 103, 102, -1, 165, -1, 167, -1, - 166, -1, -1, 148, -1, -1, 147, -1, 165, -1, - 19, 173, -1, 15, 173, -1, 16, 173, -1, 17, - 173, -1, 65, 173, -1, 157, 101, 65, 18, -1, - 18, 173, -1, 166, -1, 157, 101, 16, -1, 167, - -1, 157, 101, 17, -1, 169, -1, 157, 101, 18, - -1, 23, -1, 165, -1, 113, -1, 28, -1 + 144, 113, -1, 66, 157, -1, 66, 113, -1, 153, + -1, 154, -1, 155, -1, 156, -1, 157, 82, 157, + 83, 157, -1, 93, 157, -1, 159, -1, 69, 157, + -1, 103, 147, 102, -1, 29, -1, 103, 102, -1, + 165, -1, 169, -1, 167, -1, 166, -1, 168, -1, + 152, -1, 170, 11, 147, 12, -1, 171, 11, 147, + 12, -1, 170, 9, 147, 20, 10, -1, 171, 9, + 147, 20, 10, -1, 26, -1, 164, -1, 164, 103, + 102, -1, 164, 103, 147, 102, -1, 68, 142, 161, + -1, 157, 101, 15, 18, -1, 157, 101, 16, 18, + -1, 157, 101, 17, 18, -1, 157, 101, 19, 18, + -1, 157, 101, 18, 18, -1, 53, -1, 53, 157, + -1, 79, 148, -1, 59, -1, 59, 113, -1, 59, + 157, -1, 71, -1, 71, 157, -1, 32, -1, 32, + 157, -1, 56, -1, 56, 103, 102, -1, 30, -1, + 30, 103, 102, -1, 31, -1, 57, 103, 102, -1, + 57, 103, 147, 102, -1, -1, 27, 158, 103, 148, + 102, -1, 23, -1, 149, -1, 55, -1, 34, -1, + 70, 160, 145, -1, 70, 160, -1, 103, 147, 102, + -1, 103, 102, -1, 165, -1, 167, -1, 166, -1, + -1, 148, -1, -1, 147, -1, 165, -1, 19, 173, + -1, 15, 173, -1, 16, 173, -1, 17, 173, -1, + 65, 173, -1, 157, 101, 65, 18, -1, 18, 173, + -1, 166, -1, 157, 101, 16, -1, 167, -1, 157, + 101, 17, -1, 169, -1, 157, 101, 18, -1, 23, + -1, 165, -1, 113, -1, 28, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ @@ -202,20 +199,19 @@ static const yytype_uint16 yyrline[] = 920, 927, 933, 940, 945, 955, 959, 963, 969, 973, 977, 981, 985, 989, 993, 1005, 1009, 1013, 1017, 1027, 1031, 1038, 1042, 1046, 1051, 1056, 1068, 1073, 1082, 1087, - 1092, 1098, 1104, 1115, 1119, 1123, 1135, 1148, 1156, 1168, - 1169, 1170, 1171, 1172, 1177, 1181, 1183, 1187, 1192, 1194, - 1199, 1201, 1203, 1205, 1207, 1209, 1211, 1223, 1235, 1249, - 1263, 1265, 1267, 1272, 1285, 1290, 1294, 1298, 1302, 1307, - 1311, 1316, 1320, 1324, 1328, 1332, 1336, 1340, 1344, 1346, - 1349, 1353, 1359, 1361, 1366, 1369, 1378, 1385, 1384, 1400, - 1401, 1402, 1408, 1412, 1420, 1427, 1432, 1437, 1439, 1441, - 1446, 1448, 1453, 1454, 1460, 1464, 1470, 1476, 1483, 1490, - 1494, 1500, 1506, 1507, 1513, 1514, 1520, 1521, 1528, 1530, - 1532, 1535 + 1092, 1098, 1104, 1115, 1119, 1125, 1126, 1127, 1128, 1129, + 1134, 1138, 1140, 1144, 1149, 1151, 1156, 1158, 1160, 1162, + 1164, 1166, 1168, 1180, 1192, 1206, 1220, 1222, 1224, 1229, + 1242, 1247, 1251, 1255, 1259, 1264, 1268, 1273, 1277, 1281, + 1285, 1289, 1293, 1297, 1301, 1303, 1306, 1310, 1316, 1318, + 1323, 1326, 1335, 1342, 1341, 1357, 1358, 1359, 1365, 1369, + 1377, 1384, 1389, 1394, 1396, 1398, 1403, 1405, 1410, 1411, + 1417, 1421, 1427, 1433, 1440, 1447, 1451, 1457, 1463, 1464, + 1470, 1471, 1477, 1478, 1485, 1487, 1489, 1492 }; #endif -#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE +#if YYDEBUG || YYERROR_VERBOSE || 0 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. First, the terminals, then, starting at YYNTOKENS, nonterminals. */ static const char *const yytname[] = @@ -234,17 +230,18 @@ static const char *const yytname[] = "ANDOP", "NOTOP", "','", "ASSIGNOP", "'?'", "':'", "DORDOR", "OROR", "ANDAND", "BITOROP", "BITANDOP", "SHIFTOP", "MATCHOP", "'!'", "'~'", "REFGEN", "UMINUS", "POWOP", "POSTJOIN", "POSTDEC", "POSTINC", "PREDEC", - "PREINC", "ARROW", "')'", "'('", "PEG", "$accept", "grammar", "@1", "@2", - "@3", "@4", "@5", "@6", "block", "formblock", "remember", "mblock", - "mremember", "stmtseq", "formstmtseq", "fullstmt", "labfullstmt", - "barestmt", "@7", "@8", "@9", "formline", "formarg", "sideff", "else", - "cont", "mintro", "nexpr", "texpr", "iexpr", "mexpr", "mnexpr", "miexpr", - "formname", "startsub", "startanonsub", "startformsub", "subname", - "proto", "subattrlist", "myattrlist", "subbody", "expr", "listexpr", - "listop", "@10", "method", "subscripted", "termbinop", "termunop", - "anonymous", "termdo", "term", "@11", "myattrterm", "myterm", - "optlistexpr", "optexpr", "my_scalar", "amper", "scalar", "ary", "hsh", - "arylen", "star", "sliceme", "kvslice", "gelem", "indirob", 0 + "PREINC", "ARROW", "')'", "'('", "PEG", "$accept", "grammar", "$@1", + "$@2", "$@3", "$@4", "$@5", "$@6", "block", "formblock", "remember", + "mblock", "mremember", "stmtseq", "formstmtseq", "fullstmt", + "labfullstmt", "barestmt", "$@7", "$@8", "$@9", "formline", "formarg", + "sideff", "else", "cont", "mintro", "nexpr", "texpr", "iexpr", "mexpr", + "mnexpr", "miexpr", "formname", "startsub", "startanonsub", + "startformsub", "subname", "proto", "subattrlist", "myattrlist", + "subbody", "expr", "listexpr", "listop", "@10", "method", "subscripted", + "termbinop", "termunop", "anonymous", "termdo", "term", "@11", + "myattrterm", "myterm", "optlistexpr", "optexpr", "my_scalar", "amper", + "scalar", "ary", "hsh", "arylen", "star", "sliceme", "kvslice", "gelem", + "indirob", YY_NULL }; #endif @@ -285,16 +282,15 @@ static const yytype_uint8 yyr1[] = 152, 152, 152, 152, 152, 153, 153, 153, 153, 153, 153, 153, 153, 153, 153, 153, 153, 153, 153, 154, 154, 154, 154, 154, 154, 154, 154, 154, 155, 155, - 155, 155, 155, 156, 156, 156, 156, 156, 156, 157, + 155, 155, 155, 156, 156, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, - 157, 157, 157, 157, 157, 157, 157, 158, 157, 157, - 157, 157, 157, 159, 159, 160, 160, 160, 160, 160, - 161, 161, 162, 162, 163, 164, 165, 166, 167, 168, - 168, 169, 170, 170, 171, 171, 172, 172, 173, 173, - 173, 173 + 157, 157, 157, 158, 157, 157, 157, 157, 157, 159, + 159, 160, 160, 160, 160, 160, 161, 161, 162, 162, + 163, 164, 165, 166, 167, 168, 168, 169, 170, 170, + 171, 171, 172, 172, 173, 173, 173, 173 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -315,380 +311,347 @@ static const yytype_uint8 yyr2[] = 4, 3, 6, 4, 5, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 2, - 4, 3, 5, 2, 2, 4, 5, 4, 5, 1, - 1, 1, 1, 5, 2, 1, 2, 3, 1, 2, - 1, 1, 1, 1, 1, 1, 4, 4, 5, 5, - 1, 1, 3, 4, 3, 4, 4, 4, 4, 4, - 1, 2, 2, 1, 2, 2, 1, 2, 1, 2, - 1, 3, 1, 3, 1, 3, 4, 0, 5, 1, - 1, 1, 1, 3, 2, 3, 2, 1, 1, 1, - 0, 1, 0, 1, 1, 2, 2, 2, 2, 2, - 4, 2, 1, 3, 1, 3, 1, 3, 1, 1, - 1, 1 + 4, 3, 5, 2, 2, 1, 1, 1, 1, 5, + 2, 1, 2, 3, 1, 2, 1, 1, 1, 1, + 1, 1, 4, 4, 5, 5, 1, 1, 3, 4, + 3, 4, 4, 4, 4, 4, 1, 2, 2, 1, + 2, 2, 1, 2, 1, 2, 1, 3, 1, 3, + 1, 3, 4, 0, 5, 1, 1, 1, 1, 3, + 2, 3, 2, 1, 1, 1, 0, 1, 0, 1, + 1, 2, 2, 2, 2, 2, 4, 2, 1, 3, + 1, 3, 1, 3, 1, 1, 1, 1 }; -/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state - STATE-NUM when YYTABLE doesn't specify something else to do. Zero +/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM. + Performed when YYTABLE doesn't specify something else to do. Zero means the default is an error. */ static const yytype_uint8 yydefact[] = { - 0, 2, 4, 6, 8, 10, 12, 0, 16, 222, + 0, 2, 4, 6, 8, 10, 12, 0, 16, 218, 0, 0, 0, 19, 1, 19, 0, 0, 0, 0, - 0, 0, 0, 0, 209, 0, 0, 180, 207, 168, - 202, 204, 198, 79, 212, 79, 190, 211, 200, 0, - 0, 193, 220, 0, 0, 0, 0, 0, 0, 196, - 0, 0, 0, 0, 0, 0, 0, 223, 95, 210, - 175, 159, 160, 161, 162, 98, 165, 5, 181, 170, - 173, 172, 174, 171, 0, 0, 0, 16, 7, 54, + 0, 0, 0, 0, 205, 0, 0, 176, 203, 164, + 198, 200, 194, 79, 208, 79, 186, 207, 196, 0, + 0, 189, 216, 0, 0, 0, 0, 0, 0, 192, + 0, 0, 0, 0, 0, 0, 0, 219, 95, 206, + 171, 155, 156, 157, 158, 98, 161, 5, 177, 166, + 169, 168, 170, 167, 0, 0, 0, 16, 7, 54, 50, 27, 80, 0, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 28, 65, 9, 0, 55, 0, - 11, 24, 23, 0, 0, 149, 0, 139, 140, 238, - 241, 240, 239, 226, 227, 228, 231, 225, 220, 0, - 0, 0, 0, 199, 0, 83, 191, 0, 0, 222, - 194, 195, 238, 221, 105, 239, 0, 229, 209, 82, - 154, 0, 153, 170, 0, 0, 81, 220, 166, 0, - 214, 217, 219, 218, 197, 192, 141, 142, 164, 147, - 146, 169, 0, 0, 0, 0, 96, 0, 0, 0, + 11, 24, 23, 0, 0, 149, 0, 139, 140, 234, + 237, 236, 235, 222, 223, 224, 227, 221, 216, 0, + 0, 0, 0, 195, 0, 83, 187, 0, 0, 218, + 190, 191, 234, 217, 105, 235, 0, 225, 154, 153, + 0, 0, 81, 82, 216, 162, 0, 210, 213, 215, + 214, 193, 188, 141, 142, 160, 147, 146, 165, 0, + 0, 0, 0, 96, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 145, 144, 143, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 19, 77, 78, - 0, 33, 16, 16, 16, 16, 16, 16, 0, 16, - 16, 39, 0, 46, 49, 0, 0, 0, 0, 0, - 0, 26, 25, 20, 148, 103, 222, 0, 0, 203, - 107, 84, 85, 201, 205, 0, 0, 0, 99, 0, - 0, 151, 0, 184, 216, 0, 89, 213, 0, 167, - 94, 93, 92, 97, 0, 0, 121, 0, 134, 130, - 131, 127, 128, 125, 0, 137, 136, 135, 133, 132, - 129, 138, 126, 0, 0, 0, 233, 235, 237, 0, - 109, 0, 0, 102, 110, 182, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 76, 0, 30, 0, 0, - 70, 0, 0, 0, 0, 0, 16, 0, 0, 66, - 58, 59, 72, 56, 57, 60, 61, 0, 0, 123, - 220, 87, 0, 206, 106, 0, 155, 0, 157, 0, - 150, 215, 88, 0, 0, 0, 114, 120, 0, 0, - 0, 185, 186, 187, 189, 188, 230, 118, 0, 222, - 183, 0, 112, 0, 176, 0, 177, 0, 14, 16, - 29, 83, 16, 32, 0, 0, 71, 0, 0, 73, - 75, 0, 0, 224, 69, 74, 0, 0, 55, 0, - 0, 0, 104, 208, 108, 86, 152, 100, 156, 158, - 124, 0, 117, 163, 0, 113, 119, 0, 115, 178, - 179, 111, 0, 85, 47, 220, 67, 67, 0, 0, - 0, 0, 70, 0, 0, 0, 122, 116, 101, 0, - 0, 19, 0, 0, 0, 18, 62, 62, 0, 65, - 0, 0, 37, 38, 21, 91, 90, 31, 0, 34, - 65, 65, 19, 0, 0, 35, 36, 0, 45, 67, - 65, 0, 48, 40, 41, 0, 63, 0, 65, 0, - 44, 0, 52, 22, 17, 0, 43, 0, 15, 19, - 51, 0, 0, 0, 62, 42, 53, 64 + 0, 0, 145, 144, 143, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 19, 77, 78, 0, 33, 16, + 16, 16, 16, 16, 16, 0, 16, 16, 39, 0, + 46, 49, 0, 0, 0, 0, 0, 0, 26, 25, + 20, 148, 103, 218, 0, 0, 199, 107, 84, 85, + 197, 201, 0, 0, 0, 99, 151, 0, 180, 212, + 0, 89, 209, 0, 163, 94, 93, 92, 97, 0, + 0, 121, 0, 134, 130, 131, 127, 128, 125, 0, + 137, 136, 135, 133, 132, 129, 138, 126, 0, 0, + 0, 229, 231, 233, 0, 109, 0, 0, 102, 110, + 178, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 76, 0, 30, 0, 0, 70, 0, 0, 0, 0, + 0, 16, 0, 0, 66, 58, 59, 72, 56, 57, + 60, 61, 0, 0, 123, 216, 87, 0, 202, 106, + 0, 150, 211, 88, 0, 0, 0, 114, 120, 0, + 0, 0, 181, 182, 183, 185, 184, 226, 118, 0, + 218, 179, 0, 112, 0, 172, 0, 173, 0, 14, + 16, 29, 83, 16, 32, 0, 0, 71, 0, 0, + 73, 75, 0, 0, 220, 69, 74, 0, 0, 55, + 0, 0, 0, 104, 204, 108, 86, 152, 100, 124, + 0, 117, 159, 0, 113, 119, 0, 115, 174, 175, + 111, 0, 85, 47, 216, 67, 67, 0, 0, 0, + 0, 70, 0, 0, 0, 122, 116, 101, 0, 0, + 19, 0, 0, 0, 18, 62, 62, 0, 65, 0, + 0, 37, 38, 21, 91, 90, 31, 0, 34, 65, + 65, 19, 0, 0, 35, 36, 0, 45, 67, 65, + 0, 48, 40, 41, 0, 63, 0, 65, 0, 44, + 0, 52, 22, 17, 0, 43, 0, 15, 19, 51, + 0, 0, 0, 62, 42, 53, 64 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 7, 8, 9, 10, 11, 12, 13, 111, 360, - 15, 426, 442, 103, 451, 223, 101, 102, 361, 299, - 421, 463, 470, 97, 445, 213, 423, 375, 365, 311, - 368, 377, 371, 296, 201, 124, 198, 141, 232, 322, - 247, 437, 98, 58, 59, 320, 283, 60, 61, 62, - 63, 64, 65, 120, 66, 150, 134, 67, 372, 68, + -1, 7, 8, 9, 10, 11, 12, 13, 111, 351, + 15, 415, 431, 103, 440, 220, 101, 102, 352, 294, + 410, 452, 459, 97, 434, 210, 412, 366, 356, 306, + 359, 368, 362, 291, 198, 124, 195, 144, 229, 317, + 242, 426, 98, 58, 59, 315, 278, 60, 61, 62, + 63, 64, 65, 120, 66, 147, 134, 67, 363, 68, 69, 70, 71, 72, 73, 74, 75, 76, 113 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -401 +#define YYPACT_NINF -395 static const yytype_int16 yypact[] = { - 816, -401, -401, -401, -401, -401, -401, 82, -401, 2751, - 23, 1123, 1027, -401, -401, -401, 1825, 2751, 2751, 431, - 431, 431, 431, 431, -401, 431, 431, -401, -401, 64, - -11, -401, 2751, -401, -401, -401, 2751, -401, -7, -4, - -3, 1732, 1546, 431, 1639, 1916, 53, 2751, 3, 2751, - 2751, 2751, 2751, 2751, 2751, 2751, 2007, 110, 11, -401, - 0, -401, -401, -401, -401, 2819, -401, -401, 9, 57, - 79, 108, -401, 95, 112, 146, 115, -401, -401, -401, - -401, -401, -401, 53, 104, -401, 29, 69, 71, 98, - 7, 100, 101, 23, -401, 119, -401, 158, 1637, 1027, - -401, -401, -401, 451, 547, -401, -5, 716, 716, -401, - -401, -401, -401, -401, -401, -401, -401, -401, 2751, 120, - 139, 2751, 105, 352, 23, 180, 2819, 107, 2100, 1546, - -401, 352, 1452, 11, -401, 1373, 2751, -401, 140, -401, - -401, 145, 352, 5, 212, 8, -401, 2751, 352, 2193, - 153, -401, -401, -401, 352, 11, 716, 716, 716, 619, - 619, 258, 169, 2751, 2751, 2751, 2751, 2751, 2751, 2286, - 2751, 2751, 2751, 2751, 2751, 2751, 2751, 2751, 2751, 2751, - 2751, 2751, 2751, 2751, 2751, -401, -401, -401, 215, 2379, - 2751, 2751, 2751, 2751, 2751, 2751, 2751, -401, 247, -401, - 249, -401, -401, -401, -401, -401, -401, -401, 170, -401, - -401, -401, 23, -401, -401, 2751, 2751, 2751, 2751, 2751, - 2751, -401, -401, -401, -401, -401, 2751, 2751, 75, -401, - -401, -401, 204, -401, -401, 175, 176, 2751, 11, 2472, - 2565, -401, 269, -401, -401, 288, 262, -401, 2751, 283, - 211, 211, -401, 2819, 134, 85, -401, 327, 1205, 1531, - 1343, 628, 436, 2819, 2774, 296, 296, 337, 280, 1422, - 1255, 716, 716, 2751, 2751, 613, 273, 281, 287, 289, - -401, 292, 2658, 193, -401, -401, 341, 209, 99, 261, - 103, 270, 106, 275, 643, -401, 293, -401, 21, 297, - 2751, 2751, 2751, 2751, 300, 1217, -401, 2751, 2751, -401, - 110, -401, 110, 110, 110, 110, 110, 217, -51, -401, - 2751, 298, 23, -401, -401, 437, -401, 447, -401, 517, - -401, -401, -401, 122, 2751, 312, -401, -401, 2751, 278, - 137, -401, -401, -401, -401, -401, -401, -401, 532, 2751, - -401, 313, -401, 321, -401, 322, -401, 330, -401, -401, - -401, 180, -401, -401, 348, 277, 110, 286, 294, 110, - -401, 304, 299, -401, -401, -401, 305, 369, 285, 2751, - 306, 310, -401, -401, -401, -401, -401, -401, -401, -401, - -401, 159, -401, 2864, 362, -401, -401, 318, -401, -401, - -401, -401, 375, 204, -401, 2751, -401, -401, 405, 405, - 2751, 405, 2751, 319, 405, 405, -401, -401, -401, 349, - 47, -401, 411, 405, 405, -401, 32, 32, 334, 119, - 417, 405, -401, -401, -401, -401, -401, -401, 739, -401, - 119, 119, -401, 405, 336, -401, -401, 405, -401, -401, - 119, 38, -401, -401, -401, 835, -401, 2751, 119, 1310, - -401, 422, 382, -401, -401, 354, -401, 359, -401, -401, - -401, 405, 405, 931, 32, -401, -401, -401 + 701, -395, -395, -395, -395, -395, -395, 48, -395, 2461, + 6, 1112, 1016, -395, -395, -395, 1721, 2461, 2461, 397, + 397, 397, 397, 397, -395, 397, 397, -395, -395, 18, + -37, -395, 2461, -395, -395, -395, 2461, -395, -33, -19, + -11, 1628, 1535, 397, 1628, 1812, 59, 2461, 46, 2461, + 2461, 2461, 2461, 2461, 2461, 2461, 1903, 145, -7, -395, + 10, -395, -395, -395, -395, 2481, -395, -395, -6, 112, + 115, 216, -395, 82, 227, 280, 87, -395, -395, -395, + -395, -395, -395, 59, 77, -395, 2, 5, 31, 56, + 8, 57, 72, 6, -395, 61, -395, 158, 1810, 1016, + -395, -395, -395, 440, 536, -395, 41, 144, 144, -395, + -395, -395, -395, -395, -395, -395, -395, -395, 2461, 92, + 97, 2461, 99, 1706, 6, 185, 2481, 117, 1996, 1535, + -395, 1706, 1441, -7, -395, 1362, 2461, -395, -395, 1706, + 94, 107, -395, -395, 2461, 1706, 2089, 154, -395, -395, + -395, 1706, -7, 144, 144, 144, 111, 111, 220, 172, + 2461, 2461, 2461, 2461, 2461, 2461, 2182, 2461, 2461, 2461, + 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, 2461, + 2461, 2461, -395, -395, -395, 9, 2275, 2461, 2461, 2461, + 2461, 2461, 2461, 2461, -395, 223, -395, 250, -395, -395, + -395, -395, -395, -395, -395, 140, -395, -395, -395, 6, + -395, -395, 2461, 2461, 2461, 2461, 2461, 2461, -395, -395, + -395, -395, -395, 2461, 2461, 64, -395, -395, -395, 204, + -395, -395, 233, 178, 2461, -7, -395, 298, -395, -395, + 271, 286, -395, 2461, 270, 235, 235, -395, 2481, 128, + 67, -395, 327, 1194, 1613, 347, 521, 425, 2481, 296, + 1332, 1332, 1411, 326, 1520, 1244, 144, 144, 2461, 2461, + 346, 303, 306, 307, 309, -395, 318, 2368, 234, -395, + -395, 426, 190, 74, 217, 78, 252, 103, 255, 632, + -395, 330, -395, 55, 316, 2461, 2461, 2461, 2461, 337, + 1206, -395, 2461, 2461, -395, 145, -395, 145, 145, 145, + 145, 145, 251, -72, -395, 2461, 328, 6, -395, -395, + 436, -395, -395, -395, 120, 2461, 355, -395, -395, 2461, + 268, 152, -395, -395, -395, -395, -395, -395, -395, 506, + 2461, -395, 356, -395, 357, -395, 358, -395, 360, -395, + -395, -395, 185, -395, -395, 349, 273, 145, 274, 293, + 145, -395, 294, 304, -395, -395, -395, 299, 398, 241, + 2461, 324, 329, -395, -395, -395, -395, -395, -395, -395, + 156, -395, 2526, 418, -395, -395, 331, -395, -395, -395, + -395, 410, 204, -395, 2461, -395, -395, 423, 423, 2461, + 423, 2461, 333, 423, 423, -395, -395, -395, 364, 79, + -395, 419, 423, 423, -395, -2, -2, 348, 61, 441, + 423, -395, -395, -395, -395, -395, -395, 728, -395, 61, + 61, -395, 423, 359, -395, -395, 423, -395, -395, 61, + 15, -395, -395, -395, 824, -395, 2461, 61, 1299, -395, + 446, 413, -395, -395, 385, -395, 392, -395, -395, -395, + 423, 423, 920, -2, -395, -395, -395 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -401, -401, -401, -401, -401, -401, -401, -401, -10, -401, - -62, -98, -401, -12, -401, 460, 374, 14, -401, -401, - -401, -401, -401, -300, -400, -396, -394, -401, 67, -143, - -284, 39, -401, -401, 328, 462, -401, -20, 144, 109, - -401, -401, 1, -38, -401, -401, -401, -401, -401, -401, - -401, -401, 84, -401, -401, -401, -112, -121, -401, -401, - 17, 480, 481, -401, -401, -401, -401, -401, 27 + -395, -395, -395, -395, -395, -395, -395, -395, -10, -395, + -30, -98, -395, -12, -395, 489, 417, -4, -395, -395, + -395, -395, -395, -295, -394, -362, -380, -395, 116, 44, + -289, 70, -395, -395, 334, 490, -395, 444, 177, 132, + -395, -395, 1, -38, -395, -395, -395, -395, -395, -395, + -395, -395, 84, -395, -395, -395, -112, -120, -395, -395, + 17, 486, 487, -395, -395, -395, -395, -395, 29 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which - number is the opposite. If zero, do what YYDEFACT says. - If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -237 + number is the opposite. If YYTABLE_NINF, syntax error. */ +#define YYTABLE_NINF -233 static const yytype_int16 yytable[] = { - 78, 95, 95, 104, 133, 374, 225, 224, 236, 167, - 57, 168, 155, 424, 190, 197, 191, 106, 19, 20, - 21, 376, 19, 380, 381, 96, 147, 446, 242, 166, - 362, 130, 77, 448, 140, 243, 112, 112, 112, 112, - 112, 363, 112, 112, 453, 454, 145, 114, 115, 116, - 117, 383, 118, 119, 460, 459, 77, 162, 461, 135, - 112, 143, 466, 199, 462, 151, 190, 435, 191, 136, - 137, 163, 164, 165, 477, 121, 146, 206, 443, 444, - 133, 139, 14, 211, 163, 164, 165, 319, -232, 95, - -232, 166, 122, 95, 95, 413, 127, 336, 238, 128, - 129, 107, 108, 169, -236, 317, 149, 208, 240, 133, - 207, 352, 189, 222, 230, 354, 123, -234, 356, -234, - 126, 192, 228, 193, 196, 131, 428, 200, 142, 235, - 57, 148, 202, 154, 390, 156, 157, 158, 159, 160, - 300, 301, 302, 303, 304, 305, 135, 307, 308, 395, - 245, 163, 164, 165, 335, 194, 237, 195, 367, 374, - 370, 163, 164, 165, 250, 251, 252, 212, 254, 255, - 257, 416, 203, 465, 204, 163, 164, 165, 214, 163, - 164, 165, 163, 164, 165, 294, 163, 164, 165, 318, - 286, 287, 288, 289, 290, 291, 292, 293, 163, 164, - 165, 205, 309, 209, 210, 284, 231, 229, 384, 233, - 163, 164, 165, 163, 164, 165, 310, 312, 313, 314, - 315, 316, 241, 226, 273, 246, 274, 57, 397, 351, - 275, 276, 277, 278, 279, 163, 164, 165, 325, 280, - 327, 329, 227, -81, 379, 163, 164, 165, 239, 333, - 253, 163, 164, 165, 258, 259, 260, 261, 262, 263, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 248, - 295, 249, 298, 306, 339, 340, 321, 323, 324, 330, - 281, 353, 133, 348, 95, 163, 164, 165, 332, 165, - 355, 342, 112, 422, 334, 357, 349, 402, 394, 343, - 404, 366, 312, 369, 312, 344, 378, 345, 369, 369, - 346, 427, 386, 429, 359, 19, 432, 433, 282, 382, - 364, 373, 392, 398, 385, 440, 441, 215, 216, 217, - 218, 399, 400, 450, 219, 391, 220, 163, 164, 165, - 401, 171, 172, 173, 174, 456, 163, 164, 165, 458, - 57, 163, 164, 165, 163, 164, 165, 171, 172, 173, - 174, 163, 164, 165, 163, 164, 165, 133, 181, 182, - 183, 405, 417, 474, 475, 184, 185, 186, 187, 406, - 369, 188, 179, 180, 181, 182, 183, -73, 407, 412, - 331, 184, 185, 186, 187, 419, 408, 188, 171, 172, - 173, 174, 410, 163, 164, 165, 409, 411, 414, 438, - 436, 369, 415, 366, 425, 173, 174, 163, 164, 165, - 418, 431, 393, 434, 180, 181, 182, 183, 95, 337, - 455, 439, 184, 185, 186, 187, 447, 449, 188, 457, - 77, 182, 183, 350, 468, 95, 19, 184, 185, 186, - 187, -13, 79, 188, 109, 469, 471, 473, 369, 110, - 77, 472, 16, 95, 17, 18, 19, 20, 21, 22, - 23, 80, 100, 221, 24, 25, 26, 27, 28, 430, - 29, 30, 31, 32, 33, 34, 81, 99, 82, 83, - 35, 84, 85, 86, 87, 88, 89, 125, 467, 173, - 90, 91, 92, 93, 36, 403, 37, 38, 39, 40, - 41, 42, 420, 163, 164, 165, 43, 44, 45, 46, - 47, 48, 49, 163, 164, 165, 183, 297, 152, 153, - 50, 184, 185, 186, 187, 0, 0, 188, 0, 387, - 0, 0, 51, 52, 53, 0, 0, -3, 79, 388, - 54, 55, 0, 0, 56, 94, 77, 0, 16, 0, - 17, 18, 19, 20, 21, 22, 23, 80, 0, 0, - 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, - 33, 34, 81, 99, 82, 83, 35, 84, 85, 86, - 87, 88, 89, 163, 164, 165, 90, 91, 92, 93, - 36, 0, 37, 38, 39, 40, 41, 42, 163, 164, - 165, 0, 43, 44, 45, 46, 47, 48, 49, 389, - 0, 0, 77, 0, 0, 0, 50, 0, 19, 0, - 0, 341, 0, 0, 396, 0, 109, 0, 51, 52, - 53, 110, 0, 0, 79, 0, 54, 55, 0, 0, - 56, 94, 77, 358, 16, 0, 17, 18, 19, 20, - 21, 22, 23, 80, 0, 0, 24, 25, 26, 27, - 28, 0, 29, 30, 31, 32, 33, 34, 81, 99, - 82, 83, 35, 84, 85, 86, 87, 88, 89, 0, - 0, 0, 90, 91, 92, 93, 36, 0, 37, 38, - 39, 40, 41, 42, 0, 0, 0, 0, 43, 44, - 45, 46, 47, 48, 49, -237, -237, -237, 183, 0, - 188, 0, 50, 184, 185, 186, 187, 0, 0, 188, - 0, 0, 0, 0, 51, 52, 53, 0, 0, 0, - 79, 0, 54, 55, 0, 0, 56, 94, 77, 452, - 16, 0, 17, 18, 19, 20, 21, 22, 23, 80, - 0, 0, 24, 25, 26, 27, 28, 0, 29, 30, - 31, 32, 33, 34, 81, 99, 82, 83, 35, 84, - 85, 86, 87, 88, 89, 0, 0, 0, 90, 91, - 92, 93, 36, 0, 37, 38, 39, 40, 41, 42, - 0, 0, 0, 0, 43, 44, 45, 46, 47, 48, - 49, 184, 185, 186, 187, 0, 0, 188, 50, 1, - 2, 3, 4, 5, 6, 0, 0, 0, 0, 0, - 51, 52, 53, 0, 0, 0, 79, 0, 54, 55, - 0, 0, 56, 94, 77, 464, 16, 0, 17, 18, - 19, 20, 21, 22, 23, 80, 0, 0, 24, 25, - 26, 27, 28, 0, 29, 30, 31, 32, 33, 34, - 81, 99, 82, 83, 35, 84, 85, 86, 87, 88, - 89, 0, 0, 0, 90, 91, 92, 93, 36, 0, - 37, 38, 39, 40, 41, 42, 0, 0, 0, 0, - 43, 44, 45, 46, 47, 48, 49, 0, 0, 0, - 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 51, 52, 53, 0, - 0, 0, 79, 0, 54, 55, 0, 0, 56, 94, - 77, 0, 16, 0, 17, 18, 19, 20, 21, 22, - 23, 80, 0, 0, 24, 25, 26, 27, 28, 0, - 29, 30, 31, 32, 33, 34, 81, 99, 82, 83, - 35, 84, 85, 86, 87, 88, 89, 0, 0, 0, - 90, 91, 92, 93, 36, 0, 37, 38, 39, 40, - 41, 42, 0, 0, 0, 0, 43, 44, 45, 46, - 47, 48, 49, 0, 0, 476, 0, 0, 0, 0, - 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 51, 52, 53, 0, 0, 0, 79, 0, - 54, 55, 0, 0, 56, 94, 77, 0, 16, 0, - 17, 18, 19, 20, 21, 22, 23, 80, 0, 0, - 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, - 33, 34, 81, 99, 82, 83, 35, 84, 85, 86, - 87, 88, 89, 0, 0, 0, 90, 91, 92, 93, - 36, 0, 37, 38, 39, 40, 41, 42, 0, 0, - 0, 0, 43, 44, 45, 46, 47, 48, 49, 0, - 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 51, 52, - 53, 0, 0, 0, 79, 0, 54, 55, 0, 0, - 56, 94, 77, 0, 16, 0, 17, 18, 19, 20, - 21, 22, 23, 80, 0, 0, 24, 25, 26, 27, - 28, 0, 29, 30, 31, 32, 33, 34, 81, 0, - 82, 83, 35, 84, 85, 86, 87, 88, 89, 0, - 0, 0, 90, 91, 92, 93, 36, 0, 37, 38, - 39, 40, 41, 42, 0, 0, 0, 0, 43, 44, - 45, 46, 47, 48, 49, 0, 0, 0, 0, 0, - 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 51, 52, 53, 0, 79, 0, - 0, 0, 54, 55, 0, 0, 56, 94, 16, 0, - 17, 18, 19, 20, 21, 22, 23, -68, 0, 0, - 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, - 33, 34, 0, 0, 0, 0, 35, 0, 0, -237, - 0, 0, 0, 0, 0, 0, 171, 172, 173, 174, - 36, 0, 37, 38, 39, 40, 41, 42, 0, 0, - 0, 0, 43, 44, 45, 46, 47, 48, 49, 177, - 178, 179, 180, 181, 182, 183, 50, 0, 0, 0, - 184, 185, 186, 187, 0, 0, 188, 0, 51, 52, - 53, 79, 0, 0, 0, 0, 54, 55, 173, 174, - 56, 16, 0, 17, 18, 19, 20, 21, 22, 23, - 0, 0, 0, 24, 25, 26, 27, 28, 0, 29, - 30, 31, 32, 33, 34, 183, 0, 0, 0, 35, - 184, 185, 186, 187, 0, 0, 188, 0, 0, 0, - 0, 0, 0, 36, 0, 37, 38, 39, 40, 41, - 42, 0, 0, -170, 0, 43, 44, 45, 46, 47, - 48, 49, 190, 0, 191, -170, 0, 0, 0, 50, - 0, 0, 0, -170, 0, 0, 0, 0, 0, 0, - 0, 51, 52, 53, 171, -237, 173, 174, 0, 54, - 55, 0, -68, 56, 0, -170, -170, -170, -170, 0, - 0, 0, -170, 0, -170, 0, 0, -170, 0, 0, - 0, 0, 182, 183, -170, -170, -170, -170, 184, 185, - 186, 187, 0, 0, 188, 0, 0, 0, 0, -170, - -170, -170, -209, -170, -170, -170, -170, -170, -170, -170, - -170, -170, -170, -170, -209, 0, 0, 0, -170, -170, - -170, -170, -209, 0, -170, -170, 0, 0, 0, 0, - 0, 0, 0, 171, 172, 173, 174, 0, 0, 0, - 0, 0, 0, 0, -209, -209, -209, -209, 0, 0, - 0, -209, 0, -209, 0, 0, -209, 0, 0, 0, - 0, 182, 183, -209, -209, -209, -209, 184, 185, 186, - 187, 0, 0, 188, 0, 0, 0, 0, -209, -209, - -209, 0, -209, -209, -209, -209, -209, -209, -209, -209, - -209, -209, -209, 0, 0, 0, 0, -209, -209, -209, - -209, 0, 0, -209, -209, 77, 0, 16, 0, 17, - 18, 19, 20, 21, 22, 23, 0, 0, 0, 132, - 25, 26, 27, 28, 110, 29, 30, 31, 32, 33, - 34, 0, 0, 0, 0, 35, 0, 0, 0, 0, - 0, 0, -237, 0, 173, 174, 0, 0, 0, 36, + 78, 95, 95, 104, 133, 365, 222, 96, 163, 233, + 57, 367, 152, 371, 372, 77, 413, 106, 268, 164, + 269, 165, 435, 19, 270, 271, 272, 273, 274, 121, + 374, 130, 238, 275, 138, 450, 112, 112, 112, 112, + 112, 451, 112, 112, 432, 433, 141, 194, 14, 114, + 115, 116, 117, 221, 118, 119, 437, 159, 448, 135, + 112, 19, 20, 21, 353, 148, 122, 442, 443, 466, + 127, 136, 137, 163, 276, 354, 314, 449, 203, 327, + 133, 402, 142, 208, 128, 455, 343, 143, 77, 95, + 345, -232, 129, 95, 95, 219, 193, 186, 235, 424, + 197, 107, 108, 312, 236, 199, 133, 205, 200, 209, + 417, 204, 277, 166, 227, 347, 123, 160, 161, 162, + 126, 187, 225, 188, -228, 131, -228, 237, 139, 232, + 57, 145, 379, 151, 201, 153, 154, 155, 156, 157, + 160, 161, 162, 160, 161, 162, 135, 240, 326, 146, + 160, 161, 162, 365, 160, 161, 162, 454, 234, 202, + 206, 245, 246, 247, 384, 249, 250, 252, 405, 295, + 296, 297, 298, 299, 300, 207, 302, 303, 211, 160, + 161, 162, 289, 160, 161, 162, 313, 281, 282, 283, + 284, 285, 286, 287, 288, 223, 160, 161, 162, 304, + 224, 226, 279, 375, 160, 161, 162, -233, -233, -233, + 342, 228, 185, 305, 307, 308, 309, 310, 311, 230, + 386, 160, 161, 162, 57, -230, 241, -230, 160, 161, + 162, 243, 160, 161, 162, 320, 189, 344, 190, 181, + 182, 183, 184, 301, 324, 185, 290, 248, 160, 161, + 162, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 160, 161, 162, 330, + 331, 370, 346, 293, 244, 348, 316, 133, 339, 95, + 319, 325, 411, 212, 213, 214, 215, 112, 383, 191, + 216, 192, 217, 160, 161, 162, 357, 307, 360, 307, + 416, 369, 418, 360, 360, 421, 422, 377, 321, 160, + 161, 162, 323, 162, 429, 430, 364, 160, 161, 162, + 391, 333, 439, 393, 334, 335, 380, 336, 160, 161, + 162, 160, 161, 162, 445, 318, 337, 340, 447, 355, + 358, 57, 361, -73, 160, 161, 162, 160, 161, 162, + 167, 350, 19, 373, 376, 77, 133, 168, 169, 170, + 171, 19, 463, 464, 332, 381, 387, 388, 389, 109, + 390, 360, 394, 322, 110, 395, 396, 172, 173, 329, + 174, 175, 176, 177, 178, 179, 180, 168, 169, 170, + 171, 181, 182, 183, 184, 397, 398, 185, 427, 425, + 360, 400, 357, 160, 161, 162, 77, 399, 168, -233, + 170, 171, 19, 382, 178, 179, 180, 95, 401, 444, + 109, 181, 182, 183, 184, 110, 403, 185, 406, 328, + 408, 404, 414, 407, 95, 420, 179, 180, 423, 428, + -13, 79, 181, 182, 183, 184, 462, 360, 185, 77, + 436, 16, 95, 17, 18, 19, 20, 21, 22, 23, + 80, 438, 446, 24, 25, 26, 27, 28, 457, 29, + 30, 31, 32, 33, 34, 81, 99, 82, 83, 35, + 84, 85, 86, 87, 88, 89, 458, 460, 170, 90, + 91, 92, 93, 36, 461, 37, 38, 39, 40, 41, + 42, 100, 160, 161, 162, 43, 44, 45, 46, 47, + 48, 49, 160, 161, 162, 180, 218, 419, 456, 50, + 181, 182, 183, 184, 409, 125, 185, 196, 341, 392, + 292, 51, 52, 53, 149, 150, -3, 79, 378, 54, + 55, 0, 0, 56, 94, 77, 0, 16, 0, 17, + 18, 19, 20, 21, 22, 23, 80, 0, 0, 24, + 25, 26, 27, 28, 0, 29, 30, 31, 32, 33, + 34, 81, 99, 82, 83, 35, 84, 85, 86, 87, + 88, 89, 160, 161, 162, 90, 91, 92, 93, 36, 0, 37, 38, 39, 40, 41, 42, 0, 0, 0, - 0, 43, 44, 45, 46, 47, 48, 49, 0, 0, - 182, 183, 0, 0, 0, 50, 184, 185, 186, 187, - 0, 0, 188, 0, 0, 0, 0, 51, 52, 53, - 0, 0, 0, 0, 0, 54, 55, 0, 77, 56, - 16, 0, 17, 18, 19, 20, 21, 22, 23, 0, - 0, 0, 138, 25, 26, 27, 28, 139, 29, 30, - 31, 32, 33, 34, 0, 0, 0, 0, 35, 215, - 216, 217, 218, 0, 0, 0, 219, 0, 220, 0, - 0, 0, 36, 0, 37, 38, 39, 40, 41, 42, - 0, 0, 0, 0, 43, 44, 45, 46, 47, 48, - 49, 0, 0, 163, 164, 165, 0, 0, 50, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 51, 52, 53, 0, 0, 0, 0, 0, 54, 55, - 0, 77, 56, 16, 0, 17, 18, 19, 20, 21, - 22, 23, 0, 0, 0, 24, 25, 26, 27, 28, - 0, 29, 30, 31, 32, 33, 34, 0, 0, 0, - 0, 35, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 36, 0, 37, 38, 39, + 0, 43, 44, 45, 46, 47, 48, 49, 385, 0, + 0, 180, 0, 0, 0, 50, 181, 182, 183, 184, + 0, 0, 185, 0, 0, 0, 0, 51, 52, 53, + 0, 0, 0, 79, 0, 54, 55, 0, 0, 56, + 94, 77, 349, 16, 0, 17, 18, 19, 20, 21, + 22, 23, 80, 0, 0, 24, 25, 26, 27, 28, + 0, 29, 30, 31, 32, 33, 34, 81, 99, 82, + 83, 35, 84, 85, 86, 87, 88, 89, 0, 0, + 0, 90, 91, 92, 93, 36, 0, 37, 38, 39, 40, 41, 42, 0, 0, 0, 0, 43, 44, 45, - 46, 47, 48, 49, 0, 0, 0, 0, 0, 0, + 46, 47, 48, 49, 1, 2, 3, 4, 5, 6, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 51, 52, 53, 0, 0, 0, 0, - 0, 54, 55, 0, 0, 56, 16, 105, 17, 18, - 19, 20, 21, 22, 23, 0, 0, 0, 24, 25, - 26, 27, 28, 0, 29, 30, 31, 32, 33, 34, - 0, 0, 0, 0, 35, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, - 37, 38, 39, 40, 41, 42, 0, 0, 0, 0, - 43, 44, 45, 46, 47, 48, 49, 0, 0, 0, - 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 51, 52, 53, 0, - 0, 0, 0, 0, 54, 55, 0, 16, 56, 17, - 18, 19, 20, 21, 22, 23, 144, 0, 0, 24, + 0, 0, 0, 51, 52, 53, 0, 0, 0, 79, + 0, 54, 55, 0, 0, 56, 94, 77, 441, 16, + 0, 17, 18, 19, 20, 21, 22, 23, 80, 0, + 0, 24, 25, 26, 27, 28, 0, 29, 30, 31, + 32, 33, 34, 81, 99, 82, 83, 35, 84, 85, + 86, 87, 88, 89, 0, 0, 0, 90, 91, 92, + 93, 36, 0, 37, 38, 39, 40, 41, 42, 0, + 0, 0, 0, 43, 44, 45, 46, 47, 48, 49, + 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, + 52, 53, 0, 0, 0, 79, 0, 54, 55, 0, + 0, 56, 94, 77, 453, 16, 0, 17, 18, 19, + 20, 21, 22, 23, 80, 0, 0, 24, 25, 26, + 27, 28, 0, 29, 30, 31, 32, 33, 34, 81, + 99, 82, 83, 35, 84, 85, 86, 87, 88, 89, + 0, 0, 0, 90, 91, 92, 93, 36, 0, 37, + 38, 39, 40, 41, 42, 0, 0, 0, 0, 43, + 44, 45, 46, 47, 48, 49, 0, 0, 0, 0, + 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 51, 52, 53, 0, 0, + 0, 79, 0, 54, 55, 0, 0, 56, 94, 77, + 0, 16, 0, 17, 18, 19, 20, 21, 22, 23, + 80, 0, 0, 24, 25, 26, 27, 28, 0, 29, + 30, 31, 32, 33, 34, 81, 99, 82, 83, 35, + 84, 85, 86, 87, 88, 89, 0, 0, 0, 90, + 91, 92, 93, 36, 0, 37, 38, 39, 40, 41, + 42, 0, 0, 0, 0, 43, 44, 45, 46, 47, + 48, 49, 0, 0, 465, 0, 0, 0, 0, 50, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 51, 52, 53, 0, 0, 0, 79, 0, 54, + 55, 0, 0, 56, 94, 77, 0, 16, 0, 17, + 18, 19, 20, 21, 22, 23, 80, 0, 0, 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, 33, - 34, 0, 0, 0, 0, 35, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, + 34, 81, 99, 82, 83, 35, 84, 85, 86, 87, + 88, 89, 0, 0, 0, 90, 91, 92, 93, 36, 0, 37, 38, 39, 40, 41, 42, 0, 0, 0, 0, 43, 44, 45, 46, 47, 48, 49, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 52, 53, - 0, 0, 0, 0, 0, 54, 55, 0, 16, 56, - 17, 18, 19, 20, 21, 22, 23, 0, 0, 0, - 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, - 33, 34, 0, 0, 0, 0, 35, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 36, 0, 37, 38, 39, 40, 41, 42, 0, 0, - 0, 0, 43, 44, 45, 46, 47, 48, 49, 0, - 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 51, 52, - 53, 0, 0, 0, 0, 0, 54, 55, 0, 161, - 56, 16, 0, 17, 18, 19, 20, 21, 22, 23, - 0, 0, 0, 24, 25, 26, 27, 28, 0, 29, - 30, 31, 32, 33, 34, 0, 0, 0, 0, 35, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 36, 0, 37, 38, 39, 40, 41, - 42, 0, 0, 0, 0, 43, 44, 45, 46, 47, - 48, 49, 0, 0, 0, 0, 0, 0, 0, 50, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 51, 52, 53, 0, 0, 0, 0, 0, 54, - 55, 0, 234, 56, 16, 0, 17, 18, 19, 20, + 0, 0, 0, 79, 0, 54, 55, 0, 0, 56, + 94, 77, 0, 16, 0, 17, 18, 19, 20, 21, + 22, 23, 80, 0, 0, 24, 25, 26, 27, 28, + 0, 29, 30, 31, 32, 33, 34, 81, 0, 82, + 83, 35, 84, 85, 86, 87, 88, 89, 0, 0, + 0, 90, 91, 92, 93, 36, 0, 37, 38, 39, + 40, 41, 42, 0, 0, 0, 0, 43, 44, 45, + 46, 47, 48, 49, 0, 0, 0, 0, 0, 0, + 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 51, 52, 53, 0, 79, 0, 0, + 0, 54, 55, 0, 0, 56, 94, 16, 0, 17, + 18, 19, 20, 21, 22, 23, -68, 0, 0, 24, + 25, 26, 27, 28, 0, 29, 30, 31, 32, 33, + 34, 0, 0, 0, 0, 35, 0, 0, -233, 0, + 0, 0, 0, 0, 0, 168, 169, 170, 171, 36, + 0, 37, 38, 39, 40, 41, 42, 0, 0, 0, + 0, 43, 44, 45, 46, 47, 48, 49, 174, 175, + 176, 177, 178, 179, 180, 50, 0, 0, 0, 181, + 182, 183, 184, 0, 0, 185, 0, 51, 52, 53, + 79, 0, 0, 0, 0, 54, 55, 170, 171, 56, + 16, 0, 17, 18, 19, 20, 21, 22, 23, 0, + 0, 0, 24, 25, 26, 27, 28, 0, 29, 30, + 31, 32, 33, 34, 180, 0, 0, 0, 35, 181, + 182, 183, 184, 0, 0, 185, 0, 0, 0, 0, + 0, 0, 36, 0, 37, 38, 39, 40, 41, 42, + 0, 0, -166, 0, 43, 44, 45, 46, 47, 48, + 49, 187, 0, 188, -166, 0, 0, 0, 50, 0, + 0, 0, -166, 0, 0, 0, 0, 0, 0, 0, + 51, 52, 53, 168, 169, 170, 171, 0, 54, 55, + 0, -68, 56, 0, -166, -166, -166, -166, 0, 0, + 0, -166, 0, -166, 0, 0, -166, 0, 176, 177, + 178, 179, 180, -166, -166, -166, -166, 181, 182, 183, + 184, 0, 0, 185, 0, 0, 0, 0, -166, -166, + -166, -205, -166, -166, -166, -166, -166, -166, -166, -166, + -166, -166, -166, -205, 0, 0, 0, -166, -166, -166, + -166, -205, 0, -166, -166, 0, 0, 0, 0, 0, + 0, 0, 168, 169, 170, 171, 0, 0, 0, 0, + 0, 0, 0, -205, -205, -205, -205, 0, 0, 0, + -205, 0, -205, 0, 0, -205, 0, 0, 177, 178, + 179, 180, -205, -205, -205, -205, 181, 182, 183, 184, + 0, 0, 185, 0, 0, 0, 0, -205, -205, -205, + 0, -205, -205, -205, -205, -205, -205, -205, -205, -205, + -205, -205, 0, 0, 0, 0, -205, -205, -205, -205, + 0, 0, -205, -205, 77, 0, 16, 0, 17, 18, + 19, 20, 21, 22, 23, 0, 0, 0, 132, 25, + 26, 27, 28, 110, 29, 30, 31, 32, 33, 34, + 0, 0, 0, 0, 35, 0, 0, 0, 0, 0, + 0, 168, 169, 170, 171, 0, 0, 0, 36, 0, + 37, 38, 39, 40, 41, 42, 0, 0, 0, 0, + 43, 44, 45, 46, 47, 48, 49, 0, 0, 179, + 180, 0, 0, 0, 50, 181, 182, 183, 184, 0, + 0, 185, 0, 0, 0, 0, 51, 52, 53, 0, + 0, 0, 0, 0, 54, 55, 0, 77, 56, 16, + 0, 17, 18, 19, 20, 21, 22, 23, 0, 0, + 0, 24, 25, 26, 27, 28, 0, 29, 30, 31, + 32, 33, 34, 0, 0, 0, 0, 35, 0, 0, + 0, 0, 0, 0, -233, 0, 170, 171, 0, 0, + 0, 36, 0, 37, 38, 39, 40, 41, 42, 0, + 0, 0, 0, 43, 44, 45, 46, 47, 48, 49, + 0, 0, 179, 180, 0, 0, 0, 50, 181, 182, + 183, 184, 0, 0, 185, 0, 0, 0, 0, 51, + 52, 53, 0, 0, 0, 0, 0, 54, 55, 0, + 0, 56, 16, 105, 17, 18, 19, 20, 21, 22, + 23, 0, 0, 0, 24, 25, 26, 27, 28, 0, + 29, 30, 31, 32, 33, 34, 0, 0, 0, 0, + 35, 0, 0, 0, 0, 0, 0, 0, 0, 170, + 171, 0, 0, 0, 36, 0, 37, 38, 39, 40, + 41, 42, 0, 0, 0, 0, 43, 44, 45, 46, + 47, 48, 49, 0, 0, 179, 180, 0, 0, 0, + 50, 181, 182, 183, 184, 0, 0, 185, 0, 0, + 0, 0, 51, 52, 53, 0, 0, 0, 0, 0, + 54, 55, 0, 16, 56, 17, 18, 19, 20, 21, + 22, 23, 140, 0, 0, 24, 25, 26, 27, 28, + 0, 29, 30, 31, 32, 33, 34, 0, 0, 0, + 0, 35, 212, 213, 214, 215, 0, 0, 0, 216, + 0, 217, 0, 0, 0, 36, 0, 37, 38, 39, + 40, 41, 42, 0, 0, 0, 0, 43, 44, 45, + 46, 47, 48, 49, 0, 0, 160, 161, 162, 0, + 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 51, 52, 53, 0, 0, 0, 0, + 0, 54, 55, 0, 16, 56, 17, 18, 19, 20, 21, 22, 23, 0, 0, 0, 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, 33, 34, 0, 0, 0, 0, 35, 0, 0, 0, 0, 0, 0, 0, @@ -697,7 +660,7 @@ static const yytype_int16 yytable[] = 45, 46, 47, 48, 49, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 52, 53, 0, 0, 0, - 0, 0, 54, 55, 0, 244, 56, 16, 0, 17, + 0, 0, 54, 55, 0, 158, 56, 16, 0, 17, 18, 19, 20, 21, 22, 23, 0, 0, 0, 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, 33, 34, 0, 0, 0, 0, 35, 0, 0, 0, 0, @@ -706,7 +669,7 @@ static const yytype_int16 yytable[] = 0, 43, 44, 45, 46, 47, 48, 49, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 52, 53, - 0, 0, 0, 0, 0, 54, 55, 0, 256, 56, + 0, 0, 0, 0, 0, 54, 55, 0, 231, 56, 16, 0, 17, 18, 19, 20, 21, 22, 23, 0, 0, 0, 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, 33, 34, 0, 0, 0, 0, 35, 0, @@ -716,7 +679,7 @@ static const yytype_int16 yytable[] = 49, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 52, 53, 0, 0, 0, 0, 0, 54, 55, - 0, 285, 56, 16, 0, 17, 18, 19, 20, 21, + 0, 239, 56, 16, 0, 17, 18, 19, 20, 21, 22, 23, 0, 0, 0, 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, 33, 34, 0, 0, 0, 0, 35, 0, 0, 0, 0, 0, 0, 0, 0, @@ -725,7 +688,7 @@ static const yytype_int16 yytable[] = 46, 47, 48, 49, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 52, 53, 0, 0, 0, 0, - 0, 54, 55, 0, 326, 56, 16, 0, 17, 18, + 0, 54, 55, 0, 251, 56, 16, 0, 17, 18, 19, 20, 21, 22, 23, 0, 0, 0, 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, 33, 34, 0, 0, 0, 0, 35, 0, 0, 0, 0, 0, @@ -734,7 +697,7 @@ static const yytype_int16 yytable[] = 43, 44, 45, 46, 47, 48, 49, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 52, 53, 0, - 0, 0, 0, 0, 54, 55, 0, 328, 56, 16, + 0, 0, 0, 0, 54, 55, 0, 280, 56, 16, 0, 17, 18, 19, 20, 21, 22, 23, 0, 0, 0, 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, 33, 34, 0, 0, 0, 0, 35, 0, 0, @@ -744,252 +707,224 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 52, 53, 0, 0, 0, 0, 0, 54, 55, 0, - 347, 56, 16, 0, 17, 18, 19, 20, 21, 22, + 338, 56, 16, 0, 17, 18, 19, 20, 21, 22, 23, 0, 0, 0, 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, 33, 34, 0, 0, 0, 0, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 0, 37, 38, 39, 40, 41, 42, 0, 0, 0, 0, 43, 44, 45, 46, - 47, 48, 49, 0, 0, 0, 0, 0, 170, 0, - 50, 0, 0, 0, 0, 171, 172, 173, 174, 0, + 47, 48, 49, 0, 0, 167, 0, 0, 0, 0, + 50, 0, 168, 169, 170, 171, 0, 0, 0, 0, 0, 0, 51, 52, 53, 0, 0, 0, 0, 0, - 54, 55, 0, 0, 56, 175, 176, 338, 177, 178, - 179, 180, 181, 182, 183, 0, 0, 0, 0, 184, - 185, 186, 187, 170, 0, 188, 0, 0, 0, 0, - 171, 172, 173, 174, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 175, 176, 0, 177, 178, 179, 180, 181, 182, 183, - 0, 0, 0, 0, 184, 185, 186, 187, 170, 0, - 188, 0, 0, 0, 0, 171, 172, 173, 174, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 176, 0, 177, 178, - 179, 180, 181, 182, 183, 0, 0, 0, 0, 184, - 185, 186, 187, 0, 0, 188 + 54, 55, 172, 173, 56, 174, 175, 176, 177, 178, + 179, 180, 0, 0, 0, 0, 181, 182, 183, 184, + 167, 0, 185, 0, 0, 0, 0, 168, 169, 170, + 171, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 173, 0, + 174, 175, 176, 177, 178, 179, 180, 0, 0, 0, + 0, 181, 182, 183, 184, 0, 0, 185 }; +#define yypact_value_is_default(Yystate) \ + (!!((Yystate) == (-395))) + +#define yytable_value_is_error(Yytable_value) \ + (!!((Yytable_value) == (-233))) + static const yytype_int16 yycheck[] = { - 10, 11, 12, 15, 42, 305, 118, 12, 129, 9, - 9, 11, 50, 407, 9, 77, 11, 16, 15, 16, - 17, 305, 15, 307, 308, 11, 46, 427, 20, 80, - 9, 41, 9, 429, 44, 147, 19, 20, 21, 22, - 23, 20, 25, 26, 440, 441, 45, 20, 21, 22, - 23, 102, 25, 26, 450, 449, 9, 56, 20, 42, - 43, 44, 458, 83, 26, 48, 9, 20, 11, 42, - 43, 76, 77, 78, 474, 11, 23, 70, 46, 47, - 118, 28, 0, 93, 76, 77, 78, 12, 9, 99, - 11, 80, 103, 103, 104, 379, 103, 12, 136, 103, - 103, 17, 18, 103, 9, 226, 103, 90, 103, 147, - 103, 12, 103, 99, 124, 12, 32, 9, 12, 11, - 36, 9, 121, 11, 9, 41, 410, 23, 44, 128, - 129, 47, 103, 49, 12, 51, 52, 53, 54, 55, - 202, 203, 204, 205, 206, 207, 129, 209, 210, 12, - 149, 76, 77, 78, 20, 9, 129, 11, 301, 459, - 303, 76, 77, 78, 163, 164, 165, 48, 167, 168, - 169, 12, 103, 457, 103, 76, 77, 78, 20, 76, - 77, 78, 76, 77, 78, 197, 76, 77, 78, 227, - 189, 190, 191, 192, 193, 194, 195, 196, 76, 77, - 78, 103, 212, 103, 103, 188, 26, 102, 320, 102, - 76, 77, 78, 76, 77, 78, 215, 216, 217, 218, - 219, 220, 10, 103, 9, 72, 11, 226, 349, 20, - 15, 16, 17, 18, 19, 76, 77, 78, 237, 24, - 239, 240, 103, 103, 306, 76, 77, 78, 103, 248, - 166, 76, 77, 78, 170, 171, 172, 173, 174, 175, - 176, 177, 178, 179, 180, 181, 182, 183, 184, 11, - 23, 102, 23, 103, 273, 274, 72, 102, 102, 10, - 65, 20, 320, 282, 294, 76, 77, 78, 26, 78, - 20, 18, 275, 405, 11, 20, 103, 359, 20, 18, - 362, 300, 301, 302, 303, 18, 305, 18, 307, 308, - 18, 409, 322, 411, 21, 15, 414, 415, 103, 102, - 23, 304, 10, 10, 26, 423, 424, 42, 43, 44, - 45, 10, 10, 431, 49, 334, 51, 76, 77, 78, - 10, 61, 62, 63, 64, 443, 76, 77, 78, 447, - 349, 76, 77, 78, 76, 77, 78, 61, 62, 63, - 64, 76, 77, 78, 76, 77, 78, 405, 88, 89, - 90, 23, 10, 471, 472, 95, 96, 97, 98, 102, - 379, 101, 86, 87, 88, 89, 90, 102, 102, 20, - 102, 95, 96, 97, 98, 20, 102, 101, 61, 62, - 63, 64, 103, 76, 77, 78, 102, 102, 102, 421, - 420, 410, 102, 412, 9, 63, 64, 76, 77, 78, - 102, 102, 338, 74, 87, 88, 89, 90, 438, 102, - 442, 20, 95, 96, 97, 98, 102, 20, 101, 103, - 9, 89, 90, 102, 22, 455, 15, 95, 96, 97, - 98, 0, 1, 101, 23, 73, 102, 469, 457, 28, - 9, 102, 11, 473, 13, 14, 15, 16, 17, 18, - 19, 20, 12, 99, 23, 24, 25, 26, 27, 412, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 35, 459, 63, - 49, 50, 51, 52, 53, 361, 55, 56, 57, 58, - 59, 60, 403, 76, 77, 78, 65, 66, 67, 68, - 69, 70, 71, 76, 77, 78, 90, 199, 48, 48, - 79, 95, 96, 97, 98, -1, -1, 101, -1, 102, - -1, -1, 91, 92, 93, -1, -1, 0, 1, 102, - 99, 100, -1, -1, 103, 104, 9, -1, 11, -1, - 13, 14, 15, 16, 17, 18, 19, 20, -1, -1, - 23, 24, 25, 26, 27, -1, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 76, 77, 78, 49, 50, 51, 52, - 53, -1, 55, 56, 57, 58, 59, 60, 76, 77, - 78, -1, 65, 66, 67, 68, 69, 70, 71, 102, - -1, -1, 9, -1, -1, -1, 79, -1, 15, -1, - -1, 18, -1, -1, 102, -1, 23, -1, 91, 92, - 93, 28, -1, -1, 1, -1, 99, 100, -1, -1, - 103, 104, 9, 10, 11, -1, 13, 14, 15, 16, - 17, 18, 19, 20, -1, -1, 23, 24, 25, 26, - 27, -1, 29, 30, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, -1, - -1, -1, 49, 50, 51, 52, 53, -1, 55, 56, - 57, 58, 59, 60, -1, -1, -1, -1, 65, 66, - 67, 68, 69, 70, 71, 96, 97, 98, 90, -1, - 101, -1, 79, 95, 96, 97, 98, -1, -1, 101, - -1, -1, -1, -1, 91, 92, 93, -1, -1, -1, - 1, -1, 99, 100, -1, -1, 103, 104, 9, 10, - 11, -1, 13, 14, 15, 16, 17, 18, 19, 20, - -1, -1, 23, 24, 25, 26, 27, -1, 29, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, -1, -1, -1, 49, 50, - 51, 52, 53, -1, 55, 56, 57, 58, 59, 60, - -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, - 71, 95, 96, 97, 98, -1, -1, 101, 79, 3, - 4, 5, 6, 7, 8, -1, -1, -1, -1, -1, - 91, 92, 93, -1, -1, -1, 1, -1, 99, 100, - -1, -1, 103, 104, 9, 10, 11, -1, 13, 14, - 15, 16, 17, 18, 19, 20, -1, -1, 23, 24, - 25, 26, 27, -1, 29, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, -1, -1, -1, 49, 50, 51, 52, 53, -1, - 55, 56, 57, 58, 59, 60, -1, -1, -1, -1, - 65, 66, 67, 68, 69, 70, 71, -1, -1, -1, - -1, -1, -1, -1, 79, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 91, 92, 93, -1, - -1, -1, 1, -1, 99, 100, -1, -1, 103, 104, - 9, -1, 11, -1, 13, 14, 15, 16, 17, 18, - 19, 20, -1, -1, 23, 24, 25, 26, 27, -1, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, -1, -1, -1, - 49, 50, 51, 52, 53, -1, 55, 56, 57, 58, - 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, - 69, 70, 71, -1, -1, 74, -1, -1, -1, -1, - 79, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 91, 92, 93, -1, -1, -1, 1, -1, - 99, 100, -1, -1, 103, 104, 9, -1, 11, -1, - 13, 14, 15, 16, 17, 18, 19, 20, -1, -1, - 23, 24, 25, 26, 27, -1, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, -1, -1, -1, 49, 50, 51, 52, - 53, -1, 55, 56, 57, 58, 59, 60, -1, -1, - -1, -1, 65, 66, 67, 68, 69, 70, 71, -1, - -1, -1, -1, -1, -1, -1, 79, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 91, 92, - 93, -1, -1, -1, 1, -1, 99, 100, -1, -1, - 103, 104, 9, -1, 11, -1, 13, 14, 15, 16, - 17, 18, 19, 20, -1, -1, 23, 24, 25, 26, - 27, -1, 29, 30, 31, 32, 33, 34, 35, -1, - 37, 38, 39, 40, 41, 42, 43, 44, 45, -1, - -1, -1, 49, 50, 51, 52, 53, -1, 55, 56, - 57, 58, 59, 60, -1, -1, -1, -1, 65, 66, - 67, 68, 69, 70, 71, -1, -1, -1, -1, -1, - -1, -1, 79, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 91, 92, 93, -1, 1, -1, - -1, -1, 99, 100, -1, -1, 103, 104, 11, -1, - 13, 14, 15, 16, 17, 18, 19, 20, -1, -1, - 23, 24, 25, 26, 27, -1, 29, 30, 31, 32, - 33, 34, -1, -1, -1, -1, 39, -1, -1, 54, - -1, -1, -1, -1, -1, -1, 61, 62, 63, 64, - 53, -1, 55, 56, 57, 58, 59, 60, -1, -1, - -1, -1, 65, 66, 67, 68, 69, 70, 71, 84, - 85, 86, 87, 88, 89, 90, 79, -1, -1, -1, - 95, 96, 97, 98, -1, -1, 101, -1, 91, 92, - 93, 1, -1, -1, -1, -1, 99, 100, 63, 64, - 103, 11, -1, 13, 14, 15, 16, 17, 18, 19, - -1, -1, -1, 23, 24, 25, 26, 27, -1, 29, - 30, 31, 32, 33, 34, 90, -1, -1, -1, 39, - 95, 96, 97, 98, -1, -1, 101, -1, -1, -1, - -1, -1, -1, 53, -1, 55, 56, 57, 58, 59, - 60, -1, -1, 0, -1, 65, 66, 67, 68, 69, - 70, 71, 9, -1, 11, 12, -1, -1, -1, 79, - -1, -1, -1, 20, -1, -1, -1, -1, -1, -1, - -1, 91, 92, 93, 61, 62, 63, 64, -1, 99, - 100, -1, 102, 103, -1, 42, 43, 44, 45, -1, - -1, -1, 49, -1, 51, -1, -1, 54, -1, -1, - -1, -1, 89, 90, 61, 62, 63, 64, 95, 96, - 97, 98, -1, -1, 101, -1, -1, -1, -1, 76, - 77, 78, 0, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 12, -1, -1, -1, 95, 96, - 97, 98, 20, -1, 101, 102, -1, -1, -1, -1, - -1, -1, -1, 61, 62, 63, 64, -1, -1, -1, - -1, -1, -1, -1, 42, 43, 44, 45, -1, -1, - -1, 49, -1, 51, -1, -1, 54, -1, -1, -1, - -1, 89, 90, 61, 62, 63, 64, 95, 96, 97, - 98, -1, -1, 101, -1, -1, -1, -1, 76, 77, - 78, -1, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, -1, -1, -1, -1, 95, 96, 97, - 98, -1, -1, 101, 102, 9, -1, 11, -1, 13, - 14, 15, 16, 17, 18, 19, -1, -1, -1, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, -1, -1, -1, -1, 39, -1, -1, -1, -1, - -1, -1, 61, -1, 63, 64, -1, -1, -1, 53, + 10, 11, 12, 15, 42, 300, 118, 11, 80, 129, + 9, 300, 50, 302, 303, 9, 396, 16, 9, 9, + 11, 11, 416, 15, 15, 16, 17, 18, 19, 11, + 102, 41, 144, 24, 44, 20, 19, 20, 21, 22, + 23, 26, 25, 26, 46, 47, 45, 77, 0, 20, + 21, 22, 23, 12, 25, 26, 418, 56, 438, 42, + 43, 15, 16, 17, 9, 48, 103, 429, 430, 463, + 103, 42, 43, 80, 65, 20, 12, 439, 70, 12, + 118, 370, 23, 93, 103, 447, 12, 28, 9, 99, + 12, 9, 103, 103, 104, 99, 9, 103, 136, 20, + 23, 17, 18, 223, 10, 103, 144, 90, 103, 48, + 399, 103, 103, 103, 124, 12, 32, 76, 77, 78, + 36, 9, 121, 11, 9, 41, 11, 20, 44, 128, + 129, 47, 12, 49, 103, 51, 52, 53, 54, 55, + 76, 77, 78, 76, 77, 78, 129, 146, 20, 103, + 76, 77, 78, 448, 76, 77, 78, 446, 129, 103, + 103, 160, 161, 162, 12, 164, 165, 166, 12, 199, + 200, 201, 202, 203, 204, 103, 206, 207, 20, 76, + 77, 78, 194, 76, 77, 78, 224, 186, 187, 188, + 189, 190, 191, 192, 193, 103, 76, 77, 78, 209, + 103, 102, 185, 315, 76, 77, 78, 96, 97, 98, + 20, 26, 101, 212, 213, 214, 215, 216, 217, 102, + 340, 76, 77, 78, 223, 9, 72, 11, 76, 77, + 78, 11, 76, 77, 78, 234, 9, 20, 11, 95, + 96, 97, 98, 103, 243, 101, 23, 163, 76, 77, + 78, 167, 168, 169, 170, 171, 172, 173, 174, 175, + 176, 177, 178, 179, 180, 181, 76, 77, 78, 268, + 269, 301, 20, 23, 102, 20, 72, 315, 277, 289, + 102, 11, 394, 42, 43, 44, 45, 270, 20, 9, + 49, 11, 51, 76, 77, 78, 295, 296, 297, 298, + 398, 300, 400, 302, 303, 403, 404, 317, 10, 76, + 77, 78, 26, 78, 412, 413, 299, 76, 77, 78, + 350, 18, 420, 353, 18, 18, 325, 18, 76, 77, + 78, 76, 77, 78, 432, 102, 18, 103, 436, 23, + 296, 340, 298, 102, 76, 77, 78, 76, 77, 78, + 54, 21, 15, 102, 26, 9, 394, 61, 62, 63, + 64, 15, 460, 461, 18, 10, 10, 10, 10, 23, + 10, 370, 23, 102, 28, 102, 102, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, 61, 62, 63, + 64, 95, 96, 97, 98, 102, 102, 101, 410, 409, + 399, 102, 401, 76, 77, 78, 9, 103, 61, 62, + 63, 64, 15, 329, 88, 89, 90, 427, 20, 431, + 23, 95, 96, 97, 98, 28, 102, 101, 10, 102, + 20, 102, 9, 102, 444, 102, 89, 90, 74, 20, + 0, 1, 95, 96, 97, 98, 458, 446, 101, 9, + 102, 11, 462, 13, 14, 15, 16, 17, 18, 19, + 20, 20, 103, 23, 24, 25, 26, 27, 22, 29, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 73, 102, 63, 49, + 50, 51, 52, 53, 102, 55, 56, 57, 58, 59, + 60, 12, 76, 77, 78, 65, 66, 67, 68, 69, + 70, 71, 76, 77, 78, 90, 99, 401, 448, 79, + 95, 96, 97, 98, 392, 35, 101, 83, 102, 352, + 196, 91, 92, 93, 48, 48, 0, 1, 102, 99, + 100, -1, -1, 103, 104, 9, -1, 11, -1, 13, + 14, 15, 16, 17, 18, 19, 20, -1, -1, 23, + 24, 25, 26, 27, -1, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + 44, 45, 76, 77, 78, 49, 50, 51, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, -1, -1, - -1, 65, 66, 67, 68, 69, 70, 71, -1, -1, - 89, 90, -1, -1, -1, 79, 95, 96, 97, 98, + -1, 65, 66, 67, 68, 69, 70, 71, 102, -1, + -1, 90, -1, -1, -1, 79, 95, 96, 97, 98, -1, -1, 101, -1, -1, -1, -1, 91, 92, 93, - -1, -1, -1, -1, -1, 99, 100, -1, 9, 103, - 11, -1, 13, 14, 15, 16, 17, 18, 19, -1, - -1, -1, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 33, 34, -1, -1, -1, -1, 39, 42, - 43, 44, 45, -1, -1, -1, 49, -1, 51, -1, - -1, -1, 53, -1, 55, 56, 57, 58, 59, 60, - -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, - 71, -1, -1, 76, 77, 78, -1, -1, 79, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 91, 92, 93, -1, -1, -1, -1, -1, 99, 100, - -1, 9, 103, 11, -1, 13, 14, 15, 16, 17, - 18, 19, -1, -1, -1, 23, 24, 25, 26, 27, - -1, 29, 30, 31, 32, 33, 34, -1, -1, -1, - -1, 39, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 53, -1, 55, 56, 57, + -1, -1, -1, 1, -1, 99, 100, -1, -1, 103, + 104, 9, 10, 11, -1, 13, 14, 15, 16, 17, + 18, 19, 20, -1, -1, 23, 24, 25, 26, 27, + -1, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, -1, -1, + -1, 49, 50, 51, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, -1, -1, -1, 65, 66, 67, - 68, 69, 70, 71, -1, -1, -1, -1, -1, -1, + 68, 69, 70, 71, 3, 4, 5, 6, 7, 8, -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 91, 92, 93, -1, -1, -1, -1, - -1, 99, 100, -1, -1, 103, 11, 12, 13, 14, - 15, 16, 17, 18, 19, -1, -1, -1, 23, 24, - 25, 26, 27, -1, 29, 30, 31, 32, 33, 34, - -1, -1, -1, -1, 39, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 53, -1, - 55, 56, 57, 58, 59, 60, -1, -1, -1, -1, - 65, 66, 67, 68, 69, 70, 71, -1, -1, -1, - -1, -1, -1, -1, 79, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 91, 92, 93, -1, - -1, -1, -1, -1, 99, 100, -1, 11, 103, 13, + -1, -1, -1, 91, 92, 93, -1, -1, -1, 1, + -1, 99, 100, -1, -1, 103, 104, 9, 10, 11, + -1, 13, 14, 15, 16, 17, 18, 19, 20, -1, + -1, 23, 24, 25, 26, 27, -1, 29, 30, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, -1, -1, -1, 49, 50, 51, + 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, + -1, -1, -1, 65, 66, 67, 68, 69, 70, 71, + -1, -1, -1, -1, -1, -1, -1, 79, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 91, + 92, 93, -1, -1, -1, 1, -1, 99, 100, -1, + -1, 103, 104, 9, 10, 11, -1, 13, 14, 15, + 16, 17, 18, 19, 20, -1, -1, 23, 24, 25, + 26, 27, -1, 29, 30, 31, 32, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + -1, -1, -1, 49, 50, 51, 52, 53, -1, 55, + 56, 57, 58, 59, 60, -1, -1, -1, -1, 65, + 66, 67, 68, 69, 70, 71, -1, -1, -1, -1, + -1, -1, -1, 79, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 91, 92, 93, -1, -1, + -1, 1, -1, 99, 100, -1, -1, 103, 104, 9, + -1, 11, -1, 13, 14, 15, 16, 17, 18, 19, + 20, -1, -1, 23, 24, 25, 26, 27, -1, 29, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, -1, -1, -1, 49, + 50, 51, 52, 53, -1, 55, 56, 57, 58, 59, + 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, + 70, 71, -1, -1, 74, -1, -1, -1, -1, 79, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 91, 92, 93, -1, -1, -1, 1, -1, 99, + 100, -1, -1, 103, 104, 9, -1, 11, -1, 13, 14, 15, 16, 17, 18, 19, 20, -1, -1, 23, 24, 25, 26, 27, -1, 29, 30, 31, 32, 33, - 34, -1, -1, -1, -1, 39, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 53, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + 44, 45, -1, -1, -1, 49, 50, 51, 52, 53, -1, 55, 56, 57, 58, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, 71, -1, -1, -1, -1, -1, -1, -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 91, 92, 93, - -1, -1, -1, -1, -1, 99, 100, -1, 11, 103, - 13, 14, 15, 16, 17, 18, 19, -1, -1, -1, - 23, 24, 25, 26, 27, -1, 29, 30, 31, 32, - 33, 34, -1, -1, -1, -1, 39, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 53, -1, 55, 56, 57, 58, 59, 60, -1, -1, - -1, -1, 65, 66, 67, 68, 69, 70, 71, -1, - -1, -1, -1, -1, -1, -1, 79, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 91, 92, - 93, -1, -1, -1, -1, -1, 99, 100, -1, 102, - 103, 11, -1, 13, 14, 15, 16, 17, 18, 19, - -1, -1, -1, 23, 24, 25, 26, 27, -1, 29, - 30, 31, 32, 33, 34, -1, -1, -1, -1, 39, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 53, -1, 55, 56, 57, 58, 59, - 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, - 70, 71, -1, -1, -1, -1, -1, -1, -1, 79, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 91, 92, 93, -1, -1, -1, -1, -1, 99, - 100, -1, 102, 103, 11, -1, 13, 14, 15, 16, + -1, -1, -1, 1, -1, 99, 100, -1, -1, 103, + 104, 9, -1, 11, -1, 13, 14, 15, 16, 17, + 18, 19, 20, -1, -1, 23, 24, 25, 26, 27, + -1, 29, 30, 31, 32, 33, 34, 35, -1, 37, + 38, 39, 40, 41, 42, 43, 44, 45, -1, -1, + -1, 49, 50, 51, 52, 53, -1, 55, 56, 57, + 58, 59, 60, -1, -1, -1, -1, 65, 66, 67, + 68, 69, 70, 71, -1, -1, -1, -1, -1, -1, + -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 91, 92, 93, -1, 1, -1, -1, + -1, 99, 100, -1, -1, 103, 104, 11, -1, 13, + 14, 15, 16, 17, 18, 19, 20, -1, -1, 23, + 24, 25, 26, 27, -1, 29, 30, 31, 32, 33, + 34, -1, -1, -1, -1, 39, -1, -1, 54, -1, + -1, -1, -1, -1, -1, 61, 62, 63, 64, 53, + -1, 55, 56, 57, 58, 59, 60, -1, -1, -1, + -1, 65, 66, 67, 68, 69, 70, 71, 84, 85, + 86, 87, 88, 89, 90, 79, -1, -1, -1, 95, + 96, 97, 98, -1, -1, 101, -1, 91, 92, 93, + 1, -1, -1, -1, -1, 99, 100, 63, 64, 103, + 11, -1, 13, 14, 15, 16, 17, 18, 19, -1, + -1, -1, 23, 24, 25, 26, 27, -1, 29, 30, + 31, 32, 33, 34, 90, -1, -1, -1, 39, 95, + 96, 97, 98, -1, -1, 101, -1, -1, -1, -1, + -1, -1, 53, -1, 55, 56, 57, 58, 59, 60, + -1, -1, 0, -1, 65, 66, 67, 68, 69, 70, + 71, 9, -1, 11, 12, -1, -1, -1, 79, -1, + -1, -1, 20, -1, -1, -1, -1, -1, -1, -1, + 91, 92, 93, 61, 62, 63, 64, -1, 99, 100, + -1, 102, 103, -1, 42, 43, 44, 45, -1, -1, + -1, 49, -1, 51, -1, -1, 54, -1, 86, 87, + 88, 89, 90, 61, 62, 63, 64, 95, 96, 97, + 98, -1, -1, 101, -1, -1, -1, -1, 76, 77, + 78, 0, 80, 81, 82, 83, 84, 85, 86, 87, + 88, 89, 90, 12, -1, -1, -1, 95, 96, 97, + 98, 20, -1, 101, 102, -1, -1, -1, -1, -1, + -1, -1, 61, 62, 63, 64, -1, -1, -1, -1, + -1, -1, -1, 42, 43, 44, 45, -1, -1, -1, + 49, -1, 51, -1, -1, 54, -1, -1, 87, 88, + 89, 90, 61, 62, 63, 64, 95, 96, 97, 98, + -1, -1, 101, -1, -1, -1, -1, 76, 77, 78, + -1, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, -1, -1, -1, -1, 95, 96, 97, 98, + -1, -1, 101, 102, 9, -1, 11, -1, 13, 14, + 15, 16, 17, 18, 19, -1, -1, -1, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + -1, -1, -1, -1, 39, -1, -1, -1, -1, -1, + -1, 61, 62, 63, 64, -1, -1, -1, 53, -1, + 55, 56, 57, 58, 59, 60, -1, -1, -1, -1, + 65, 66, 67, 68, 69, 70, 71, -1, -1, 89, + 90, -1, -1, -1, 79, 95, 96, 97, 98, -1, + -1, 101, -1, -1, -1, -1, 91, 92, 93, -1, + -1, -1, -1, -1, 99, 100, -1, 9, 103, 11, + -1, 13, 14, 15, 16, 17, 18, 19, -1, -1, + -1, 23, 24, 25, 26, 27, -1, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, 39, -1, -1, + -1, -1, -1, -1, 61, -1, 63, 64, -1, -1, + -1, 53, -1, 55, 56, 57, 58, 59, 60, -1, + -1, -1, -1, 65, 66, 67, 68, 69, 70, 71, + -1, -1, 89, 90, -1, -1, -1, 79, 95, 96, + 97, 98, -1, -1, 101, -1, -1, -1, -1, 91, + 92, 93, -1, -1, -1, -1, -1, 99, 100, -1, + -1, 103, 11, 12, 13, 14, 15, 16, 17, 18, + 19, -1, -1, -1, 23, 24, 25, 26, 27, -1, + 29, 30, 31, 32, 33, 34, -1, -1, -1, -1, + 39, -1, -1, -1, -1, -1, -1, -1, -1, 63, + 64, -1, -1, -1, 53, -1, 55, 56, 57, 58, + 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, + 69, 70, 71, -1, -1, 89, 90, -1, -1, -1, + 79, 95, 96, 97, 98, -1, -1, 101, -1, -1, + -1, -1, 91, 92, 93, -1, -1, -1, -1, -1, + 99, 100, -1, 11, 103, 13, 14, 15, 16, 17, + 18, 19, 20, -1, -1, 23, 24, 25, 26, 27, + -1, 29, 30, 31, 32, 33, 34, -1, -1, -1, + -1, 39, 42, 43, 44, 45, -1, -1, -1, 49, + -1, 51, -1, -1, -1, 53, -1, 55, 56, 57, + 58, 59, 60, -1, -1, -1, -1, 65, 66, 67, + 68, 69, 70, 71, -1, -1, 76, 77, 78, -1, + -1, 79, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 91, 92, 93, -1, -1, -1, -1, + -1, 99, 100, -1, 11, 103, 13, 14, 15, 16, 17, 18, 19, -1, -1, -1, 23, 24, 25, 26, 27, -1, 29, 30, 31, 32, 33, 34, -1, -1, -1, -1, 39, -1, -1, -1, -1, -1, -1, -1, @@ -1051,21 +986,16 @@ static const yytype_int16 yycheck[] = 39, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 53, -1, 55, 56, 57, 58, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, - 69, 70, 71, -1, -1, -1, -1, -1, 54, -1, - 79, -1, -1, -1, -1, 61, 62, 63, 64, -1, + 69, 70, 71, -1, -1, 54, -1, -1, -1, -1, + 79, -1, 61, 62, 63, 64, -1, -1, -1, -1, -1, -1, 91, 92, 93, -1, -1, -1, -1, -1, - 99, 100, -1, -1, 103, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, -1, -1, -1, -1, 95, - 96, 97, 98, 54, -1, 101, -1, -1, -1, -1, - 61, 62, 63, 64, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 81, 82, -1, 84, 85, 86, 87, 88, 89, 90, - -1, -1, -1, -1, 95, 96, 97, 98, 54, -1, - 101, -1, -1, -1, -1, 61, 62, 63, 64, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 82, -1, 84, 85, - 86, 87, 88, 89, 90, -1, -1, -1, -1, 95, - 96, 97, 98, -1, -1, 101 + 99, 100, 81, 82, 103, 84, 85, 86, 87, 88, + 89, 90, -1, -1, -1, -1, 95, 96, 97, 98, + 54, -1, 101, -1, -1, -1, -1, 61, 62, 63, + 64, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 82, -1, + 84, 85, 86, 87, 88, 89, 90, -1, -1, -1, + -1, 95, 96, 97, 98, -1, -1, 101 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -1085,41 +1015,40 @@ static const yytype_uint8 yystos[] = 120, 121, 122, 118, 118, 12, 147, 157, 157, 23, 28, 113, 165, 173, 173, 173, 173, 173, 173, 173, 158, 11, 103, 157, 140, 140, 157, 103, 103, 103, - 113, 157, 23, 148, 161, 165, 173, 173, 23, 28, - 113, 142, 157, 165, 20, 147, 23, 142, 157, 103, - 160, 165, 166, 167, 157, 148, 157, 157, 157, 157, - 157, 102, 147, 76, 77, 78, 80, 9, 11, 103, - 54, 61, 62, 63, 64, 81, 82, 84, 85, 86, - 87, 88, 89, 90, 95, 96, 97, 98, 101, 103, - 9, 11, 9, 11, 9, 11, 9, 115, 141, 142, - 23, 139, 103, 103, 103, 103, 70, 103, 165, 103, - 103, 113, 48, 130, 20, 42, 43, 44, 45, 49, - 51, 121, 122, 120, 12, 161, 103, 103, 147, 102, - 113, 26, 143, 102, 102, 147, 162, 173, 148, 103, - 103, 10, 20, 161, 102, 147, 72, 145, 11, 102, - 147, 147, 147, 157, 147, 147, 102, 147, 157, 157, - 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, - 157, 157, 157, 9, 11, 15, 16, 17, 18, 19, - 24, 65, 103, 151, 165, 102, 147, 147, 147, 147, - 147, 147, 147, 147, 118, 23, 138, 139, 23, 124, - 115, 115, 115, 115, 115, 115, 103, 115, 115, 113, - 147, 134, 147, 147, 147, 147, 147, 162, 148, 12, - 150, 72, 144, 102, 102, 147, 102, 147, 102, 147, - 10, 102, 26, 147, 11, 20, 12, 102, 83, 147, - 147, 18, 18, 18, 18, 18, 18, 102, 147, 103, - 102, 20, 12, 20, 12, 20, 12, 20, 10, 21, - 114, 123, 9, 20, 23, 133, 147, 134, 135, 147, - 134, 137, 163, 165, 128, 132, 135, 136, 147, 115, - 135, 135, 102, 102, 161, 26, 113, 102, 102, 102, - 12, 147, 10, 157, 20, 12, 102, 162, 10, 10, - 10, 10, 115, 143, 115, 23, 102, 102, 102, 102, - 103, 102, 20, 135, 102, 102, 12, 10, 102, 20, - 144, 125, 161, 131, 131, 9, 116, 116, 135, 116, - 133, 102, 116, 116, 74, 20, 113, 146, 118, 20, - 116, 116, 117, 46, 47, 129, 129, 102, 130, 20, - 116, 119, 10, 130, 130, 118, 116, 103, 116, 131, - 130, 20, 26, 126, 10, 135, 130, 136, 22, 73, - 127, 102, 102, 118, 116, 116, 74, 129 + 113, 157, 23, 148, 161, 165, 173, 173, 113, 157, + 20, 147, 23, 28, 142, 157, 103, 160, 165, 166, + 167, 157, 148, 157, 157, 157, 157, 157, 102, 147, + 76, 77, 78, 80, 9, 11, 103, 54, 61, 62, + 63, 64, 81, 82, 84, 85, 86, 87, 88, 89, + 90, 95, 96, 97, 98, 101, 103, 9, 11, 9, + 11, 9, 11, 9, 115, 141, 142, 23, 139, 103, + 103, 103, 103, 70, 103, 165, 103, 103, 113, 48, + 130, 20, 42, 43, 44, 45, 49, 51, 121, 122, + 120, 12, 161, 103, 103, 147, 102, 113, 26, 143, + 102, 102, 147, 162, 173, 148, 10, 20, 161, 102, + 147, 72, 145, 11, 102, 147, 147, 147, 157, 147, + 147, 102, 147, 157, 157, 157, 157, 157, 157, 157, + 157, 157, 157, 157, 157, 157, 157, 157, 9, 11, + 15, 16, 17, 18, 19, 24, 65, 103, 151, 165, + 102, 147, 147, 147, 147, 147, 147, 147, 147, 118, + 23, 138, 139, 23, 124, 115, 115, 115, 115, 115, + 115, 103, 115, 115, 113, 147, 134, 147, 147, 147, + 147, 147, 162, 148, 12, 150, 72, 144, 102, 102, + 147, 10, 102, 26, 147, 11, 20, 12, 102, 83, + 147, 147, 18, 18, 18, 18, 18, 18, 102, 147, + 103, 102, 20, 12, 20, 12, 20, 12, 20, 10, + 21, 114, 123, 9, 20, 23, 133, 147, 134, 135, + 147, 134, 137, 163, 165, 128, 132, 135, 136, 147, + 115, 135, 135, 102, 102, 161, 26, 113, 102, 12, + 147, 10, 157, 20, 12, 102, 162, 10, 10, 10, + 10, 115, 143, 115, 23, 102, 102, 102, 102, 103, + 102, 20, 135, 102, 102, 12, 10, 102, 20, 144, + 125, 161, 131, 131, 9, 116, 116, 135, 116, 133, + 102, 116, 116, 74, 20, 113, 146, 118, 20, 116, + 116, 117, 46, 47, 129, 129, 102, 130, 20, 116, + 119, 10, 130, 130, 118, 116, 103, 116, 131, 130, + 20, 26, 126, 10, 135, 130, 136, 22, 73, 127, + 102, 102, 118, 116, 116, 74, 129 }; typedef enum { @@ -1143,20 +1072,21 @@ static const toketypes yy_type_tab[] = toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, - toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_i_tkval, toketype_ival, toketype_ival, toketype_ival, toketype_ival, - toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_ival, toketype_opval, + toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_i_tkval, toketype_ival, toketype_ival, toketype_ival, + toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_ival, + toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, + toketype_opval, toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, + toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, + toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, - toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, - toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, - toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_opval, + toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, + toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, - toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, - toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, - toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, - toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval + toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, + toketype_opval }; /* Generated from: - * 570608a8d9575266e34e16588de5993f72c5756a88dcb273ffba0705beed3d8b perly.y + * 911fbbcab275e0f9645397ee5b80a7c2384e6b24f793c15e6d6e918ebfd4e384 perly.y * 5c9d2a0262457fe9b70073fc8ad6c188f812f38ad57712b7e2f53daa01b297cc regen_perly.pl * ex: set ro: */ diff --git a/perly.y b/perly.y index b947a17..2d8b599 100644 --- a/perly.y +++ b/perly.y @@ -1120,49 +1120,6 @@ termdo : DO term %prec UNIOP /* do $filename */ { $$ = newUNOP(OP_NULL, OPf_SPECIAL, op_scope($2)); TOKEN_GETMAD($1,$$,'D'); } - | DO subname '(' ')' /* do somesub() */ - { $$ = newUNOP(OP_ENTERSUB, - OPf_SPECIAL|OPf_STACKED, - op_prepend_elem(OP_LIST, - scalar(newCVREF( - (OPpENTERSUB_AMPER<<8), - scalar($2) - )),(OP*)NULL)); dep(); - TOKEN_GETMAD($1,$$,'o'); - TOKEN_GETMAD($3,$$,'('); - TOKEN_GETMAD($4,$$,')'); - } - | DO subname '(' expr ')' /* do somesub(@args) */ - { $$ = newUNOP(OP_ENTERSUB, - OPf_SPECIAL|OPf_STACKED, - op_append_elem(OP_LIST, - $4, - scalar(newCVREF( - (OPpENTERSUB_AMPER<<8), - scalar($2) - )))); dep(); - TOKEN_GETMAD($1,$$,'o'); - TOKEN_GETMAD($3,$$,'('); - TOKEN_GETMAD($5,$$,')'); - } - | DO scalar '(' ')' /* do $subref () */ - { $$ = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED, - op_prepend_elem(OP_LIST, - scalar(newCVREF(0,scalar($2))), (OP*)NULL)); dep(); - TOKEN_GETMAD($1,$$,'o'); - TOKEN_GETMAD($3,$$,'('); - TOKEN_GETMAD($4,$$,')'); - } - | DO scalar '(' expr ')' /* do $subref (@args) */ - { $$ = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED, - op_prepend_elem(OP_LIST, - $4, - scalar(newCVREF(0,scalar($2))))); dep(); - TOKEN_GETMAD($1,$$,'o'); - TOKEN_GETMAD($3,$$,'('); - TOKEN_GETMAD($5,$$,')'); - } - ; term : termbinop diff --git a/pod/perldelta.pod b/pod/perldelta.pod index 5631add..a30c98a 100644 --- a/pod/perldelta.pod +++ b/pod/perldelta.pod @@ -45,6 +45,11 @@ XXX For a release on a stable branch, this section aspires to be: [ List each incompatible change as a =head2 entry ] +=head2 C can no longer be used to call subroutines + +The C form has resulted in a deprecation warning +since Perl v5.0.0, and is now a syntax error. + =head1 Deprecations XXX Any deprecated features, syntax, modules etc. should be listed here. diff --git a/pod/perlfunc.pod b/pod/perlfunc.pod index 0bffdfc..72b7c7d 100644 --- a/pod/perlfunc.pod +++ b/pod/perlfunc.pod @@ -1550,12 +1550,6 @@ C does I count as a loop, so the loop control statements C, C, or C cannot be used to leave or restart the block. See L for alternative strategies. -=item do SUBROUTINE(LIST) -X - -This form of subroutine call is deprecated. SUBROUTINE can be a bareword -or scalar variable. - =item do EXPR X diff --git a/t/lib/warnings/perly b/t/lib/warnings/perly deleted file mode 100644 index c912c0e..0000000 --- a/t/lib/warnings/perly +++ /dev/null @@ -1,30 +0,0 @@ - perly.y AOK - - dep() => deprecate("\"do\" to call subroutines") - Use of "do" to call subroutines is deprecated - - sub fred {} do fred() - sub fred {} do fred(1) - sub fred {} $a = "fred" ; do $a() - sub fred {} $a = "fred" ; do $a(1) - -__END__ -# perly.y -use warnings 'deprecated' ; -sub fred {} -do fred() ; -do fred(1) ; -$a = "fred" ; -do $a() ; -do $a(1) ; -no warnings 'deprecated' ; -do fred() ; -do fred(1) ; -$a = "fred" ; -do $a() ; -do $a(1) ; -EXPECT -Use of "do" to call subroutines is deprecated at - line 4. -Use of "do" to call subroutines is deprecated at - line 5. -Use of "do" to call subroutines is deprecated at - line 7. -Use of "do" to call subroutines is deprecated at - line 8. diff --git a/t/op/do.t b/t/op/do.t index 177f1d2..aab6bbb 100644 --- a/t/op/do.t +++ b/t/op/do.t @@ -8,63 +8,11 @@ BEGIN { use strict; no warnings 'void'; -sub foo1 -{ - ok($_[0], 'in foo1'); - 'value'; -} - -sub foo2 -{ - shift; - ok($_[0], 'in foo2'); - my $x = 'value'; - $x; -} - -my $result; -$_[0] = 0; -{ - no warnings 'deprecated'; - $result = do foo1(1); -} - -is($result, 'value', 'do &sub and proper @_ handling'); -cmp_ok($_[0], '==', 0, 'do &sub and proper @_ handling'); - -$_[0] = 0; -{ - no warnings 'deprecated'; - $result = do foo2(0,1,0); -} -is($result, 'value', 'do &sub and proper @_ handling'); -cmp_ok($_[0], '==', 0, 'do &sub and proper @_ handling'); - my $called; -$result = do{ ++$called; 'value';}; +my $result = do{ ++$called; 'value';}; is($called, 1, 'do block called'); is($result, 'value', 'do block returns correct value'); -my @blathered; -sub blather { - push @blathered, $_ foreach @_; -} - -{ - no warnings 'deprecated'; - do blather("ayep","sho nuff"); - is("@blathered", "ayep sho nuff", 'blathered called with list'); -} -@blathered = (); - -my @x = ("jeepers", "okydoke"); -my @y = ("uhhuh", "yeppers"); -{ - no warnings 'deprecated'; - do blather(@x,"noofie",@y); - is("@blathered", "@x noofie @y", 'blathered called with arrays too'); -} - unshift @INC, '.'; my $file16 = tempfile(); @@ -131,7 +79,7 @@ is($owww, '', 'last is if not'); @a = (7); my $x = sub { do { return do { @a } }; 2 }->(); is($x, 1, 'return do { } receives caller scalar context'); -@x = sub { do { return do { @a } }; 2 }->(); +my @x = sub { do { return do { @a } }; 2 }->(); is("@x", "7", 'return do { } receives caller list context'); @a = (7, 8); @@ -312,4 +260,14 @@ SKIP: { isnt $@, "scrimptious scrobblings", "It was interpreted as do-file"; } +# do subname() and $subname() are no longer allowed +{ + sub subname { fail('do subname('. ($_[0] || '') .') called') }; + my $subref = sub { fail('do $subref('. ($_[0] || '') .') called') }; + foreach my $mode (qw(subname("arg") subname() $subref("arg") $subref())) { + eval "do $mode"; + like $@, qr/\Asyntax error/, "do $mode is syntax error"; + } +} + done_testing(); diff --git a/t/op/lexsub.t b/t/op/lexsub.t index 07bfce5..8c71da0 100644 --- a/t/op/lexsub.t +++ b/t/op/lexsub.t @@ -7,8 +7,7 @@ BEGIN { *bar::is = *is; *bar::like = *like; } -no warnings 'deprecated'; -plan 140; +plan 120; # -------------------- Errors with feature disabled -------------------- # @@ -30,17 +29,14 @@ use feature 'lexical_subs'; our sub foo { 42 } is foo, 42, 'calling our sub from same package'; is &foo, 42, 'calling our sub from same package (amper)'; - is do foo(), 42, 'calling our sub from same package (do)'; package bar; sub bar::foo { 43 } is foo, 42, 'calling our sub from another package'; is &foo, 42, 'calling our sub from another package (amper)'; - is do foo(), 42, 'calling our sub from another package (do)'; } package bar; is foo, 43, 'our sub falling out of scope'; is &foo, 43, 'our sub falling out of scope (called via amper)'; -is do foo(), 43, 'our sub falling out of scope (called via amper)'; package main; { sub bar::a { 43 } @@ -49,7 +45,6 @@ package main; package bar; is a, 43, 'our sub invisible inside itself'; is &a, 43, 'our sub invisible inside itself (called via amper)'; - is do a(), 43, 'our sub invisible inside itself (called via do)'; } 42 } @@ -61,7 +56,6 @@ package main; package bar; is b, 42, 'our sub visible inside itself after decl'; is &b, 42, 'our sub visible inside itself after decl (amper)'; - is do b(), 42, 'our sub visible inside itself after decl (do)'; } 42 } @@ -74,7 +68,6 @@ sub bar::c { 43 } package bar; is c, 42, 'our sub foo; makes lex alias for existing sub'; is &c, 42, 'our sub foo; makes lex alias for existing sub (amper)'; - is do c(), 42, 'our sub foo; makes lex alias for existing sub (do)'; } { our sub d; @@ -104,23 +97,19 @@ use feature 'state'; # state isnt \&::foo, \&foo, 'state sub is not stored in the package'; is eval foo, 44, 'calling state sub from same package'; is eval &foo, 44, 'calling state sub from same package (amper)'; - is eval do foo(), 44, 'calling state sub from same package (do)'; package bar; is eval foo, 44, 'calling state sub from another package'; is eval &foo, 44, 'calling state sub from another package (amper)'; - is eval do foo(), 44, 'calling state sub from another package (do)'; } package bar; is foo, 43, 'state sub falling out of scope'; is &foo, 43, 'state sub falling out of scope (called via amper)'; -is do foo(), 43, 'state sub falling out of scope (called via amper)'; { sub sa { 43 } state sub sa { if (shift) { is sa, 43, 'state sub invisible inside itself'; is &sa, 43, 'state sub invisible inside itself (called via amper)'; - is do sa(), 43, 'state sub invisible inside itself (called via do)'; } 44 } @@ -137,9 +126,6 @@ is do foo(), 43, 'state sub falling out of scope (called via amper)'; eval{&sb}; like $@, qr/^Undefined subroutine &sb called at /, 'state sub foo {} after forward declaration (amper)'; - eval{do sb()}; - like $@, qr/^Undefined subroutine &sb called at /, - 'state sub foo {} after forward declaration (do)'; } 44 } @@ -151,7 +137,6 @@ is do foo(), 43, 'state sub falling out of scope (called via amper)'; package bar; is sb2, 44, 'state sub visible inside itself after decl'; is &sb2, 44, 'state sub visible inside itself after decl (amper)'; - is do sb2(), 44, 'state sub visible inside itself after decl (do)'; } 44 } @@ -187,9 +172,6 @@ sub sc { 43 } eval{&sc}; like $@, qr/^Undefined subroutine &sc called at /, 'state sub foo; makes no lex alias for existing sub (amper)'; - eval{do sc()}; - like $@, qr/^Undefined subroutine &sc called at /, - 'state sub foo; makes no lex alias for existing sub (do)'; } package main; { @@ -339,23 +321,19 @@ like runperl( isnt \&::foo, \&foo, 'my sub is not stored in the package'; is foo, 44, 'calling my sub from same package'; is &foo, 44, 'calling my sub from same package (amper)'; - is do foo(), 44, 'calling my sub from same package (do)'; package bar; is foo, 44, 'calling my sub from another package'; is &foo, 44, 'calling my sub from another package (amper)'; - is do foo(), 44, 'calling my sub from another package (do)'; } package bar; is foo, 43, 'my sub falling out of scope'; is &foo, 43, 'my sub falling out of scope (called via amper)'; -is do foo(), 43, 'my sub falling out of scope (called via amper)'; { sub ma { 43 } my sub ma { if (shift) { is ma, 43, 'my sub invisible inside itself'; is &ma, 43, 'my sub invisible inside itself (called via amper)'; - is do ma(), 43, 'my sub invisible inside itself (called via do)'; } 44 } @@ -372,9 +350,6 @@ is do foo(), 43, 'my sub falling out of scope (called via amper)'; eval{&mb}; like $@, qr/^Undefined subroutine &mb called at /, 'my sub foo {} after forward declaration (amper)'; - eval{do mb()}; - like $@, qr/^Undefined subroutine &mb called at /, - 'my sub foo {} after forward declaration (do)'; } 44 } @@ -386,7 +361,6 @@ is do foo(), 43, 'my sub falling out of scope (called via amper)'; package bar; is mb2, 44, 'my sub visible inside itself after decl'; is &mb2, 44, 'my sub visible inside itself after decl (amper)'; - is do mb2(), 44, 'my sub visible inside itself after decl (do)'; } 44 } @@ -422,9 +396,6 @@ sub mc { 43 } eval{&mc}; like $@, qr/^Undefined subroutine &mc called at /, 'my sub foo; makes no lex alias for existing sub (amper)'; - eval{do mc()}; - like $@, qr/^Undefined subroutine &mc called at /, - 'my sub foo; makes no lex alias for existing sub (do)'; } package main; { -- 2.7.4