4392 lines
188 KiB
Diff
4392 lines
188 KiB
Diff
From 1d1ce7c6bc5cc90b78e8231319dab65f969e7682 Mon Sep 17 00:00:00 2001
|
|
From: Zefram <zefram@fysh.org>
|
|
Date: Tue, 16 Jan 2018 08:04:08 +0000
|
|
Subject: [PATCH] fix parsing of braced subscript after parens
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
Where an arrow is omitted between subscripts, if a parenthesised
|
|
subscript is followed by a braced one, PL_expect was getting set to
|
|
XBLOCK due to code intended for "foreach (...) {...}". This broke
|
|
bareword autoquotation, and the parsing of operators following the
|
|
braced subscript. Alter PL_expect from XBLOCK to XOPERATOR following
|
|
a parenthesised subscript. Fixes [perl #8045].
|
|
|
|
Petr Písař: Ported to 5.24.3.
|
|
|
|
Signed-off-by: Petr Písař <ppisar@redhat.com>
|
|
---
|
|
perly.act | 1256 ++++++++++++++++++++++++++++-------------------
|
|
perly.h | 297 ++++-------
|
|
perly.tab | 1352 +++++++++++++++++++++++----------------------------
|
|
perly.y | 20 +-
|
|
t/op/postfixderef.t | 25 +-
|
|
5 files changed, 1502 insertions(+), 1448 deletions(-)
|
|
|
|
diff --git a/perly.act b/perly.act
|
|
index 0d1d5fc..b1457f8 100644
|
|
--- a/perly.act
|
|
+++ b/perly.act
|
|
@@ -1,223 +1,250 @@
|
|
/* -*- buffer-read-only: t -*-
|
|
!!!!!!! DO NOT EDIT THIS FILE !!!!!!!
|
|
- This file is built by regen_perly.pl from perly.y.
|
|
+ This file is built by ./regen_perly.pl from perly.y.
|
|
Any changes made here will be lost!
|
|
*/
|
|
|
|
case 2:
|
|
-#line 115 "perly.y"
|
|
+#line 115 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
parser->expect = XSTATE;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 3:
|
|
-#line 119 "perly.y"
|
|
+#line 119 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- newPROG(block_end((ps[(3) - (4)].val.ival),(ps[(4) - (4)].val.opval)));
|
|
+ newPROG(block_end((ps[-1].val.ival),(ps[0].val.opval)));
|
|
PL_compiling.cop_seq = 0;
|
|
(yyval.ival) = 0;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 4:
|
|
-#line 125 "perly.y"
|
|
+#line 125 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
parser->expect = XTERM;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 5:
|
|
-#line 129 "perly.y"
|
|
+#line 129 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- PL_eval_root = (ps[(3) - (3)].val.opval);
|
|
+ PL_eval_root = (ps[0].val.opval);
|
|
(yyval.ival) = 0;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 6:
|
|
-#line 134 "perly.y"
|
|
+#line 134 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
parser->expect = XBLOCK;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 7:
|
|
-#line 138 "perly.y"
|
|
+#line 138 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
PL_pad_reset_pending = TRUE;
|
|
- PL_eval_root = (ps[(3) - (3)].val.opval);
|
|
+ PL_eval_root = (ps[0].val.opval);
|
|
(yyval.ival) = 0;
|
|
yyunlex();
|
|
parser->yychar = YYEOF;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 8:
|
|
-#line 146 "perly.y"
|
|
+#line 146 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
parser->expect = XSTATE;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 9:
|
|
-#line 150 "perly.y"
|
|
+#line 150 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
PL_pad_reset_pending = TRUE;
|
|
- PL_eval_root = (ps[(3) - (3)].val.opval);
|
|
+ PL_eval_root = (ps[0].val.opval);
|
|
(yyval.ival) = 0;
|
|
yyunlex();
|
|
parser->yychar = YYEOF;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 10:
|
|
-#line 158 "perly.y"
|
|
+#line 158 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
parser->expect = XSTATE;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 11:
|
|
-#line 162 "perly.y"
|
|
+#line 162 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
PL_pad_reset_pending = TRUE;
|
|
- PL_eval_root = (ps[(3) - (3)].val.opval);
|
|
+ PL_eval_root = (ps[0].val.opval);
|
|
(yyval.ival) = 0;
|
|
yyunlex();
|
|
parser->yychar = YYEOF;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 12:
|
|
-#line 170 "perly.y"
|
|
+#line 170 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
parser->expect = XSTATE;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 13:
|
|
-#line 174 "perly.y"
|
|
+#line 174 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- PL_eval_root = (ps[(3) - (3)].val.opval);
|
|
+ PL_eval_root = (ps[0].val.opval);
|
|
(yyval.ival) = 0;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 14:
|
|
-#line 182 "perly.y"
|
|
- { if (parser->copline > (line_t)(ps[(1) - (4)].val.ival))
|
|
- parser->copline = (line_t)(ps[(1) - (4)].val.ival);
|
|
- (yyval.opval) = block_end((ps[(2) - (4)].val.ival), (ps[(3) - (4)].val.opval));
|
|
+#line 182 "perly.y" /* yacc.c:1646 */
|
|
+ { if (parser->copline > (line_t)(ps[-3].val.ival))
|
|
+ parser->copline = (line_t)(ps[-3].val.ival);
|
|
+ (yyval.opval) = block_end((ps[-2].val.ival), (ps[-1].val.opval));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 15:
|
|
-#line 190 "perly.y"
|
|
- { if (parser->copline > (line_t)(ps[(1) - (7)].val.ival))
|
|
- parser->copline = (line_t)(ps[(1) - (7)].val.ival);
|
|
- (yyval.opval) = block_end((ps[(2) - (7)].val.ival), (ps[(5) - (7)].val.opval));
|
|
+#line 190 "perly.y" /* yacc.c:1646 */
|
|
+ { if (parser->copline > (line_t)(ps[-6].val.ival))
|
|
+ parser->copline = (line_t)(ps[-6].val.ival);
|
|
+ (yyval.opval) = block_end((ps[-5].val.ival), (ps[-2].val.opval));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 16:
|
|
-#line 197 "perly.y"
|
|
+#line 197 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.ival) = block_start(TRUE);
|
|
parser->parsed_sub = 0; }
|
|
+
|
|
break;
|
|
|
|
case 17:
|
|
-#line 202 "perly.y"
|
|
- { if (parser->copline > (line_t)(ps[(1) - (4)].val.ival))
|
|
- parser->copline = (line_t)(ps[(1) - (4)].val.ival);
|
|
- (yyval.opval) = block_end((ps[(2) - (4)].val.ival), (ps[(3) - (4)].val.opval));
|
|
+#line 202 "perly.y" /* yacc.c:1646 */
|
|
+ { if (parser->copline > (line_t)(ps[-3].val.ival))
|
|
+ parser->copline = (line_t)(ps[-3].val.ival);
|
|
+ (yyval.opval) = block_end((ps[-2].val.ival), (ps[-1].val.opval));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 18:
|
|
-#line 209 "perly.y"
|
|
+#line 209 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.ival) = block_start(FALSE);
|
|
parser->parsed_sub = 0; }
|
|
+
|
|
break;
|
|
|
|
case 19:
|
|
-#line 215 "perly.y"
|
|
+#line 215 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 20:
|
|
-#line 217 "perly.y"
|
|
- { (yyval.opval) = op_append_list(OP_LINESEQ, (ps[(1) - (2)].val.opval), (ps[(2) - (2)].val.opval));
|
|
+#line 217 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = op_append_list(OP_LINESEQ, (ps[-1].val.opval), (ps[0].val.opval));
|
|
PL_pad_reset_pending = TRUE;
|
|
- if ((ps[(1) - (2)].val.opval) && (ps[(2) - (2)].val.opval))
|
|
+ if ((ps[-1].val.opval) && (ps[0].val.opval))
|
|
PL_hints |= HINT_BLOCK_SCOPE;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 21:
|
|
-#line 226 "perly.y"
|
|
+#line 226 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 22:
|
|
-#line 228 "perly.y"
|
|
- { (yyval.opval) = op_append_list(OP_LINESEQ, (ps[(1) - (2)].val.opval), (ps[(2) - (2)].val.opval));
|
|
+#line 228 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = op_append_list(OP_LINESEQ, (ps[-1].val.opval), (ps[0].val.opval));
|
|
PL_pad_reset_pending = TRUE;
|
|
- if ((ps[(1) - (2)].val.opval) && (ps[(2) - (2)].val.opval))
|
|
+ if ((ps[-1].val.opval) && (ps[0].val.opval))
|
|
PL_hints |= HINT_BLOCK_SCOPE;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 23:
|
|
-#line 237 "perly.y"
|
|
+#line 237 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = (ps[(1) - (1)].val.opval) ? newSTATEOP(0, NULL, (ps[(1) - (1)].val.opval)) : NULL;
|
|
+ (yyval.opval) = (ps[0].val.opval) ? newSTATEOP(0, NULL, (ps[0].val.opval)) : NULL;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 24:
|
|
-#line 241 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 241 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 25:
|
|
-#line 245 "perly.y"
|
|
+#line 245 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = newSTATEOP(SVf_UTF8 * (ps[(1) - (2)].val.pval)[strlen((ps[(1) - (2)].val.pval))+1], (ps[(1) - (2)].val.pval), (ps[(2) - (2)].val.opval));
|
|
+ (yyval.opval) = newSTATEOP(SVf_UTF8 * (ps[-1].val.pval)[strlen((ps[-1].val.pval))+1], (ps[-1].val.pval), (ps[0].val.opval));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 26:
|
|
-#line 249 "perly.y"
|
|
+#line 249 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = newSTATEOP(SVf_UTF8 * (ps[(1) - (2)].val.pval)[strlen((ps[(1) - (2)].val.pval))+1], (ps[(1) - (2)].val.pval), (ps[(2) - (2)].val.opval));
|
|
+ (yyval.opval) = newSTATEOP(SVf_UTF8 * (ps[-1].val.pval)[strlen((ps[-1].val.pval))+1], (ps[-1].val.pval), (ps[0].val.opval));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 27:
|
|
-#line 256 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 256 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 28:
|
|
-#line 258 "perly.y"
|
|
+#line 258 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
CV *fmtcv = PL_compcv;
|
|
- newFORM((ps[(2) - (4)].val.ival), (ps[(3) - (4)].val.opval), (ps[(4) - (4)].val.opval));
|
|
+ newFORM((ps[-2].val.ival), (ps[-1].val.opval), (ps[0].val.opval));
|
|
(yyval.opval) = (OP*)NULL;
|
|
if (CvOUTSIDE(fmtcv) && !CvEVAL(CvOUTSIDE(fmtcv))) {
|
|
pad_add_weakref(fmtcv);
|
|
}
|
|
parser->parsed_sub = 1;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 29:
|
|
-#line 268 "perly.y"
|
|
+#line 268 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- if ((ps[(2) - (3)].val.opval)->op_type == OP_CONST) {
|
|
+ if ((ps[-1].val.opval)->op_type == OP_CONST) {
|
|
const char *const name =
|
|
- SvPV_nolen_const(((SVOP*)(ps[(2) - (3)].val.opval))->op_sv);
|
|
+ SvPV_nolen_const(((SVOP*)(ps[-1].val.opval))->op_sv);
|
|
if (strEQ(name, "BEGIN") || strEQ(name, "END")
|
|
|| strEQ(name, "INIT") || strEQ(name, "CHECK")
|
|
|| strEQ(name, "UNITCHECK"))
|
|
@@ -230,33 +257,35 @@ case 2:
|
|
|| CvCLONE(CvOUTSIDE(PL_compcv))
|
|
|| !PadnameIsSTATE(PadlistNAMESARRAY(CvPADLIST(
|
|
CvOUTSIDE(PL_compcv)
|
|
- ))[(ps[(2) - (3)].val.opval)->op_targ]))
|
|
+ ))[(ps[-1].val.opval)->op_targ]))
|
|
CvCLONE_on(PL_compcv);
|
|
parser->in_my = 0;
|
|
parser->in_my_stash = NULL;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 30:
|
|
-#line 290 "perly.y"
|
|
+#line 290 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
SvREFCNT_inc_simple_void(PL_compcv);
|
|
- (ps[(2) - (7)].val.opval)->op_type == OP_CONST
|
|
- ? newATTRSUB((ps[(3) - (7)].val.ival), (ps[(2) - (7)].val.opval), (ps[(5) - (7)].val.opval), (ps[(6) - (7)].val.opval), (ps[(7) - (7)].val.opval))
|
|
- : newMYSUB((ps[(3) - (7)].val.ival), (ps[(2) - (7)].val.opval), (ps[(5) - (7)].val.opval), (ps[(6) - (7)].val.opval), (ps[(7) - (7)].val.opval))
|
|
+ (ps[-5].val.opval)->op_type == OP_CONST
|
|
+ ? newATTRSUB((ps[-4].val.ival), (ps[-5].val.opval), (ps[-2].val.opval), (ps[-1].val.opval), (ps[0].val.opval))
|
|
+ : newMYSUB((ps[-4].val.ival), (ps[-5].val.opval), (ps[-2].val.opval), (ps[-1].val.opval), (ps[0].val.opval))
|
|
;
|
|
(yyval.opval) = (OP*)NULL;
|
|
intro_my();
|
|
parser->parsed_sub = 1;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 31:
|
|
-#line 301 "perly.y"
|
|
+#line 301 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- if ((ps[(2) - (3)].val.opval)->op_type == OP_CONST) {
|
|
+ if ((ps[-1].val.opval)->op_type == OP_CONST) {
|
|
const char *const name =
|
|
- SvPV_nolen_const(((SVOP*)(ps[(2) - (3)].val.opval))->op_sv);
|
|
+ SvPV_nolen_const(((SVOP*)(ps[-1].val.opval))->op_sv);
|
|
if (strEQ(name, "BEGIN") || strEQ(name, "END")
|
|
|| strEQ(name, "INIT") || strEQ(name, "CHECK")
|
|
|| strEQ(name, "UNITCHECK"))
|
|
@@ -269,130 +298,144 @@ case 2:
|
|
|| CvCLONE(CvOUTSIDE(PL_compcv))
|
|
|| !PadnameIsSTATE(PadlistNAMESARRAY(CvPADLIST(
|
|
CvOUTSIDE(PL_compcv)
|
|
- ))[(ps[(2) - (3)].val.opval)->op_targ]))
|
|
+ ))[(ps[-1].val.opval)->op_targ]))
|
|
CvCLONE_on(PL_compcv);
|
|
parser->in_my = 0;
|
|
parser->in_my_stash = NULL;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 32:
|
|
-#line 323 "perly.y"
|
|
+#line 323 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
OP *body;
|
|
- if (parser->copline > (line_t)(ps[(8) - (10)].val.ival))
|
|
- parser->copline = (line_t)(ps[(8) - (10)].val.ival);
|
|
- body = block_end((ps[(5) - (10)].val.ival),
|
|
- op_append_list(OP_LINESEQ, (ps[(6) - (10)].val.opval), (ps[(9) - (10)].val.opval)));
|
|
+ if (parser->copline > (line_t)(ps[-2].val.ival))
|
|
+ parser->copline = (line_t)(ps[-2].val.ival);
|
|
+ body = block_end((ps[-5].val.ival),
|
|
+ op_append_list(OP_LINESEQ, (ps[-4].val.opval), (ps[-1].val.opval)));
|
|
|
|
SvREFCNT_inc_simple_void(PL_compcv);
|
|
- (ps[(2) - (10)].val.opval)->op_type == OP_CONST
|
|
- ? newATTRSUB((ps[(3) - (10)].val.ival), (ps[(2) - (10)].val.opval), NULL, (ps[(7) - (10)].val.opval), body)
|
|
- : newMYSUB((ps[(3) - (10)].val.ival), (ps[(2) - (10)].val.opval), NULL, (ps[(7) - (10)].val.opval), body)
|
|
+ (ps[-8].val.opval)->op_type == OP_CONST
|
|
+ ? newATTRSUB((ps[-7].val.ival), (ps[-8].val.opval), NULL, (ps[-3].val.opval), body)
|
|
+ : newMYSUB((ps[-7].val.ival), (ps[-8].val.opval), NULL, (ps[-3].val.opval), body)
|
|
;
|
|
(yyval.opval) = (OP*)NULL;
|
|
intro_my();
|
|
parser->parsed_sub = 1;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 33:
|
|
-#line 340 "perly.y"
|
|
+#line 340 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- package((ps[(3) - (4)].val.opval));
|
|
- if ((ps[(2) - (4)].val.opval))
|
|
- package_version((ps[(2) - (4)].val.opval));
|
|
+ package((ps[-1].val.opval));
|
|
+ if ((ps[-2].val.opval))
|
|
+ package_version((ps[-2].val.opval));
|
|
(yyval.opval) = (OP*)NULL;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 34:
|
|
-#line 347 "perly.y"
|
|
+#line 347 "perly.y" /* yacc.c:1646 */
|
|
{ CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ }
|
|
+
|
|
break;
|
|
|
|
case 35:
|
|
-#line 349 "perly.y"
|
|
+#line 349 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
SvREFCNT_inc_simple_void(PL_compcv);
|
|
- utilize((ps[(1) - (7)].val.ival), (ps[(2) - (7)].val.ival), (ps[(4) - (7)].val.opval), (ps[(5) - (7)].val.opval), (ps[(6) - (7)].val.opval));
|
|
+ utilize((ps[-6].val.ival), (ps[-5].val.ival), (ps[-3].val.opval), (ps[-2].val.opval), (ps[-1].val.opval));
|
|
parser->parsed_sub = 1;
|
|
(yyval.opval) = (OP*)NULL;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 36:
|
|
-#line 356 "perly.y"
|
|
+#line 356 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = block_end((ps[(3) - (7)].val.ival),
|
|
- newCONDOP(0, (ps[(4) - (7)].val.opval), op_scope((ps[(6) - (7)].val.opval)), (ps[(7) - (7)].val.opval)));
|
|
- parser->copline = (line_t)(ps[(1) - (7)].val.ival);
|
|
+ (yyval.opval) = block_end((ps[-4].val.ival),
|
|
+ newCONDOP(0, (ps[-3].val.opval), op_scope((ps[-1].val.opval)), (ps[0].val.opval)));
|
|
+ parser->copline = (line_t)(ps[-6].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 37:
|
|
-#line 362 "perly.y"
|
|
+#line 362 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = block_end((ps[(3) - (7)].val.ival),
|
|
- newCONDOP(0, (ps[(4) - (7)].val.opval), (ps[(7) - (7)].val.opval), op_scope((ps[(6) - (7)].val.opval))));
|
|
- parser->copline = (line_t)(ps[(1) - (7)].val.ival);
|
|
+ (yyval.opval) = block_end((ps[-4].val.ival),
|
|
+ newCONDOP(0, (ps[-3].val.opval), (ps[0].val.opval), op_scope((ps[-1].val.opval))));
|
|
+ parser->copline = (line_t)(ps[-6].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 38:
|
|
-#line 368 "perly.y"
|
|
+#line 368 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = block_end((ps[(3) - (6)].val.ival), newGIVENOP((ps[(4) - (6)].val.opval), op_scope((ps[(6) - (6)].val.opval)), 0));
|
|
- parser->copline = (line_t)(ps[(1) - (6)].val.ival);
|
|
+ (yyval.opval) = block_end((ps[-3].val.ival), newGIVENOP((ps[-2].val.opval), op_scope((ps[0].val.opval)), 0));
|
|
+ parser->copline = (line_t)(ps[-5].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 39:
|
|
-#line 373 "perly.y"
|
|
- { (yyval.opval) = block_end((ps[(3) - (6)].val.ival), newWHENOP((ps[(4) - (6)].val.opval), op_scope((ps[(6) - (6)].val.opval)))); }
|
|
+#line 373 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = block_end((ps[-3].val.ival), newWHENOP((ps[-2].val.opval), op_scope((ps[0].val.opval)))); }
|
|
+
|
|
break;
|
|
|
|
case 40:
|
|
-#line 375 "perly.y"
|
|
- { (yyval.opval) = newWHENOP(0, op_scope((ps[(2) - (2)].val.opval))); }
|
|
+#line 375 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newWHENOP(0, op_scope((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 41:
|
|
-#line 377 "perly.y"
|
|
+#line 377 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = block_end((ps[(3) - (8)].val.ival),
|
|
+ (yyval.opval) = block_end((ps[-5].val.ival),
|
|
newWHILEOP(0, 1, (LOOP*)(OP*)NULL,
|
|
- (ps[(4) - (8)].val.opval), (ps[(7) - (8)].val.opval), (ps[(8) - (8)].val.opval), (ps[(6) - (8)].val.ival)));
|
|
- parser->copline = (line_t)(ps[(1) - (8)].val.ival);
|
|
+ (ps[-4].val.opval), (ps[-1].val.opval), (ps[0].val.opval), (ps[-2].val.ival)));
|
|
+ parser->copline = (line_t)(ps[-7].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 42:
|
|
-#line 384 "perly.y"
|
|
+#line 384 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = block_end((ps[(3) - (8)].val.ival),
|
|
+ (yyval.opval) = block_end((ps[-5].val.ival),
|
|
newWHILEOP(0, 1, (LOOP*)(OP*)NULL,
|
|
- (ps[(4) - (8)].val.opval), (ps[(7) - (8)].val.opval), (ps[(8) - (8)].val.opval), (ps[(6) - (8)].val.ival)));
|
|
- parser->copline = (line_t)(ps[(1) - (8)].val.ival);
|
|
+ (ps[-4].val.opval), (ps[-1].val.opval), (ps[0].val.opval), (ps[-2].val.ival)));
|
|
+ parser->copline = (line_t)(ps[-7].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 43:
|
|
-#line 391 "perly.y"
|
|
+#line 391 "perly.y" /* yacc.c:1646 */
|
|
{ parser->expect = XTERM; }
|
|
+
|
|
break;
|
|
|
|
case 44:
|
|
-#line 393 "perly.y"
|
|
+#line 393 "perly.y" /* yacc.c:1646 */
|
|
{ parser->expect = XTERM; }
|
|
+
|
|
break;
|
|
|
|
case 45:
|
|
-#line 396 "perly.y"
|
|
+#line 396 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- OP *initop = (ps[(4) - (13)].val.opval);
|
|
+ OP *initop = (ps[-9].val.opval);
|
|
OP *forop = newWHILEOP(0, 1, (LOOP*)(OP*)NULL,
|
|
- scalar((ps[(7) - (13)].val.opval)), (ps[(13) - (13)].val.opval), (ps[(11) - (13)].val.opval), (ps[(10) - (13)].val.ival));
|
|
+ scalar((ps[-6].val.opval)), (ps[0].val.opval), (ps[-2].val.opval), (ps[-3].val.ival));
|
|
if (initop) {
|
|
forop = op_prepend_elem(OP_LINESEQ, initop,
|
|
op_append_elem(OP_LINESEQ,
|
|
@@ -400,123 +443,135 @@ case 2:
|
|
forop));
|
|
}
|
|
PL_hints |= HINT_BLOCK_SCOPE;
|
|
- (yyval.opval) = block_end((ps[(3) - (13)].val.ival), forop);
|
|
- parser->copline = (line_t)(ps[(1) - (13)].val.ival);
|
|
+ (yyval.opval) = block_end((ps[-10].val.ival), forop);
|
|
+ parser->copline = (line_t)(ps[-12].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 46:
|
|
-#line 411 "perly.y"
|
|
+#line 411 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = block_end((ps[(3) - (9)].val.ival), newFOROP(0, (ps[(4) - (9)].val.opval), (ps[(6) - (9)].val.opval), (ps[(8) - (9)].val.opval), (ps[(9) - (9)].val.opval)));
|
|
- parser->copline = (line_t)(ps[(1) - (9)].val.ival);
|
|
+ (yyval.opval) = block_end((ps[-6].val.ival), newFOROP(0, (ps[-5].val.opval), (ps[-3].val.opval), (ps[-1].val.opval), (ps[0].val.opval)));
|
|
+ parser->copline = (line_t)(ps[-8].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 47:
|
|
-#line 416 "perly.y"
|
|
+#line 416 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = block_end((ps[(4) - (8)].val.ival), newFOROP(0,
|
|
- op_lvalue((ps[(2) - (8)].val.opval), OP_ENTERLOOP), (ps[(5) - (8)].val.opval), (ps[(7) - (8)].val.opval), (ps[(8) - (8)].val.opval)));
|
|
- parser->copline = (line_t)(ps[(1) - (8)].val.ival);
|
|
+ (yyval.opval) = block_end((ps[-4].val.ival), newFOROP(0,
|
|
+ op_lvalue((ps[-6].val.opval), OP_ENTERLOOP), (ps[-3].val.opval), (ps[-1].val.opval), (ps[0].val.opval)));
|
|
+ parser->copline = (line_t)(ps[-7].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 48:
|
|
-#line 422 "perly.y"
|
|
- { parser->in_my = 0; (yyval.opval) = my((ps[(5) - (5)].val.opval)); }
|
|
+#line 422 "perly.y" /* yacc.c:1646 */
|
|
+ { parser->in_my = 0; (yyval.opval) = my((ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 49:
|
|
-#line 424 "perly.y"
|
|
+#line 424 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
(yyval.opval) = block_end(
|
|
- (ps[(4) - (11)].val.ival),
|
|
+ (ps[-7].val.ival),
|
|
newFOROP(0,
|
|
op_lvalue(
|
|
newUNOP(OP_REFGEN, 0,
|
|
- (ps[(6) - (11)].val.opval)),
|
|
+ (ps[-5].val.opval)),
|
|
OP_ENTERLOOP),
|
|
- (ps[(8) - (11)].val.opval), (ps[(10) - (11)].val.opval), (ps[(11) - (11)].val.opval))
|
|
+ (ps[-3].val.opval), (ps[-1].val.opval), (ps[0].val.opval))
|
|
);
|
|
- parser->copline = (line_t)(ps[(1) - (11)].val.ival);
|
|
+ parser->copline = (line_t)(ps[-10].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 50:
|
|
-#line 437 "perly.y"
|
|
+#line 437 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = block_end((ps[(5) - (9)].val.ival), newFOROP(
|
|
+ (yyval.opval) = block_end((ps[-4].val.ival), newFOROP(
|
|
0, op_lvalue(newUNOP(OP_REFGEN, 0,
|
|
- (ps[(3) - (9)].val.opval)),
|
|
- OP_ENTERLOOP), (ps[(6) - (9)].val.opval), (ps[(8) - (9)].val.opval), (ps[(9) - (9)].val.opval)));
|
|
- parser->copline = (line_t)(ps[(1) - (9)].val.ival);
|
|
+ (ps[-6].val.opval)),
|
|
+ OP_ENTERLOOP), (ps[-3].val.opval), (ps[-1].val.opval), (ps[0].val.opval)));
|
|
+ parser->copline = (line_t)(ps[-8].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 51:
|
|
-#line 445 "perly.y"
|
|
+#line 445 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = block_end((ps[(3) - (7)].val.ival),
|
|
- newFOROP(0, (OP*)NULL, (ps[(4) - (7)].val.opval), (ps[(6) - (7)].val.opval), (ps[(7) - (7)].val.opval)));
|
|
- parser->copline = (line_t)(ps[(1) - (7)].val.ival);
|
|
+ (yyval.opval) = block_end((ps[-4].val.ival),
|
|
+ newFOROP(0, (OP*)NULL, (ps[-3].val.opval), (ps[-1].val.opval), (ps[0].val.opval)));
|
|
+ parser->copline = (line_t)(ps[-6].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 52:
|
|
-#line 451 "perly.y"
|
|
+#line 451 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
/* 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);
|
|
+ (OP*)NULL, (ps[-1].val.opval), (ps[0].val.opval), 0);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 53:
|
|
-#line 457 "perly.y"
|
|
+#line 457 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- package((ps[(3) - (5)].val.opval));
|
|
- if ((ps[(2) - (5)].val.opval)) {
|
|
- package_version((ps[(2) - (5)].val.opval));
|
|
+ package((ps[-2].val.opval));
|
|
+ if ((ps[-3].val.opval)) {
|
|
+ package_version((ps[-3].val.opval));
|
|
}
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 54:
|
|
-#line 464 "perly.y"
|
|
+#line 464 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
/* a block is a loop that happens once */
|
|
(yyval.opval) = newWHILEOP(0, 1, (LOOP*)(OP*)NULL,
|
|
- (OP*)NULL, block_end((ps[(5) - (8)].val.ival), (ps[(7) - (8)].val.opval)), (OP*)NULL, 0);
|
|
- if (parser->copline > (line_t)(ps[(4) - (8)].val.ival))
|
|
- parser->copline = (line_t)(ps[(4) - (8)].val.ival);
|
|
+ (OP*)NULL, block_end((ps[-3].val.ival), (ps[-1].val.opval)), (OP*)NULL, 0);
|
|
+ if (parser->copline > (line_t)(ps[-4].val.ival))
|
|
+ parser->copline = (line_t)(ps[-4].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 55:
|
|
-#line 472 "perly.y"
|
|
+#line 472 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = (ps[(1) - (2)].val.opval);
|
|
+ (yyval.opval) = (ps[-1].val.opval);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 56:
|
|
-#line 476 "perly.y"
|
|
+#line 476 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
(yyval.opval) = (OP*)NULL;
|
|
parser->copline = NOLINE;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 57:
|
|
-#line 484 "perly.y"
|
|
+#line 484 "perly.y" /* yacc.c:1646 */
|
|
{ OP *list;
|
|
- if ((ps[(2) - (2)].val.opval)) {
|
|
- OP *term = (ps[(2) - (2)].val.opval);
|
|
- list = op_append_elem(OP_LIST, (ps[(1) - (2)].val.opval), term);
|
|
+ if ((ps[0].val.opval)) {
|
|
+ OP *term = (ps[0].val.opval);
|
|
+ list = op_append_elem(OP_LIST, (ps[-1].val.opval), term);
|
|
}
|
|
else {
|
|
- list = (ps[(1) - (2)].val.opval);
|
|
+ list = (ps[-1].val.opval);
|
|
}
|
|
if (parser->copline == NOLINE)
|
|
parser->copline = CopLINE(PL_curcop)-1;
|
|
@@ -524,186 +579,219 @@ case 2:
|
|
(yyval.opval) = newSTATEOP(0, NULL,
|
|
op_convert_list(OP_FORMLINE, 0, list));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 58:
|
|
-#line 501 "perly.y"
|
|
+#line 501 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = NULL; }
|
|
+
|
|
break;
|
|
|
|
case 59:
|
|
-#line 503 "perly.y"
|
|
- { (yyval.opval) = op_unscope((ps[(2) - (3)].val.opval)); }
|
|
+#line 503 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = op_unscope((ps[-1].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 60:
|
|
-#line 508 "perly.y"
|
|
+#line 508 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 61:
|
|
-#line 510 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 510 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 62:
|
|
-#line 512 "perly.y"
|
|
- { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval)); }
|
|
+#line 512 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[0].val.opval), (ps[-2].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 63:
|
|
-#line 514 "perly.y"
|
|
- { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval)); }
|
|
+#line 514 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[0].val.opval), (ps[-2].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 64:
|
|
-#line 516 "perly.y"
|
|
- { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, scalar((ps[(3) - (3)].val.opval)), (ps[(1) - (3)].val.opval)); }
|
|
+#line 516 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, scalar((ps[0].val.opval)), (ps[-2].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 65:
|
|
-#line 518 "perly.y"
|
|
- { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval)); }
|
|
+#line 518 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, (ps[0].val.opval), (ps[-2].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 66:
|
|
-#line 520 "perly.y"
|
|
- { (yyval.opval) = newFOROP(0, (OP*)NULL, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval), (OP*)NULL);
|
|
- parser->copline = (line_t)(ps[(2) - (3)].val.ival); }
|
|
+#line 520 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newFOROP(0, (OP*)NULL, (ps[0].val.opval), (ps[-2].val.opval), (OP*)NULL);
|
|
+ parser->copline = (line_t)(ps[-1].val.ival); }
|
|
+
|
|
break;
|
|
|
|
case 67:
|
|
-#line 523 "perly.y"
|
|
- { (yyval.opval) = newWHENOP((ps[(3) - (3)].val.opval), op_scope((ps[(1) - (3)].val.opval))); }
|
|
+#line 523 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newWHENOP((ps[0].val.opval), op_scope((ps[-2].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 68:
|
|
-#line 528 "perly.y"
|
|
+#line 528 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 69:
|
|
-#line 530 "perly.y"
|
|
+#line 530 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- ((ps[(2) - (2)].val.opval))->op_flags |= OPf_PARENS;
|
|
- (yyval.opval) = op_scope((ps[(2) - (2)].val.opval));
|
|
+ ((ps[0].val.opval))->op_flags |= OPf_PARENS;
|
|
+ (yyval.opval) = op_scope((ps[0].val.opval));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 70:
|
|
-#line 535 "perly.y"
|
|
- { parser->copline = (line_t)(ps[(1) - (6)].val.ival);
|
|
+#line 535 "perly.y" /* yacc.c:1646 */
|
|
+ { parser->copline = (line_t)(ps[-5].val.ival);
|
|
(yyval.opval) = newCONDOP(0,
|
|
- newSTATEOP(OPf_SPECIAL,NULL,(ps[(3) - (6)].val.opval)),
|
|
- op_scope((ps[(5) - (6)].val.opval)), (ps[(6) - (6)].val.opval));
|
|
+ newSTATEOP(OPf_SPECIAL,NULL,(ps[-3].val.opval)),
|
|
+ op_scope((ps[-1].val.opval)), (ps[0].val.opval));
|
|
PL_hints |= HINT_BLOCK_SCOPE;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 71:
|
|
-#line 545 "perly.y"
|
|
+#line 545 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 72:
|
|
-#line 547 "perly.y"
|
|
- { (yyval.opval) = op_scope((ps[(2) - (2)].val.opval)); }
|
|
+#line 547 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = op_scope((ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 73:
|
|
-#line 552 "perly.y"
|
|
+#line 552 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.ival) = (PL_min_intro_pending &&
|
|
PL_max_intro_pending >= PL_min_intro_pending);
|
|
intro_my(); }
|
|
+
|
|
break;
|
|
|
|
case 74:
|
|
-#line 558 "perly.y"
|
|
+#line 558 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 76:
|
|
-#line 564 "perly.y"
|
|
+#line 564 "perly.y" /* yacc.c:1646 */
|
|
{ YYSTYPE tmplval;
|
|
(void)scan_num("1", &tmplval);
|
|
(yyval.opval) = tmplval.opval; }
|
|
+
|
|
break;
|
|
|
|
case 78:
|
|
-#line 572 "perly.y"
|
|
- { (yyval.opval) = invert(scalar((ps[(1) - (1)].val.opval))); }
|
|
+#line 572 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = invert(scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 79:
|
|
-#line 577 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); }
|
|
+#line 577 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); intro_my(); }
|
|
+
|
|
break;
|
|
|
|
case 80:
|
|
-#line 581 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); }
|
|
+#line 581 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); intro_my(); }
|
|
+
|
|
break;
|
|
|
|
case 81:
|
|
-#line 584 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 584 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 82:
|
|
-#line 585 "perly.y"
|
|
+#line 585 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 83:
|
|
-#line 589 "perly.y"
|
|
+#line 589 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.ival) = start_subparse(FALSE, 0);
|
|
SAVEFREESV(PL_compcv); }
|
|
+
|
|
break;
|
|
|
|
case 84:
|
|
-#line 595 "perly.y"
|
|
+#line 595 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.ival) = start_subparse(FALSE, CVf_ANON);
|
|
SAVEFREESV(PL_compcv); }
|
|
+
|
|
break;
|
|
|
|
case 85:
|
|
-#line 600 "perly.y"
|
|
+#line 600 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.ival) = start_subparse(TRUE, 0);
|
|
SAVEFREESV(PL_compcv); }
|
|
+
|
|
break;
|
|
|
|
case 88:
|
|
-#line 611 "perly.y"
|
|
+#line 611 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 90:
|
|
-#line 617 "perly.y"
|
|
+#line 617 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 91:
|
|
-#line 619 "perly.y"
|
|
- { (yyval.opval) = (ps[(2) - (2)].val.opval); }
|
|
+#line 619 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 92:
|
|
-#line 621 "perly.y"
|
|
+#line 621 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 93:
|
|
-#line 626 "perly.y"
|
|
- { (yyval.opval) = (ps[(2) - (2)].val.opval); }
|
|
+#line 626 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 94:
|
|
-#line 628 "perly.y"
|
|
+#line 628 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 95:
|
|
-#line 633 "perly.y"
|
|
+#line 633 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
/* We shouldn't get here otherwise */
|
|
assert(FEATURE_SIGNATURES_IS_ENABLED);
|
|
@@ -713,318 +801,382 @@ case 2:
|
|
"The signatures feature is experimental");
|
|
(yyval.opval) = parse_subsignature();
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 96:
|
|
-#line 643 "perly.y"
|
|
+#line 643 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- (yyval.opval) = op_append_list(OP_LINESEQ, (ps[(2) - (3)].val.opval),
|
|
+ (yyval.opval) = op_append_list(OP_LINESEQ, (ps[-1].val.opval),
|
|
newSTATEOP(0, NULL, sawparens(newNULLLIST())));
|
|
parser->expect = XATTRBLOCK;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 98:
|
|
-#line 652 "perly.y"
|
|
+#line 652 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 99:
|
|
-#line 657 "perly.y"
|
|
- { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); }
|
|
+#line 657 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[-2].val.opval), (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 100:
|
|
-#line 659 "perly.y"
|
|
- { (yyval.opval) = newLOGOP((ps[(2) - (3)].val.ival), 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); }
|
|
+#line 659 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newLOGOP((ps[-1].val.ival), 0, (ps[-2].val.opval), (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 101:
|
|
-#line 661 "perly.y"
|
|
- { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); }
|
|
+#line 661 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[-2].val.opval), (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 103:
|
|
-#line 667 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (2)].val.opval); }
|
|
+#line 667 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[-1].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 104:
|
|
-#line 669 "perly.y"
|
|
+#line 669 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- OP* term = (ps[(3) - (3)].val.opval);
|
|
- (yyval.opval) = op_append_elem(OP_LIST, (ps[(1) - (3)].val.opval), term);
|
|
+ OP* term = (ps[0].val.opval);
|
|
+ (yyval.opval) = op_append_elem(OP_LIST, (ps[-2].val.opval), term);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 106:
|
|
-#line 678 "perly.y"
|
|
- { (yyval.opval) = op_convert_list((ps[(1) - (3)].val.ival), OPf_STACKED,
|
|
- op_prepend_elem(OP_LIST, newGVREF((ps[(1) - (3)].val.ival),(ps[(2) - (3)].val.opval)), (ps[(3) - (3)].val.opval)) );
|
|
+#line 678 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = op_convert_list((ps[-2].val.ival), OPf_STACKED,
|
|
+ op_prepend_elem(OP_LIST, newGVREF((ps[-2].val.ival),(ps[-1].val.opval)), (ps[0].val.opval)) );
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 107:
|
|
-#line 682 "perly.y"
|
|
- { (yyval.opval) = op_convert_list((ps[(1) - (5)].val.ival), OPf_STACKED,
|
|
- op_prepend_elem(OP_LIST, newGVREF((ps[(1) - (5)].val.ival),(ps[(3) - (5)].val.opval)), (ps[(4) - (5)].val.opval)) );
|
|
+#line 682 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = op_convert_list((ps[-4].val.ival), OPf_STACKED,
|
|
+ op_prepend_elem(OP_LIST, newGVREF((ps[-4].val.ival),(ps[-2].val.opval)), (ps[-1].val.opval)) );
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 108:
|
|
-#line 686 "perly.y"
|
|
+#line 686 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = op_convert_list(OP_ENTERSUB, OPf_STACKED,
|
|
op_append_elem(OP_LIST,
|
|
- op_prepend_elem(OP_LIST, scalar((ps[(1) - (6)].val.opval)), (ps[(5) - (6)].val.opval)),
|
|
- newMETHOP(OP_METHOD, 0, (ps[(3) - (6)].val.opval))));
|
|
+ op_prepend_elem(OP_LIST, scalar((ps[-5].val.opval)), (ps[-1].val.opval)),
|
|
+ newMETHOP(OP_METHOD, 0, (ps[-3].val.opval))));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 109:
|
|
-#line 692 "perly.y"
|
|
+#line 692 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = op_convert_list(OP_ENTERSUB, OPf_STACKED,
|
|
- op_append_elem(OP_LIST, scalar((ps[(1) - (3)].val.opval)),
|
|
- newMETHOP(OP_METHOD, 0, (ps[(3) - (3)].val.opval))));
|
|
+ op_append_elem(OP_LIST, scalar((ps[-2].val.opval)),
|
|
+ newMETHOP(OP_METHOD, 0, (ps[0].val.opval))));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 110:
|
|
-#line 697 "perly.y"
|
|
+#line 697 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = op_convert_list(OP_ENTERSUB, OPf_STACKED,
|
|
op_append_elem(OP_LIST,
|
|
- op_prepend_elem(OP_LIST, (ps[(2) - (3)].val.opval), (ps[(3) - (3)].val.opval)),
|
|
- newMETHOP(OP_METHOD, 0, (ps[(1) - (3)].val.opval))));
|
|
+ op_prepend_elem(OP_LIST, (ps[-1].val.opval), (ps[0].val.opval)),
|
|
+ newMETHOP(OP_METHOD, 0, (ps[-2].val.opval))));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 111:
|
|
-#line 703 "perly.y"
|
|
+#line 703 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = op_convert_list(OP_ENTERSUB, OPf_STACKED,
|
|
op_append_elem(OP_LIST,
|
|
- op_prepend_elem(OP_LIST, (ps[(2) - (5)].val.opval), (ps[(4) - (5)].val.opval)),
|
|
- newMETHOP(OP_METHOD, 0, (ps[(1) - (5)].val.opval))));
|
|
+ op_prepend_elem(OP_LIST, (ps[-3].val.opval), (ps[-1].val.opval)),
|
|
+ newMETHOP(OP_METHOD, 0, (ps[-4].val.opval))));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 112:
|
|
-#line 709 "perly.y"
|
|
- { (yyval.opval) = op_convert_list((ps[(1) - (2)].val.ival), 0, (ps[(2) - (2)].val.opval)); }
|
|
+#line 709 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = op_convert_list((ps[-1].val.ival), 0, (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 113:
|
|
-#line 711 "perly.y"
|
|
- { (yyval.opval) = op_convert_list((ps[(1) - (4)].val.ival), 0, (ps[(3) - (4)].val.opval)); }
|
|
+#line 711 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = op_convert_list((ps[-3].val.ival), 0, (ps[-1].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 114:
|
|
-#line 713 "perly.y"
|
|
+#line 713 "perly.y" /* yacc.c:1646 */
|
|
{ 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[-1].val.ival), 0, (OP*)NULL, (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 115:
|
|
-#line 716 "perly.y"
|
|
+#line 716 "perly.y" /* yacc.c:1646 */
|
|
{ (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)));
|
|
+ op_prepend_elem(OP_LIST, (ps[-1].val.opval), (ps[0].val.opval)), (ps[-4].val.opval)));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 118:
|
|
-#line 731 "perly.y"
|
|
- { (yyval.opval) = newBINOP(OP_GELEM, 0, (ps[(1) - (5)].val.opval), scalar((ps[(3) - (5)].val.opval))); }
|
|
+#line 731 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newBINOP(OP_GELEM, 0, (ps[-4].val.opval), scalar((ps[-2].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 119:
|
|
-#line 733 "perly.y"
|
|
- { (yyval.opval) = newBINOP(OP_AELEM, 0, oopsAV((ps[(1) - (4)].val.opval)), scalar((ps[(3) - (4)].val.opval)));
|
|
+#line 733 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newBINOP(OP_AELEM, 0, oopsAV((ps[-3].val.opval)), scalar((ps[-1].val.opval)));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 120:
|
|
-#line 736 "perly.y"
|
|
+#line 736 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newBINOP(OP_AELEM, 0,
|
|
- ref(newAVREF((ps[(1) - (5)].val.opval)),OP_RV2AV),
|
|
- scalar((ps[(4) - (5)].val.opval)));
|
|
+ ref(newAVREF((ps[-4].val.opval)),OP_RV2AV),
|
|
+ scalar((ps[-1].val.opval)));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 121:
|
|
-#line 741 "perly.y"
|
|
+#line 741 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newBINOP(OP_AELEM, 0,
|
|
- ref(newAVREF((ps[(1) - (4)].val.opval)),OP_RV2AV),
|
|
- scalar((ps[(3) - (4)].val.opval)));
|
|
+ ref(newAVREF((ps[-3].val.opval)),OP_RV2AV),
|
|
+ scalar((ps[-1].val.opval)));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 122:
|
|
-#line 746 "perly.y"
|
|
- { (yyval.opval) = newBINOP(OP_HELEM, 0, oopsHV((ps[(1) - (5)].val.opval)), jmaybe((ps[(3) - (5)].val.opval)));
|
|
+#line 746 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newBINOP(OP_HELEM, 0, oopsHV((ps[-4].val.opval)), jmaybe((ps[-2].val.opval)));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 123:
|
|
-#line 749 "perly.y"
|
|
+#line 749 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newBINOP(OP_HELEM, 0,
|
|
- ref(newHVREF((ps[(1) - (6)].val.opval)),OP_RV2HV),
|
|
- jmaybe((ps[(4) - (6)].val.opval))); }
|
|
+ ref(newHVREF((ps[-5].val.opval)),OP_RV2HV),
|
|
+ jmaybe((ps[-2].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 124:
|
|
-#line 753 "perly.y"
|
|
+#line 753 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newBINOP(OP_HELEM, 0,
|
|
- ref(newHVREF((ps[(1) - (5)].val.opval)),OP_RV2HV),
|
|
- jmaybe((ps[(3) - (5)].val.opval))); }
|
|
+ ref(newHVREF((ps[-4].val.opval)),OP_RV2HV),
|
|
+ jmaybe((ps[-2].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 125:
|
|
-#line 757 "perly.y"
|
|
+#line 757 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
|
|
- newCVREF(0, scalar((ps[(1) - (4)].val.opval)))); }
|
|
+ newCVREF(0, scalar((ps[-3].val.opval))));
|
|
+ if (parser->expect == XBLOCK)
|
|
+ parser->expect = XOPERATOR;
|
|
+ }
|
|
+
|
|
break;
|
|
|
|
case 126:
|
|
-#line 760 "perly.y"
|
|
+#line 763 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
|
|
- op_append_elem(OP_LIST, (ps[(4) - (5)].val.opval),
|
|
- newCVREF(0, scalar((ps[(1) - (5)].val.opval))))); }
|
|
+ op_append_elem(OP_LIST, (ps[-1].val.opval),
|
|
+ newCVREF(0, scalar((ps[-4].val.opval)))));
|
|
+ if (parser->expect == XBLOCK)
|
|
+ parser->expect = XOPERATOR;
|
|
+ }
|
|
+
|
|
break;
|
|
|
|
case 127:
|
|
-#line 765 "perly.y"
|
|
+#line 771 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
|
|
- op_append_elem(OP_LIST, (ps[(3) - (4)].val.opval),
|
|
- newCVREF(0, scalar((ps[(1) - (4)].val.opval))))); }
|
|
+ op_append_elem(OP_LIST, (ps[-1].val.opval),
|
|
+ newCVREF(0, scalar((ps[-3].val.opval)))));
|
|
+ if (parser->expect == XBLOCK)
|
|
+ parser->expect = XOPERATOR;
|
|
+ }
|
|
+
|
|
break;
|
|
|
|
case 128:
|
|
-#line 769 "perly.y"
|
|
+#line 778 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
|
|
- newCVREF(0, scalar((ps[(1) - (3)].val.opval)))); }
|
|
+ newCVREF(0, scalar((ps[-2].val.opval))));
|
|
+ if (parser->expect == XBLOCK)
|
|
+ parser->expect = XOPERATOR;
|
|
+ }
|
|
+
|
|
break;
|
|
|
|
case 129:
|
|
-#line 772 "perly.y"
|
|
- { (yyval.opval) = newSLICEOP(0, (ps[(5) - (6)].val.opval), (ps[(2) - (6)].val.opval)); }
|
|
+#line 784 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newSLICEOP(0, (ps[-1].val.opval), (ps[-4].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 130:
|
|
-#line 774 "perly.y"
|
|
- { (yyval.opval) = newSLICEOP(0, (ps[(3) - (4)].val.opval), (ps[(1) - (4)].val.opval)); }
|
|
+#line 786 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newSLICEOP(0, (ps[-1].val.opval), (ps[-3].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 131:
|
|
-#line 776 "perly.y"
|
|
- { (yyval.opval) = newSLICEOP(0, (ps[(4) - (5)].val.opval), (OP*)NULL); }
|
|
+#line 788 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newSLICEOP(0, (ps[-1].val.opval), (OP*)NULL); }
|
|
+
|
|
break;
|
|
|
|
case 132:
|
|
-#line 781 "perly.y"
|
|
- { (yyval.opval) = newASSIGNOP(OPf_STACKED, (ps[(1) - (3)].val.opval), (ps[(2) - (3)].val.ival), (ps[(3) - (3)].val.opval)); }
|
|
+#line 793 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newASSIGNOP(OPf_STACKED, (ps[-2].val.opval), (ps[-1].val.ival), (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 133:
|
|
-#line 783 "perly.y"
|
|
- { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
|
|
+#line 795 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 134:
|
|
-#line 785 "perly.y"
|
|
- { if ((ps[(2) - (3)].val.ival) != OP_REPEAT)
|
|
- scalar((ps[(1) - (3)].val.opval));
|
|
- (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, (ps[(1) - (3)].val.opval), scalar((ps[(3) - (3)].val.opval)));
|
|
+#line 797 "perly.y" /* yacc.c:1646 */
|
|
+ { if ((ps[-1].val.ival) != OP_REPEAT)
|
|
+ scalar((ps[-2].val.opval));
|
|
+ (yyval.opval) = newBINOP((ps[-1].val.ival), 0, (ps[-2].val.opval), scalar((ps[0].val.opval)));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 135:
|
|
-#line 790 "perly.y"
|
|
- { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
|
|
+#line 802 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 136:
|
|
-#line 792 "perly.y"
|
|
- { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
|
|
+#line 804 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 137:
|
|
-#line 794 "perly.y"
|
|
- { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
|
|
+#line 806 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 138:
|
|
-#line 796 "perly.y"
|
|
- { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
|
|
+#line 808 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 139:
|
|
-#line 798 "perly.y"
|
|
- { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
|
|
+#line 810 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 140:
|
|
-#line 800 "perly.y"
|
|
- { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
|
|
+#line 812 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 141:
|
|
-#line 802 "perly.y"
|
|
- { (yyval.opval) = newRANGE((ps[(2) - (3)].val.ival), scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
|
|
+#line 814 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newRANGE((ps[-1].val.ival), scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 142:
|
|
-#line 804 "perly.y"
|
|
- { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); }
|
|
+#line 816 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[-2].val.opval), (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 143:
|
|
-#line 806 "perly.y"
|
|
- { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); }
|
|
+#line 818 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[-2].val.opval), (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 144:
|
|
-#line 808 "perly.y"
|
|
- { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); }
|
|
+#line 820 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[-2].val.opval), (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 145:
|
|
-#line 810 "perly.y"
|
|
- { (yyval.opval) = bind_match((ps[(2) - (3)].val.ival), (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval)); }
|
|
+#line 822 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = bind_match((ps[-1].val.ival), (ps[-2].val.opval), (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 146:
|
|
-#line 815 "perly.y"
|
|
- { (yyval.opval) = newUNOP(OP_NEGATE, 0, scalar((ps[(2) - (2)].val.opval))); }
|
|
+#line 827 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP(OP_NEGATE, 0, scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 147:
|
|
-#line 817 "perly.y"
|
|
- { (yyval.opval) = (ps[(2) - (2)].val.opval); }
|
|
+#line 829 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 148:
|
|
-#line 820 "perly.y"
|
|
- { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval))); }
|
|
+#line 832 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 149:
|
|
-#line 822 "perly.y"
|
|
- { (yyval.opval) = newUNOP((ps[(1) - (2)].val.ival), 0, scalar((ps[(2) - (2)].val.opval))); }
|
|
+#line 834 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP((ps[-1].val.ival), 0, scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 150:
|
|
-#line 824 "perly.y"
|
|
+#line 836 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newUNOP(OP_POSTINC, 0,
|
|
- op_lvalue(scalar((ps[(1) - (2)].val.opval)), OP_POSTINC)); }
|
|
+ op_lvalue(scalar((ps[-1].val.opval)), OP_POSTINC)); }
|
|
+
|
|
break;
|
|
|
|
case 151:
|
|
-#line 827 "perly.y"
|
|
+#line 839 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newUNOP(OP_POSTDEC, 0,
|
|
- op_lvalue(scalar((ps[(1) - (2)].val.opval)), OP_POSTDEC));}
|
|
+ op_lvalue(scalar((ps[-1].val.opval)), OP_POSTDEC));}
|
|
+
|
|
break;
|
|
|
|
case 152:
|
|
-#line 830 "perly.y"
|
|
+#line 842 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = op_convert_list(OP_JOIN, 0,
|
|
op_append_elem(
|
|
OP_LIST,
|
|
@@ -1032,510 +1184,598 @@ case 2:
|
|
newSVOP(OP_CONST,0,
|
|
newSVpvs("\""))
|
|
)),
|
|
- (ps[(1) - (2)].val.opval)
|
|
+ (ps[-1].val.opval)
|
|
));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 153:
|
|
-#line 841 "perly.y"
|
|
+#line 853 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newUNOP(OP_PREINC, 0,
|
|
- op_lvalue(scalar((ps[(2) - (2)].val.opval)), OP_PREINC)); }
|
|
+ op_lvalue(scalar((ps[0].val.opval)), OP_PREINC)); }
|
|
+
|
|
break;
|
|
|
|
case 154:
|
|
-#line 844 "perly.y"
|
|
+#line 856 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newUNOP(OP_PREDEC, 0,
|
|
- op_lvalue(scalar((ps[(2) - (2)].val.opval)), OP_PREDEC)); }
|
|
+ op_lvalue(scalar((ps[0].val.opval)), OP_PREDEC)); }
|
|
+
|
|
break;
|
|
|
|
case 155:
|
|
-#line 851 "perly.y"
|
|
- { (yyval.opval) = newANONLIST((ps[(2) - (3)].val.opval)); }
|
|
+#line 863 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newANONLIST((ps[-1].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 156:
|
|
-#line 853 "perly.y"
|
|
+#line 865 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newANONLIST((OP*)NULL);}
|
|
+
|
|
break;
|
|
|
|
case 157:
|
|
-#line 855 "perly.y"
|
|
- { (yyval.opval) = newANONHASH((ps[(2) - (4)].val.opval)); }
|
|
+#line 867 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newANONHASH((ps[-2].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 158:
|
|
-#line 857 "perly.y"
|
|
+#line 869 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newANONHASH((OP*)NULL); }
|
|
+
|
|
break;
|
|
|
|
case 159:
|
|
-#line 859 "perly.y"
|
|
+#line 871 "perly.y" /* yacc.c:1646 */
|
|
{ SvREFCNT_inc_simple_void(PL_compcv);
|
|
- (yyval.opval) = newANONATTRSUB((ps[(2) - (5)].val.ival), (ps[(3) - (5)].val.opval), (ps[(4) - (5)].val.opval), (ps[(5) - (5)].val.opval)); }
|
|
+ (yyval.opval) = newANONATTRSUB((ps[-3].val.ival), (ps[-2].val.opval), (ps[-1].val.opval), (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 160:
|
|
-#line 862 "perly.y"
|
|
+#line 874 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
OP *body;
|
|
- if (parser->copline > (line_t)(ps[(6) - (8)].val.ival))
|
|
- parser->copline = (line_t)(ps[(6) - (8)].val.ival);
|
|
- body = block_end((ps[(3) - (8)].val.ival),
|
|
- op_append_list(OP_LINESEQ, (ps[(4) - (8)].val.opval), (ps[(7) - (8)].val.opval)));
|
|
+ if (parser->copline > (line_t)(ps[-2].val.ival))
|
|
+ parser->copline = (line_t)(ps[-2].val.ival);
|
|
+ body = block_end((ps[-5].val.ival),
|
|
+ op_append_list(OP_LINESEQ, (ps[-4].val.opval), (ps[-1].val.opval)));
|
|
SvREFCNT_inc_simple_void(PL_compcv);
|
|
- (yyval.opval) = newANONATTRSUB((ps[(2) - (8)].val.ival), NULL, (ps[(5) - (8)].val.opval), body);
|
|
+ (yyval.opval) = newANONATTRSUB((ps[-6].val.ival), NULL, (ps[-3].val.opval), body);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 161:
|
|
-#line 876 "perly.y"
|
|
- { (yyval.opval) = dofile((ps[(2) - (2)].val.opval), (ps[(1) - (2)].val.ival));}
|
|
+#line 888 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = dofile((ps[0].val.opval), (ps[-1].val.ival));}
|
|
+
|
|
break;
|
|
|
|
case 162:
|
|
-#line 878 "perly.y"
|
|
- { (yyval.opval) = newUNOP(OP_NULL, OPf_SPECIAL, op_scope((ps[(2) - (2)].val.opval)));}
|
|
+#line 890 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP(OP_NULL, OPf_SPECIAL, op_scope((ps[0].val.opval)));}
|
|
+
|
|
break;
|
|
|
|
case 167:
|
|
-#line 886 "perly.y"
|
|
- { (yyval.opval) = newCONDOP(0, (ps[(1) - (5)].val.opval), (ps[(3) - (5)].val.opval), (ps[(5) - (5)].val.opval)); }
|
|
+#line 898 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newCONDOP(0, (ps[-4].val.opval), (ps[-2].val.opval), (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 168:
|
|
-#line 888 "perly.y"
|
|
- { (yyval.opval) = newUNOP(OP_REFGEN, 0, (ps[(2) - (2)].val.opval)); }
|
|
+#line 900 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP(OP_REFGEN, 0, (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 169:
|
|
-#line 890 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 902 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 170:
|
|
-#line 892 "perly.y"
|
|
- { (yyval.opval) = localize((ps[(2) - (2)].val.opval),(ps[(1) - (2)].val.ival)); }
|
|
+#line 904 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = localize((ps[0].val.opval),(ps[-1].val.ival)); }
|
|
+
|
|
break;
|
|
|
|
case 171:
|
|
-#line 894 "perly.y"
|
|
- { (yyval.opval) = sawparens((ps[(2) - (3)].val.opval)); }
|
|
+#line 906 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = sawparens((ps[-1].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 172:
|
|
-#line 896 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 908 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 173:
|
|
-#line 898 "perly.y"
|
|
+#line 910 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = sawparens(newNULLLIST()); }
|
|
+
|
|
break;
|
|
|
|
case 174:
|
|
-#line 900 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 912 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 175:
|
|
-#line 902 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 914 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 176:
|
|
-#line 904 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 916 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 177:
|
|
-#line 906 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 918 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 178:
|
|
-#line 908 "perly.y"
|
|
- { (yyval.opval) = newUNOP(OP_AV2ARYLEN, 0, ref((ps[(1) - (1)].val.opval), OP_AV2ARYLEN));}
|
|
+#line 920 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP(OP_AV2ARYLEN, 0, ref((ps[0].val.opval), OP_AV2ARYLEN));}
|
|
+
|
|
break;
|
|
|
|
case 179:
|
|
-#line 910 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 922 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 180:
|
|
-#line 912 "perly.y"
|
|
+#line 924 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = op_prepend_elem(OP_ASLICE,
|
|
newOP(OP_PUSHMARK, 0),
|
|
newLISTOP(OP_ASLICE, 0,
|
|
- list((ps[(3) - (4)].val.opval)),
|
|
- ref((ps[(1) - (4)].val.opval), OP_ASLICE)));
|
|
- if ((yyval.opval) && (ps[(1) - (4)].val.opval))
|
|
+ list((ps[-1].val.opval)),
|
|
+ ref((ps[-3].val.opval), OP_ASLICE)));
|
|
+ if ((yyval.opval) && (ps[-3].val.opval))
|
|
(yyval.opval)->op_private |=
|
|
- (ps[(1) - (4)].val.opval)->op_private & OPpSLICEWARNING;
|
|
+ (ps[-3].val.opval)->op_private & OPpSLICEWARNING;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 181:
|
|
-#line 922 "perly.y"
|
|
+#line 934 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = op_prepend_elem(OP_KVASLICE,
|
|
newOP(OP_PUSHMARK, 0),
|
|
newLISTOP(OP_KVASLICE, 0,
|
|
- list((ps[(3) - (4)].val.opval)),
|
|
- ref(oopsAV((ps[(1) - (4)].val.opval)), OP_KVASLICE)));
|
|
- if ((yyval.opval) && (ps[(1) - (4)].val.opval))
|
|
+ list((ps[-1].val.opval)),
|
|
+ ref(oopsAV((ps[-3].val.opval)), OP_KVASLICE)));
|
|
+ if ((yyval.opval) && (ps[-3].val.opval))
|
|
(yyval.opval)->op_private |=
|
|
- (ps[(1) - (4)].val.opval)->op_private & OPpSLICEWARNING;
|
|
+ (ps[-3].val.opval)->op_private & OPpSLICEWARNING;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 182:
|
|
-#line 932 "perly.y"
|
|
+#line 944 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = op_prepend_elem(OP_HSLICE,
|
|
newOP(OP_PUSHMARK, 0),
|
|
newLISTOP(OP_HSLICE, 0,
|
|
- list((ps[(3) - (5)].val.opval)),
|
|
- ref(oopsHV((ps[(1) - (5)].val.opval)), OP_HSLICE)));
|
|
- if ((yyval.opval) && (ps[(1) - (5)].val.opval))
|
|
+ list((ps[-2].val.opval)),
|
|
+ ref(oopsHV((ps[-4].val.opval)), OP_HSLICE)));
|
|
+ if ((yyval.opval) && (ps[-4].val.opval))
|
|
(yyval.opval)->op_private |=
|
|
- (ps[(1) - (5)].val.opval)->op_private & OPpSLICEWARNING;
|
|
+ (ps[-4].val.opval)->op_private & OPpSLICEWARNING;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 183:
|
|
-#line 942 "perly.y"
|
|
+#line 954 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = op_prepend_elem(OP_KVHSLICE,
|
|
newOP(OP_PUSHMARK, 0),
|
|
newLISTOP(OP_KVHSLICE, 0,
|
|
- list((ps[(3) - (5)].val.opval)),
|
|
- ref((ps[(1) - (5)].val.opval), OP_KVHSLICE)));
|
|
- if ((yyval.opval) && (ps[(1) - (5)].val.opval))
|
|
+ list((ps[-2].val.opval)),
|
|
+ ref((ps[-4].val.opval), OP_KVHSLICE)));
|
|
+ if ((yyval.opval) && (ps[-4].val.opval))
|
|
(yyval.opval)->op_private |=
|
|
- (ps[(1) - (5)].val.opval)->op_private & OPpSLICEWARNING;
|
|
+ (ps[-4].val.opval)->op_private & OPpSLICEWARNING;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 184:
|
|
-#line 952 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 964 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 185:
|
|
-#line 954 "perly.y"
|
|
- { (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar((ps[(1) - (1)].val.opval))); }
|
|
+#line 966 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 186:
|
|
-#line 956 "perly.y"
|
|
- { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (3)].val.opval)));
|
|
+#line 968 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[-2].val.opval)));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 187:
|
|
-#line 959 "perly.y"
|
|
+#line 971 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
(yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
|
|
- op_append_elem(OP_LIST, (ps[(3) - (4)].val.opval), scalar((ps[(1) - (4)].val.opval))));
|
|
+ op_append_elem(OP_LIST, (ps[-1].val.opval), scalar((ps[-3].val.opval))));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 188:
|
|
-#line 964 "perly.y"
|
|
+#line 976 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
|
|
- op_append_elem(OP_LIST, (ps[(3) - (3)].val.opval), scalar((ps[(2) - (3)].val.opval))));
|
|
+ op_append_elem(OP_LIST, (ps[0].val.opval), scalar((ps[-1].val.opval))));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 189:
|
|
-#line 968 "perly.y"
|
|
- { (yyval.opval) = newSVREF((ps[(1) - (4)].val.opval)); }
|
|
+#line 980 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newSVREF((ps[-3].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 190:
|
|
-#line 970 "perly.y"
|
|
- { (yyval.opval) = newAVREF((ps[(1) - (4)].val.opval)); }
|
|
+#line 982 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newAVREF((ps[-3].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 191:
|
|
-#line 972 "perly.y"
|
|
- { (yyval.opval) = newHVREF((ps[(1) - (4)].val.opval)); }
|
|
+#line 984 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newHVREF((ps[-3].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 192:
|
|
-#line 974 "perly.y"
|
|
+#line 986 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = newUNOP(OP_ENTERSUB, 0,
|
|
- scalar(newCVREF((ps[(3) - (4)].val.ival),(ps[(1) - (4)].val.opval)))); }
|
|
+ scalar(newCVREF((ps[-1].val.ival),(ps[-3].val.opval)))); }
|
|
+
|
|
break;
|
|
|
|
case 193:
|
|
-#line 977 "perly.y"
|
|
- { (yyval.opval) = newGVREF(0,(ps[(1) - (4)].val.opval)); }
|
|
+#line 989 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newGVREF(0,(ps[-3].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 194:
|
|
-#line 979 "perly.y"
|
|
- { (yyval.opval) = newOP((ps[(1) - (1)].val.ival), OPf_SPECIAL);
|
|
+#line 991 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newOP((ps[0].val.ival), OPf_SPECIAL);
|
|
PL_hints |= HINT_BLOCK_SCOPE; }
|
|
+
|
|
break;
|
|
|
|
case 195:
|
|
-#line 982 "perly.y"
|
|
- { (yyval.opval) = newLOOPEX((ps[(1) - (2)].val.ival),(ps[(2) - (2)].val.opval)); }
|
|
+#line 994 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newLOOPEX((ps[-1].val.ival),(ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 196:
|
|
-#line 984 "perly.y"
|
|
- { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval))); }
|
|
+#line 996 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 197:
|
|
-#line 986 "perly.y"
|
|
- { (yyval.opval) = newOP((ps[(1) - (1)].val.ival), 0); }
|
|
+#line 998 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newOP((ps[0].val.ival), 0); }
|
|
+
|
|
break;
|
|
|
|
case 198:
|
|
-#line 988 "perly.y"
|
|
- { (yyval.opval) = newUNOP((ps[(1) - (2)].val.ival), 0, (ps[(2) - (2)].val.opval)); }
|
|
+#line 1000 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP((ps[-1].val.ival), 0, (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 199:
|
|
-#line 990 "perly.y"
|
|
- { (yyval.opval) = newUNOP((ps[(1) - (2)].val.ival), 0, (ps[(2) - (2)].val.opval)); }
|
|
+#line 1002 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP((ps[-1].val.ival), 0, (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 200:
|
|
-#line 992 "perly.y"
|
|
- { (yyval.opval) = newOP(OP_REQUIRE, (ps[(1) - (1)].val.ival) ? OPf_SPECIAL : 0); }
|
|
+#line 1004 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newOP(OP_REQUIRE, (ps[0].val.ival) ? OPf_SPECIAL : 0); }
|
|
+
|
|
break;
|
|
|
|
case 201:
|
|
-#line 994 "perly.y"
|
|
- { (yyval.opval) = newUNOP(OP_REQUIRE, (ps[(1) - (2)].val.ival) ? OPf_SPECIAL : 0, (ps[(2) - (2)].val.opval)); }
|
|
+#line 1006 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP(OP_REQUIRE, (ps[-1].val.ival) ? OPf_SPECIAL : 0, (ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 202:
|
|
-#line 996 "perly.y"
|
|
- { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (1)].val.opval))); }
|
|
+#line 1008 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 203:
|
|
-#line 998 "perly.y"
|
|
+#line 1010 "perly.y" /* yacc.c:1646 */
|
|
{ (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[0].val.opval), scalar((ps[-1].val.opval)))); }
|
|
+
|
|
break;
|
|
|
|
case 204:
|
|
-#line 1001 "perly.y"
|
|
- { (yyval.opval) = newOP((ps[(1) - (1)].val.ival), 0); }
|
|
+#line 1013 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newOP((ps[0].val.ival), 0); }
|
|
+
|
|
break;
|
|
|
|
case 205:
|
|
-#line 1003 "perly.y"
|
|
- { (yyval.opval) = newOP((ps[(1) - (3)].val.ival), 0);}
|
|
+#line 1015 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newOP((ps[-2].val.ival), 0);}
|
|
+
|
|
break;
|
|
|
|
case 206:
|
|
-#line 1005 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 1017 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 207:
|
|
-#line 1007 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (3)].val.opval); }
|
|
+#line 1019 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[-2].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 208:
|
|
-#line 1009 "perly.y"
|
|
- { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (1)].val.opval))); }
|
|
+#line 1021 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[0].val.opval))); }
|
|
+
|
|
break;
|
|
|
|
case 209:
|
|
-#line 1011 "perly.y"
|
|
- { (yyval.opval) = ((ps[(1) - (3)].val.ival) == OP_NOT)
|
|
- ? newUNOP((ps[(1) - (3)].val.ival), 0, newSVOP(OP_CONST, 0, newSViv(0)))
|
|
- : newOP((ps[(1) - (3)].val.ival), OPf_SPECIAL); }
|
|
+#line 1023 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = ((ps[-2].val.ival) == OP_NOT)
|
|
+ ? newUNOP((ps[-2].val.ival), 0, newSVOP(OP_CONST, 0, newSViv(0)))
|
|
+ : newOP((ps[-2].val.ival), OPf_SPECIAL); }
|
|
+
|
|
break;
|
|
|
|
case 210:
|
|
-#line 1015 "perly.y"
|
|
- { (yyval.opval) = newUNOP((ps[(1) - (4)].val.ival), 0, (ps[(3) - (4)].val.opval)); }
|
|
+#line 1027 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newUNOP((ps[-3].val.ival), 0, (ps[-1].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 211:
|
|
-#line 1017 "perly.y"
|
|
+#line 1029 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
- if ( (ps[(1) - (1)].val.opval)->op_type != OP_TRANS
|
|
- && (ps[(1) - (1)].val.opval)->op_type != OP_TRANSR
|
|
- && (((PMOP*)(ps[(1) - (1)].val.opval))->op_pmflags & PMf_HAS_CV))
|
|
+ if ( (ps[0].val.opval)->op_type != OP_TRANS
|
|
+ && (ps[0].val.opval)->op_type != OP_TRANSR
|
|
+ && (((PMOP*)(ps[0].val.opval))->op_pmflags & PMf_HAS_CV))
|
|
{
|
|
(yyval.ival) = start_subparse(FALSE, CVf_ANON);
|
|
SAVEFREESV(PL_compcv);
|
|
} else
|
|
(yyval.ival) = 0;
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 212:
|
|
-#line 1028 "perly.y"
|
|
- { (yyval.opval) = pmruntime((ps[(1) - (6)].val.opval), (ps[(4) - (6)].val.opval), (ps[(5) - (6)].val.opval), 1, (ps[(2) - (6)].val.ival)); }
|
|
+#line 1040 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = pmruntime((ps[-5].val.opval), (ps[-2].val.opval), (ps[-1].val.opval), 1, (ps[-4].val.ival)); }
|
|
+
|
|
break;
|
|
|
|
case 215:
|
|
-#line 1032 "perly.y"
|
|
+#line 1044 "perly.y" /* yacc.c:1646 */
|
|
{
|
|
(yyval.opval) = newLISTOP(OP_DIE, 0, newOP(OP_PUSHMARK, 0),
|
|
newSVOP(OP_CONST, 0, newSVpvs("Unimplemented")));
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 217:
|
|
-#line 1041 "perly.y"
|
|
- { (yyval.opval) = my_attrs((ps[(2) - (3)].val.opval),(ps[(3) - (3)].val.opval)); }
|
|
+#line 1053 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = my_attrs((ps[-1].val.opval),(ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 218:
|
|
-#line 1043 "perly.y"
|
|
- { (yyval.opval) = localize((ps[(2) - (2)].val.opval),(ps[(1) - (2)].val.ival)); }
|
|
+#line 1055 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = localize((ps[0].val.opval),(ps[-1].val.ival)); }
|
|
+
|
|
break;
|
|
|
|
case 219:
|
|
-#line 1048 "perly.y"
|
|
- { (yyval.opval) = sawparens((ps[(2) - (3)].val.opval)); }
|
|
+#line 1060 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = sawparens((ps[-1].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 220:
|
|
-#line 1050 "perly.y"
|
|
+#line 1062 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = sawparens(newNULLLIST()); }
|
|
+
|
|
break;
|
|
|
|
case 221:
|
|
-#line 1053 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 1065 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 222:
|
|
-#line 1055 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 1067 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 223:
|
|
-#line 1057 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 1069 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 224:
|
|
-#line 1062 "perly.y"
|
|
+#line 1074 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 225:
|
|
-#line 1064 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 1076 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 226:
|
|
-#line 1068 "perly.y"
|
|
+#line 1080 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 227:
|
|
-#line 1070 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 1082 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 228:
|
|
-#line 1074 "perly.y"
|
|
+#line 1086 "perly.y" /* yacc.c:1646 */
|
|
{ (yyval.opval) = (OP*)NULL; }
|
|
+
|
|
break;
|
|
|
|
case 229:
|
|
-#line 1076 "perly.y"
|
|
- { (yyval.opval) = (ps[(2) - (2)].val.opval); }
|
|
+#line 1088 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
case 230:
|
|
-#line 1082 "perly.y"
|
|
- { parser->in_my = 0; (yyval.opval) = my((ps[(1) - (1)].val.opval)); }
|
|
+#line 1094 "perly.y" /* yacc.c:1646 */
|
|
+ { parser->in_my = 0; (yyval.opval) = my((ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 236:
|
|
-#line 1095 "perly.y"
|
|
- { (yyval.opval) = newCVREF((ps[(1) - (2)].val.ival),(ps[(2) - (2)].val.opval)); }
|
|
+#line 1107 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newCVREF((ps[-1].val.ival),(ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 237:
|
|
-#line 1099 "perly.y"
|
|
- { (yyval.opval) = newSVREF((ps[(2) - (2)].val.opval)); }
|
|
+#line 1111 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newSVREF((ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 238:
|
|
-#line 1103 "perly.y"
|
|
- { (yyval.opval) = newAVREF((ps[(2) - (2)].val.opval));
|
|
- if ((yyval.opval)) (yyval.opval)->op_private |= (ps[(1) - (2)].val.ival);
|
|
+#line 1115 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newAVREF((ps[0].val.opval));
|
|
+ if ((yyval.opval)) (yyval.opval)->op_private |= (ps[-1].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 239:
|
|
-#line 1109 "perly.y"
|
|
- { (yyval.opval) = newHVREF((ps[(2) - (2)].val.opval));
|
|
- if ((yyval.opval)) (yyval.opval)->op_private |= (ps[(1) - (2)].val.ival);
|
|
+#line 1121 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newHVREF((ps[0].val.opval));
|
|
+ if ((yyval.opval)) (yyval.opval)->op_private |= (ps[-1].val.ival);
|
|
}
|
|
+
|
|
break;
|
|
|
|
case 240:
|
|
-#line 1115 "perly.y"
|
|
- { (yyval.opval) = newAVREF((ps[(2) - (2)].val.opval)); }
|
|
+#line 1127 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newAVREF((ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 241:
|
|
-#line 1117 "perly.y"
|
|
- { (yyval.opval) = newAVREF((ps[(1) - (4)].val.opval)); }
|
|
+#line 1129 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newAVREF((ps[-3].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 242:
|
|
-#line 1121 "perly.y"
|
|
- { (yyval.opval) = newGVREF(0,(ps[(2) - (2)].val.opval)); }
|
|
+#line 1133 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newGVREF(0,(ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 244:
|
|
-#line 1126 "perly.y"
|
|
- { (yyval.opval) = newAVREF((ps[(1) - (3)].val.opval)); }
|
|
+#line 1138 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newAVREF((ps[-2].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 246:
|
|
-#line 1131 "perly.y"
|
|
- { (yyval.opval) = newHVREF((ps[(1) - (3)].val.opval)); }
|
|
+#line 1143 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newHVREF((ps[-2].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 248:
|
|
-#line 1136 "perly.y"
|
|
- { (yyval.opval) = newGVREF(0,(ps[(1) - (3)].val.opval)); }
|
|
+#line 1148 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = newGVREF(0,(ps[-2].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 249:
|
|
-#line 1141 "perly.y"
|
|
- { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); }
|
|
+#line 1153 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = scalar((ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 250:
|
|
-#line 1143 "perly.y"
|
|
- { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); }
|
|
+#line 1155 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = scalar((ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 251:
|
|
-#line 1145 "perly.y"
|
|
- { (yyval.opval) = op_scope((ps[(1) - (1)].val.opval)); }
|
|
+#line 1157 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = op_scope((ps[0].val.opval)); }
|
|
+
|
|
break;
|
|
|
|
case 252:
|
|
-#line 1148 "perly.y"
|
|
- { (yyval.opval) = (ps[(1) - (1)].val.opval); }
|
|
+#line 1160 "perly.y" /* yacc.c:1646 */
|
|
+ { (yyval.opval) = (ps[0].val.opval); }
|
|
+
|
|
break;
|
|
|
|
+
|
|
+
|
|
default: break;
|
|
|
|
|
|
/* Generated from:
|
|
- * 703ebd267cf8ca45f9dee9bc0f4b21511117a0c1dca1c8bc9438ce91950217ae perly.y
|
|
+ * 4fd37fdbff6285ba6e9096c2229255ecc6264d2f26835e535cf1c38f387ceae6 perly.y
|
|
* a4923588f219644801577c514014847e1e5240f49413fa3b89d3306fa4874d07 regen_perly.pl
|
|
* ex: set ro: */
|
|
diff --git a/perly.h b/perly.h
|
|
index acbdaae..4ecd16e 100644
|
|
--- a/perly.h
|
|
+++ b/perly.h
|
|
@@ -1,28 +1,28 @@
|
|
/* -*- buffer-read-only: t -*-
|
|
!!!!!!! DO NOT EDIT THIS FILE !!!!!!!
|
|
- This file is built by regen_perly.pl from perly.y.
|
|
+ This file is built by ./regen_perly.pl from perly.y.
|
|
Any changes made here will be lost!
|
|
*/
|
|
|
|
-#define PERL_BISON_VERSION 20007
|
|
+#define PERL_BISON_VERSION 30000
|
|
|
|
#ifdef PERL_CORE
|
|
-/* A Bison parser, made by GNU Bison 2.7. */
|
|
+/* A Bison parser, made by GNU Bison 3.0.4. */
|
|
|
|
/* Bison interface for Yacc-like parsers in C
|
|
-
|
|
- Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc.
|
|
-
|
|
+
|
|
+ Copyright (C) 1984, 1989-1990, 2000-2015 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 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, see <http://www.gnu.org/licenses/>. */
|
|
|
|
@@ -35,11 +35,11 @@
|
|
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. */
|
|
+/* Debug traces. */
|
|
#ifndef YYDEBUG
|
|
# define YYDEBUG 0
|
|
#endif
|
|
@@ -47,178 +47,95 @@
|
|
extern int yydebug;
|
|
#endif
|
|
|
|
-/* Tokens. */
|
|
+/* Token type. */
|
|
#ifndef YYTOKENTYPE
|
|
# define YYTOKENTYPE
|
|
- /* Put the tokens into the symbol table, so that GDB and other debuggers
|
|
- know about them. */
|
|
- enum yytokentype {
|
|
- GRAMPROG = 258,
|
|
- GRAMEXPR = 259,
|
|
- GRAMBLOCK = 260,
|
|
- GRAMBARESTMT = 261,
|
|
- GRAMFULLSTMT = 262,
|
|
- GRAMSTMTSEQ = 263,
|
|
- WORD = 264,
|
|
- METHOD = 265,
|
|
- FUNCMETH = 266,
|
|
- THING = 267,
|
|
- PMFUNC = 268,
|
|
- PRIVATEREF = 269,
|
|
- QWLIST = 270,
|
|
- FUNC0OP = 271,
|
|
- FUNC0SUB = 272,
|
|
- UNIOPSUB = 273,
|
|
- LSTOPSUB = 274,
|
|
- PLUGEXPR = 275,
|
|
- PLUGSTMT = 276,
|
|
- LABEL = 277,
|
|
- FORMAT = 278,
|
|
- SUB = 279,
|
|
- ANONSUB = 280,
|
|
- PACKAGE = 281,
|
|
- USE = 282,
|
|
- WHILE = 283,
|
|
- UNTIL = 284,
|
|
- IF = 285,
|
|
- UNLESS = 286,
|
|
- ELSE = 287,
|
|
- ELSIF = 288,
|
|
- CONTINUE = 289,
|
|
- FOR = 290,
|
|
- GIVEN = 291,
|
|
- WHEN = 292,
|
|
- DEFAULT = 293,
|
|
- LOOPEX = 294,
|
|
- DOTDOT = 295,
|
|
- YADAYADA = 296,
|
|
- FUNC0 = 297,
|
|
- FUNC1 = 298,
|
|
- FUNC = 299,
|
|
- UNIOP = 300,
|
|
- LSTOP = 301,
|
|
- RELOP = 302,
|
|
- EQOP = 303,
|
|
- MULOP = 304,
|
|
- ADDOP = 305,
|
|
- DOLSHARP = 306,
|
|
- DO = 307,
|
|
- HASHBRACK = 308,
|
|
- NOAMP = 309,
|
|
- LOCAL = 310,
|
|
- MY = 311,
|
|
- REQUIRE = 312,
|
|
- COLONATTR = 313,
|
|
- FORMLBRACK = 314,
|
|
- FORMRBRACK = 315,
|
|
- PREC_LOW = 316,
|
|
- DOROP = 317,
|
|
- OROP = 318,
|
|
- ANDOP = 319,
|
|
- NOTOP = 320,
|
|
- ASSIGNOP = 321,
|
|
- DORDOR = 322,
|
|
- OROR = 323,
|
|
- ANDAND = 324,
|
|
- BITOROP = 325,
|
|
- BITANDOP = 326,
|
|
- SHIFTOP = 327,
|
|
- MATCHOP = 328,
|
|
- REFGEN = 329,
|
|
- UMINUS = 330,
|
|
- POWOP = 331,
|
|
- POSTJOIN = 332,
|
|
- POSTDEC = 333,
|
|
- POSTINC = 334,
|
|
- PREDEC = 335,
|
|
- PREINC = 336,
|
|
- ARROW = 337
|
|
- };
|
|
+ enum yytokentype
|
|
+ {
|
|
+ GRAMPROG = 258,
|
|
+ GRAMEXPR = 259,
|
|
+ GRAMBLOCK = 260,
|
|
+ GRAMBARESTMT = 261,
|
|
+ GRAMFULLSTMT = 262,
|
|
+ GRAMSTMTSEQ = 263,
|
|
+ WORD = 264,
|
|
+ METHOD = 265,
|
|
+ FUNCMETH = 266,
|
|
+ THING = 267,
|
|
+ PMFUNC = 268,
|
|
+ PRIVATEREF = 269,
|
|
+ QWLIST = 270,
|
|
+ FUNC0OP = 271,
|
|
+ FUNC0SUB = 272,
|
|
+ UNIOPSUB = 273,
|
|
+ LSTOPSUB = 274,
|
|
+ PLUGEXPR = 275,
|
|
+ PLUGSTMT = 276,
|
|
+ LABEL = 277,
|
|
+ FORMAT = 278,
|
|
+ SUB = 279,
|
|
+ ANONSUB = 280,
|
|
+ PACKAGE = 281,
|
|
+ USE = 282,
|
|
+ WHILE = 283,
|
|
+ UNTIL = 284,
|
|
+ IF = 285,
|
|
+ UNLESS = 286,
|
|
+ ELSE = 287,
|
|
+ ELSIF = 288,
|
|
+ CONTINUE = 289,
|
|
+ FOR = 290,
|
|
+ GIVEN = 291,
|
|
+ WHEN = 292,
|
|
+ DEFAULT = 293,
|
|
+ LOOPEX = 294,
|
|
+ DOTDOT = 295,
|
|
+ YADAYADA = 296,
|
|
+ FUNC0 = 297,
|
|
+ FUNC1 = 298,
|
|
+ FUNC = 299,
|
|
+ UNIOP = 300,
|
|
+ LSTOP = 301,
|
|
+ RELOP = 302,
|
|
+ EQOP = 303,
|
|
+ MULOP = 304,
|
|
+ ADDOP = 305,
|
|
+ DOLSHARP = 306,
|
|
+ DO = 307,
|
|
+ HASHBRACK = 308,
|
|
+ NOAMP = 309,
|
|
+ LOCAL = 310,
|
|
+ MY = 311,
|
|
+ REQUIRE = 312,
|
|
+ COLONATTR = 313,
|
|
+ FORMLBRACK = 314,
|
|
+ FORMRBRACK = 315,
|
|
+ PREC_LOW = 316,
|
|
+ OROP = 317,
|
|
+ DOROP = 318,
|
|
+ ANDOP = 319,
|
|
+ NOTOP = 320,
|
|
+ ASSIGNOP = 321,
|
|
+ OROR = 322,
|
|
+ DORDOR = 323,
|
|
+ ANDAND = 324,
|
|
+ BITOROP = 325,
|
|
+ BITANDOP = 326,
|
|
+ SHIFTOP = 327,
|
|
+ MATCHOP = 328,
|
|
+ UMINUS = 329,
|
|
+ REFGEN = 330,
|
|
+ POWOP = 331,
|
|
+ PREINC = 332,
|
|
+ PREDEC = 333,
|
|
+ POSTINC = 334,
|
|
+ POSTDEC = 335,
|
|
+ POSTJOIN = 336,
|
|
+ ARROW = 337
|
|
+ };
|
|
#endif
|
|
|
|
-/* Tokens. */
|
|
-#define GRAMPROG 258
|
|
-#define GRAMEXPR 259
|
|
-#define GRAMBLOCK 260
|
|
-#define GRAMBARESTMT 261
|
|
-#define GRAMFULLSTMT 262
|
|
-#define GRAMSTMTSEQ 263
|
|
-#define WORD 264
|
|
-#define METHOD 265
|
|
-#define FUNCMETH 266
|
|
-#define THING 267
|
|
-#define PMFUNC 268
|
|
-#define PRIVATEREF 269
|
|
-#define QWLIST 270
|
|
-#define FUNC0OP 271
|
|
-#define FUNC0SUB 272
|
|
-#define UNIOPSUB 273
|
|
-#define LSTOPSUB 274
|
|
-#define PLUGEXPR 275
|
|
-#define PLUGSTMT 276
|
|
-#define LABEL 277
|
|
-#define FORMAT 278
|
|
-#define SUB 279
|
|
-#define ANONSUB 280
|
|
-#define PACKAGE 281
|
|
-#define USE 282
|
|
-#define WHILE 283
|
|
-#define UNTIL 284
|
|
-#define IF 285
|
|
-#define UNLESS 286
|
|
-#define ELSE 287
|
|
-#define ELSIF 288
|
|
-#define CONTINUE 289
|
|
-#define FOR 290
|
|
-#define GIVEN 291
|
|
-#define WHEN 292
|
|
-#define DEFAULT 293
|
|
-#define LOOPEX 294
|
|
-#define DOTDOT 295
|
|
-#define YADAYADA 296
|
|
-#define FUNC0 297
|
|
-#define FUNC1 298
|
|
-#define FUNC 299
|
|
-#define UNIOP 300
|
|
-#define LSTOP 301
|
|
-#define RELOP 302
|
|
-#define EQOP 303
|
|
-#define MULOP 304
|
|
-#define ADDOP 305
|
|
-#define DOLSHARP 306
|
|
-#define DO 307
|
|
-#define HASHBRACK 308
|
|
-#define NOAMP 309
|
|
-#define LOCAL 310
|
|
-#define MY 311
|
|
-#define REQUIRE 312
|
|
-#define COLONATTR 313
|
|
-#define FORMLBRACK 314
|
|
-#define FORMRBRACK 315
|
|
-#define PREC_LOW 316
|
|
-#define DOROP 317
|
|
-#define OROP 318
|
|
-#define ANDOP 319
|
|
-#define NOTOP 320
|
|
-#define ASSIGNOP 321
|
|
-#define DORDOR 322
|
|
-#define OROR 323
|
|
-#define ANDAND 324
|
|
-#define BITOROP 325
|
|
-#define BITANDOP 326
|
|
-#define SHIFTOP 327
|
|
-#define MATCHOP 328
|
|
-#define REFGEN 329
|
|
-#define UMINUS 330
|
|
-#define POWOP 331
|
|
-#define POSTJOIN 332
|
|
-#define POSTDEC 333
|
|
-#define POSTINC 334
|
|
-#define PREDEC 335
|
|
-#define PREINC 336
|
|
-#define ARROW 337
|
|
-
|
|
-
|
|
+/* Value type. */
|
|
#ifdef PERL_IN_TOKE_C
|
|
static bool
|
|
S_is_opval_token(int type) {
|
|
@@ -243,9 +160,9 @@ S_is_opval_token(int type) {
|
|
#endif /* PERL_IN_TOKE_C */
|
|
#endif /* PERL_CORE */
|
|
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
|
|
-typedef union YYSTYPE
|
|
+
|
|
+union YYSTYPE
|
|
{
|
|
-/* Line 2058 of yacc.c */
|
|
|
|
I32 ival; /* __DEFAULT__ (marker for regen_perly.pl;
|
|
must always be 1st union member) */
|
|
@@ -253,31 +170,19 @@ typedef union YYSTYPE
|
|
OP *opval;
|
|
GV *gvval;
|
|
|
|
+};
|
|
|
|
-/* Line 2058 of yacc.c */
|
|
-} YYSTYPE;
|
|
+typedef union YYSTYPE YYSTYPE;
|
|
# define YYSTYPE_IS_TRIVIAL 1
|
|
-# define yystype YYSTYPE /* obsolescent; will be withdrawn */
|
|
# define YYSTYPE_IS_DECLARED 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:
|
|
- * 703ebd267cf8ca45f9dee9bc0f4b21511117a0c1dca1c8bc9438ce91950217ae perly.y
|
|
+ * 4fd37fdbff6285ba6e9096c2229255ecc6264d2f26835e535cf1c38f387ceae6 perly.y
|
|
* a4923588f219644801577c514014847e1e5240f49413fa3b89d3306fa4874d07 regen_perly.pl
|
|
* ex: set ro: */
|
|
diff --git a/perly.tab b/perly.tab
|
|
index f5a9580..ac88c85 100644
|
|
--- a/perly.tab
|
|
+++ b/perly.tab
|
|
@@ -1,12 +1,12 @@
|
|
/* -*- buffer-read-only: t -*-
|
|
!!!!!!! DO NOT EDIT THIS FILE !!!!!!!
|
|
- This file is built by regen_perly.pl from perly.y.
|
|
+ This file is built by ./regen_perly.pl from perly.y.
|
|
Any changes made here will be lost!
|
|
*/
|
|
|
|
#define YYFINAL 14
|
|
/* YYLAST -- Last index in YYTABLE. */
|
|
-#define YYLAST 2913
|
|
+#define YYLAST 2896
|
|
|
|
/* YYNTOKENS -- Number of terminals. */
|
|
#define YYNTOKENS 105
|
|
@@ -14,17 +14,19 @@
|
|
#define YYNNTS 77
|
|
/* YYNRULES -- Number of rules. */
|
|
#define YYNRULES 252
|
|
-/* YYNRULES -- Number of states. */
|
|
+/* YYNSTATES -- Number of states. */
|
|
#define YYNSTATES 508
|
|
|
|
-/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
|
|
+/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
|
|
+ by yylex, with out-of-bounds checking. */
|
|
#define YYUNDEFTOK 2
|
|
#define YYMAXUTOK 337
|
|
|
|
-#define YYTRANSLATE(YYX) \
|
|
+#define YYTRANSLATE(YYX) \
|
|
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
|
|
|
|
-/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
|
|
+/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
|
|
+ as returned by yylex, without out-of-bounds checking. */
|
|
static const yytype_uint8 yytranslate[] =
|
|
{
|
|
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
|
|
@@ -64,133 +66,7 @@ static const yytype_uint8 yytranslate[] =
|
|
};
|
|
|
|
#if YYDEBUG
|
|
-/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
|
|
- YYRHS. */
|
|
-static const yytype_uint16 yyprhs[] =
|
|
-{
|
|
- 0, 0, 3, 4, 9, 10, 14, 15, 19, 20,
|
|
- 24, 25, 29, 30, 34, 39, 47, 48, 53, 54,
|
|
- 55, 58, 59, 62, 64, 66, 69, 72, 74, 79,
|
|
- 80, 88, 89, 100, 105, 106, 114, 122, 130, 137,
|
|
- 144, 147, 156, 165, 166, 167, 181, 191, 200, 201,
|
|
- 213, 223, 231, 234, 235, 244, 247, 249, 252, 253,
|
|
- 257, 259, 261, 265, 269, 273, 277, 281, 285, 286,
|
|
- 289, 296, 297, 300, 301, 302, 304, 305, 307, 309,
|
|
- 311, 313, 315, 316, 317, 318, 319, 321, 323, 324,
|
|
- 326, 327, 330, 332, 335, 337, 338, 342, 344, 346,
|
|
- 350, 354, 358, 360, 363, 367, 369, 373, 379, 386,
|
|
- 390, 394, 400, 403, 408, 409, 415, 417, 419, 425,
|
|
- 430, 436, 441, 447, 454, 460, 465, 471, 476, 480,
|
|
- 487, 492, 498, 502, 506, 510, 514, 518, 522, 526,
|
|
- 530, 534, 538, 542, 546, 550, 554, 557, 560, 563,
|
|
- 566, 569, 572, 575, 578, 581, 585, 588, 593, 597,
|
|
- 603, 612, 615, 618, 620, 622, 624, 626, 632, 635,
|
|
- 637, 640, 644, 646, 649, 651, 653, 655, 657, 659,
|
|
- 661, 666, 671, 677, 683, 685, 687, 691, 696, 700,
|
|
- 705, 710, 715, 720, 725, 727, 730, 733, 735, 738,
|
|
- 741, 743, 746, 748, 751, 753, 757, 759, 763, 765,
|
|
- 769, 774, 775, 782, 784, 786, 788, 790, 794, 797,
|
|
- 801, 804, 806, 808, 810, 811, 813, 814, 816, 817,
|
|
- 820, 822, 824, 826, 828, 830, 832, 835, 838, 841,
|
|
- 844, 847, 852, 855, 857, 861, 863, 867, 869, 873,
|
|
- 875, 877, 879
|
|
-};
|
|
-
|
|
-/* YYRHS -- A `-1'-separated list of the rules' RHS. */
|
|
-static const yytype_int16 yyrhs[] =
|
|
-{
|
|
- 106, 0, -1, -1, 3, 107, 115, 118, -1, -1,
|
|
- 4, 108, 167, -1, -1, 5, 109, 113, -1, -1,
|
|
- 6, 110, 122, -1, -1, 7, 111, 120, -1, -1,
|
|
- 8, 112, 118, -1, 9, 115, 118, 10, -1, 18,
|
|
- 115, 101, 71, 119, 101, 19, -1, -1, 9, 117,
|
|
- 118, 10, -1, -1, -1, 118, 120, -1, -1, 119,
|
|
- 130, -1, 122, -1, 121, -1, 33, 122, -1, 33,
|
|
- 121, -1, 32, -1, 34, 144, 141, 114, -1, -1,
|
|
- 35, 145, 142, 123, 146, 147, 151, -1, -1, 35,
|
|
- 145, 142, 124, 115, 149, 147, 9, 118, 10, -1,
|
|
- 37, 20, 20, 101, -1, -1, 38, 142, 125, 20,
|
|
- 20, 166, 101, -1, 41, 100, 115, 139, 99, 116,
|
|
- 133, -1, 42, 100, 115, 139, 99, 116, 133, -1,
|
|
- 47, 100, 115, 139, 99, 116, -1, 48, 100, 115,
|
|
- 139, 99, 116, -1, 49, 113, -1, 39, 100, 115,
|
|
- 137, 99, 135, 116, 134, -1, 40, 100, 115, 138,
|
|
- 99, 135, 116, 134, -1, -1, -1, 46, 100, 115,
|
|
- 140, 101, 126, 137, 101, 127, 135, 140, 99, 116,
|
|
- -1, 46, 67, 115, 169, 100, 139, 99, 116, 134,
|
|
- -1, 46, 173, 100, 115, 139, 99, 116, 134, -1,
|
|
- -1, 46, 90, 67, 115, 170, 128, 100, 139, 99,
|
|
- 116, 134, -1, 46, 90, 171, 100, 115, 139, 99,
|
|
- 116, 134, -1, 46, 100, 115, 139, 99, 116, 134,
|
|
- -1, 113, 134, -1, -1, 37, 20, 20, 9, 115,
|
|
- 129, 118, 10, -1, 132, 101, -1, 101, -1, 23,
|
|
- 131, -1, -1, 70, 118, 71, -1, 1, -1, 152,
|
|
- -1, 152, 41, 152, -1, 152, 42, 152, -1, 152,
|
|
- 39, 152, -1, 152, 40, 138, -1, 152, 46, 152,
|
|
- -1, 152, 48, 152, -1, -1, 43, 116, -1, 44,
|
|
- 100, 139, 99, 116, 133, -1, -1, 45, 113, -1,
|
|
- -1, -1, 132, -1, -1, 152, -1, 152, -1, 152,
|
|
- -1, 136, -1, 20, -1, -1, -1, -1, -1, 20,
|
|
- -1, 25, -1, -1, 23, -1, -1, 69, 23, -1,
|
|
- 69, -1, 69, 23, -1, 69, -1, -1, 100, 150,
|
|
- 99, -1, 113, -1, 101, -1, 152, 75, 152, -1,
|
|
- 152, 74, 152, -1, 152, 73, 152, -1, 153, -1,
|
|
- 153, 77, -1, 153, 77, 162, -1, 162, -1, 57,
|
|
- 181, 153, -1, 55, 100, 181, 152, 99, -1, 162,
|
|
- 98, 156, 100, 167, 99, -1, 162, 98, 156, -1,
|
|
- 21, 181, 166, -1, 22, 181, 100, 167, 99, -1,
|
|
- 57, 166, -1, 55, 100, 167, 99, -1, -1, 30,
|
|
- 143, 113, 155, 166, -1, 21, -1, 173, -1, 180,
|
|
- 9, 152, 101, 10, -1, 173, 11, 152, 12, -1,
|
|
- 162, 98, 11, 152, 12, -1, 157, 11, 152, 12,
|
|
- -1, 173, 9, 152, 101, 10, -1, 162, 98, 9,
|
|
- 152, 101, 10, -1, 157, 9, 152, 101, 10, -1,
|
|
- 162, 98, 100, 99, -1, 162, 98, 100, 152, 99,
|
|
- -1, 157, 100, 152, 99, -1, 157, 100, 99, -1,
|
|
- 100, 152, 99, 11, 152, 12, -1, 26, 11, 152,
|
|
- 12, -1, 100, 99, 11, 152, 12, -1, 162, 78,
|
|
- 162, -1, 162, 92, 162, -1, 162, 60, 162, -1,
|
|
- 162, 61, 162, -1, 162, 86, 162, -1, 162, 58,
|
|
- 162, -1, 162, 59, 162, -1, 162, 85, 162, -1,
|
|
- 162, 84, 162, -1, 162, 51, 162, -1, 162, 83,
|
|
- 162, -1, 162, 82, 162, -1, 162, 81, 162, -1,
|
|
- 162, 87, 162, -1, 13, 162, -1, 14, 162, -1,
|
|
- 88, 162, -1, 89, 162, -1, 162, 95, -1, 162,
|
|
- 94, -1, 162, 93, -1, 97, 162, -1, 96, 162,
|
|
- -1, 11, 152, 12, -1, 11, 12, -1, 64, 152,
|
|
- 101, 10, -1, 64, 101, 10, -1, 36, 143, 146,
|
|
- 147, 113, -1, 36, 143, 115, 149, 147, 9, 118,
|
|
- 10, -1, 63, 162, -1, 63, 113, -1, 158, -1,
|
|
- 159, -1, 160, -1, 161, -1, 162, 79, 162, 80,
|
|
- 162, -1, 90, 162, -1, 164, -1, 66, 162, -1,
|
|
- 100, 152, 99, -1, 26, -1, 100, 99, -1, 173,
|
|
- -1, 177, -1, 175, -1, 174, -1, 176, -1, 157,
|
|
- -1, 178, 11, 152, 12, -1, 179, 11, 152, 12,
|
|
- -1, 178, 9, 152, 101, 10, -1, 179, 9, 152,
|
|
- 101, 10, -1, 23, -1, 172, -1, 172, 100, 99,
|
|
- -1, 172, 100, 152, 99, -1, 65, 145, 166, -1,
|
|
- 162, 98, 102, 103, -1, 162, 98, 15, 103, -1,
|
|
- 162, 98, 16, 103, -1, 162, 98, 17, 103, -1,
|
|
- 162, 98, 103, 103, -1, 50, -1, 50, 162, -1,
|
|
- 76, 153, -1, 56, -1, 56, 113, -1, 56, 162,
|
|
- -1, 68, -1, 68, 162, -1, 29, -1, 29, 162,
|
|
- -1, 53, -1, 53, 100, 99, -1, 27, -1, 27,
|
|
- 100, 99, -1, 28, -1, 54, 100, 99, -1, 54,
|
|
- 100, 152, 99, -1, -1, 24, 163, 100, 153, 168,
|
|
- 99, -1, 20, -1, 154, -1, 52, -1, 31, -1,
|
|
- 67, 165, 148, -1, 67, 165, -1, 100, 152, 99,
|
|
- -1, 100, 99, -1, 173, -1, 175, -1, 174, -1,
|
|
- -1, 153, -1, -1, 152, -1, -1, 104, 152, -1,
|
|
- 173, -1, 173, -1, 174, -1, 175, -1, 170, -1,
|
|
- 172, -1, 17, 181, -1, 102, 181, -1, 15, 181,
|
|
- -1, 16, 181, -1, 62, 181, -1, 162, 98, 62,
|
|
- 103, -1, 103, 181, -1, 174, -1, 162, 98, 15,
|
|
- -1, 175, -1, 162, 98, 16, -1, 177, -1, 162,
|
|
- 98, 103, -1, 20, -1, 173, -1, 113, -1, 25,
|
|
- -1
|
|
-};
|
|
-
|
|
-/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
|
|
+ /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
|
|
static const yytype_uint16 yyrline[] =
|
|
{
|
|
0, 115, 115, 114, 125, 124, 134, 133, 146, 145,
|
|
@@ -205,20 +81,20 @@ static const yytype_uint16 yyrline[] =
|
|
617, 618, 620, 625, 627, 633, 632, 651, 652, 656,
|
|
658, 660, 662, 666, 668, 673, 677, 681, 685, 691,
|
|
696, 702, 708, 710, 713, 712, 723, 724, 728, 732,
|
|
- 735, 740, 745, 748, 752, 756, 759, 764, 768, 771,
|
|
- 773, 775, 780, 782, 784, 789, 791, 793, 795, 797,
|
|
- 799, 801, 803, 805, 807, 809, 814, 816, 819, 821,
|
|
- 823, 826, 829, 840, 843, 850, 852, 854, 856, 858,
|
|
- 861, 875, 877, 881, 882, 883, 884, 885, 887, 889,
|
|
- 891, 893, 895, 897, 899, 901, 903, 905, 907, 909,
|
|
- 911, 921, 931, 941, 951, 953, 955, 958, 963, 967,
|
|
- 969, 971, 973, 976, 978, 981, 983, 985, 987, 989,
|
|
- 991, 993, 995, 997, 1000, 1002, 1004, 1006, 1008, 1010,
|
|
- 1014, 1017, 1016, 1029, 1030, 1031, 1036, 1040, 1042, 1047,
|
|
- 1049, 1052, 1054, 1056, 1061, 1063, 1068, 1069, 1074, 1075,
|
|
- 1081, 1085, 1086, 1087, 1090, 1091, 1094, 1098, 1102, 1108,
|
|
- 1114, 1116, 1120, 1124, 1125, 1129, 1130, 1134, 1135, 1140,
|
|
- 1142, 1144, 1147
|
|
+ 735, 740, 745, 748, 752, 756, 762, 770, 777, 783,
|
|
+ 785, 787, 792, 794, 796, 801, 803, 805, 807, 809,
|
|
+ 811, 813, 815, 817, 819, 821, 826, 828, 831, 833,
|
|
+ 835, 838, 841, 852, 855, 862, 864, 866, 868, 870,
|
|
+ 873, 887, 889, 893, 894, 895, 896, 897, 899, 901,
|
|
+ 903, 905, 907, 909, 911, 913, 915, 917, 919, 921,
|
|
+ 923, 933, 943, 953, 963, 965, 967, 970, 975, 979,
|
|
+ 981, 983, 985, 988, 990, 993, 995, 997, 999, 1001,
|
|
+ 1003, 1005, 1007, 1009, 1012, 1014, 1016, 1018, 1020, 1022,
|
|
+ 1026, 1029, 1028, 1041, 1042, 1043, 1048, 1052, 1054, 1059,
|
|
+ 1061, 1064, 1066, 1068, 1073, 1075, 1080, 1081, 1086, 1087,
|
|
+ 1093, 1097, 1098, 1099, 1102, 1103, 1106, 1110, 1114, 1120,
|
|
+ 1126, 1128, 1132, 1136, 1137, 1141, 1142, 1146, 1147, 1152,
|
|
+ 1154, 1156, 1159
|
|
};
|
|
#endif
|
|
|
|
@@ -237,10 +113,10 @@ static const char *const yytname[] =
|
|
"LOOPEX", "DOTDOT", "YADAYADA", "FUNC0", "FUNC1", "FUNC", "UNIOP",
|
|
"LSTOP", "RELOP", "EQOP", "MULOP", "ADDOP", "DOLSHARP", "DO",
|
|
"HASHBRACK", "NOAMP", "LOCAL", "MY", "REQUIRE", "COLONATTR",
|
|
- "FORMLBRACK", "FORMRBRACK", "PREC_LOW", "DOROP", "OROP", "ANDOP",
|
|
- "NOTOP", "','", "ASSIGNOP", "'?'", "':'", "DORDOR", "OROR", "ANDAND",
|
|
- "BITOROP", "BITANDOP", "SHIFTOP", "MATCHOP", "'!'", "'~'", "REFGEN",
|
|
- "UMINUS", "POWOP", "POSTJOIN", "POSTDEC", "POSTINC", "PREDEC", "PREINC",
|
|
+ "FORMLBRACK", "FORMRBRACK", "PREC_LOW", "OROP", "DOROP", "ANDOP",
|
|
+ "NOTOP", "','", "ASSIGNOP", "'?'", "':'", "OROR", "DORDOR", "ANDAND",
|
|
+ "BITOROP", "BITANDOP", "SHIFTOP", "MATCHOP", "'!'", "'~'", "UMINUS",
|
|
+ "REFGEN", "POWOP", "PREINC", "PREDEC", "POSTINC", "POSTDEC", "POSTJOIN",
|
|
"ARROW", "')'", "'('", "';'", "'$'", "'*'", "'/'", "$accept", "grammar",
|
|
"$@1", "$@2", "$@3", "$@4", "$@5", "$@6", "block", "formblock",
|
|
"remember", "mblock", "mremember", "stmtseq", "formstmtseq", "fullstmt",
|
|
@@ -253,13 +129,13 @@ static const char *const yytname[] =
|
|
"anonymous", "termdo", "term", "@16", "myattrterm", "myterm",
|
|
"optlistexpr", "optexpr", "optrepl", "my_scalar", "my_var",
|
|
"refgen_topic", "amper", "scalar", "ary", "hsh", "arylen", "star",
|
|
- "sliceme", "kvslice", "gelem", "indirob", YY_NULL
|
|
+ "sliceme", "kvslice", "gelem", "indirob", YY_NULLPTR
|
|
};
|
|
#endif
|
|
|
|
# ifdef YYPRINT
|
|
-/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
|
|
- token YYLEX-NUM. */
|
|
+/* YYTOKNUM[NUM] -- (External) token number corresponding to the
|
|
+ (internal) symbol number NUM (which must be that of a token). */
|
|
static const yytype_uint16 yytoknum[] =
|
|
{
|
|
0, 256, 257, 258, 259, 260, 261, 262, 263, 123,
|
|
@@ -276,71 +152,76 @@ static const yytype_uint16 yytoknum[] =
|
|
};
|
|
# endif
|
|
|
|
-/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
|
|
-static const yytype_uint8 yyr1[] =
|
|
-{
|
|
- 0, 105, 107, 106, 108, 106, 109, 106, 110, 106,
|
|
- 111, 106, 112, 106, 113, 114, 115, 116, 117, 118,
|
|
- 118, 119, 119, 120, 120, 121, 121, 122, 122, 123,
|
|
- 122, 124, 122, 122, 125, 122, 122, 122, 122, 122,
|
|
- 122, 122, 122, 126, 127, 122, 122, 122, 128, 122,
|
|
- 122, 122, 122, 129, 122, 122, 122, 130, 131, 131,
|
|
- 132, 132, 132, 132, 132, 132, 132, 132, 133, 133,
|
|
- 133, 134, 134, 135, 136, 136, 137, 137, 138, 139,
|
|
- 140, 141, 141, 142, 143, 144, 145, 145, 146, 146,
|
|
- 147, 147, 147, 148, 148, 150, 149, 151, 151, 152,
|
|
- 152, 152, 152, 153, 153, 153, 154, 154, 154, 154,
|
|
- 154, 154, 154, 154, 155, 154, 156, 156, 157, 157,
|
|
- 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
|
|
- 157, 157, 158, 158, 158, 158, 158, 158, 158, 158,
|
|
- 158, 158, 158, 158, 158, 158, 159, 159, 159, 159,
|
|
- 159, 159, 159, 159, 159, 160, 160, 160, 160, 160,
|
|
- 160, 161, 161, 162, 162, 162, 162, 162, 162, 162,
|
|
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
|
|
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
|
|
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
|
|
- 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
|
|
- 162, 163, 162, 162, 162, 162, 162, 164, 164, 165,
|
|
- 165, 165, 165, 165, 166, 166, 167, 167, 168, 168,
|
|
- 169, 170, 170, 170, 171, 171, 172, 173, 174, 175,
|
|
- 176, 176, 177, 178, 178, 179, 179, 180, 180, 181,
|
|
- 181, 181, 181
|
|
-};
|
|
+#define YYPACT_NINF -400
|
|
|
|
-/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
|
|
-static const yytype_uint8 yyr2[] =
|
|
+#define yypact_value_is_default(Yystate) \
|
|
+ (!!((Yystate) == (-400)))
|
|
+
|
|
+#define YYTABLE_NINF -248
|
|
+
|
|
+#define yytable_value_is_error(Yytable_value) \
|
|
+ (!!((Yytable_value) == (-248)))
|
|
+
|
|
+ /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
|
|
+ STATE-NUM. */
|
|
+static const yytype_int16 yypact[] =
|
|
{
|
|
- 0, 2, 0, 4, 0, 3, 0, 3, 0, 3,
|
|
- 0, 3, 0, 3, 4, 7, 0, 4, 0, 0,
|
|
- 2, 0, 2, 1, 1, 2, 2, 1, 4, 0,
|
|
- 7, 0, 10, 4, 0, 7, 7, 7, 6, 6,
|
|
- 2, 8, 8, 0, 0, 13, 9, 8, 0, 11,
|
|
- 9, 7, 2, 0, 8, 2, 1, 2, 0, 3,
|
|
- 1, 1, 3, 3, 3, 3, 3, 3, 0, 2,
|
|
- 6, 0, 2, 0, 0, 1, 0, 1, 1, 1,
|
|
- 1, 1, 0, 0, 0, 0, 1, 1, 0, 1,
|
|
- 0, 2, 1, 2, 1, 0, 3, 1, 1, 3,
|
|
- 3, 3, 1, 2, 3, 1, 3, 5, 6, 3,
|
|
- 3, 5, 2, 4, 0, 5, 1, 1, 5, 4,
|
|
- 5, 4, 5, 6, 5, 4, 5, 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,
|
|
- 8, 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, 6, 1, 1, 1, 1, 3, 2, 3,
|
|
- 2, 1, 1, 1, 0, 1, 0, 1, 0, 2,
|
|
- 1, 1, 1, 1, 1, 1, 2, 2, 2, 2,
|
|
- 2, 4, 2, 1, 3, 1, 3, 1, 3, 1,
|
|
- 1, 1, 1
|
|
+ 365, -400, -400, -400, -400, -400, -400, 73, -400, 2688,
|
|
+ 78, 1473, 1378, -400, -400, -400, 1944, 2688, 2688, 49,
|
|
+ 49, 49, -400, 49, 49, -400, -400, 68, -8, -400,
|
|
+ 2688, -400, -400, -400, 2688, -400, -3, 8, 11, 1851,
|
|
+ 1756, 49, 1851, 2037, 22, 2688, 1, 2688, 2688, 2688,
|
|
+ 2688, 2688, 2688, 2688, 2130, 49, 49, -19, 14, -400,
|
|
+ 9, -400, -400, -400, -400, 2756, -400, -400, 24, 67,
|
|
+ 72, 106, -400, 105, 118, 165, 109, -400, -400, -400,
|
|
+ -400, -400, 22, 111, -400, 39, 50, 62, 65, -14,
|
|
+ 69, 77, 78, -400, 87, -400, 48, 506, 1378, -400,
|
|
+ -400, -400, 618, 713, -400, 70, 398, 398, -400, -400,
|
|
+ -400, -400, -400, -400, -400, 2688, 95, 96, 2688, 102,
|
|
+ 368, 78, 16, 2756, 107, 2223, 1756, -400, 368, 516,
|
|
+ 14, -400, 440, 2688, -400, -400, 368, 195, 93, -400,
|
|
+ -400, 2688, 368, 2316, 150, -400, -400, -400, 368, 14,
|
|
+ 398, 398, 398, 414, 414, 210, 152, -400, -400, 2688,
|
|
+ 2688, 2688, 2688, 2688, 2688, 2409, 2688, 2688, 2688, 2688,
|
|
+ 2688, 2688, 2688, 2688, 2688, 2688, 2688, 2688, 2688, 2688,
|
|
+ 2688, -400, -400, -400, 131, 2502, 2688, 2688, 2688, 2688,
|
|
+ 2688, 2688, 2688, -400, 200, -400, 223, -400, -400, -400,
|
|
+ -400, -400, -400, 55, -400, 146, -400, -400, -400, 78,
|
|
+ -400, -400, 2688, 2688, 2688, 2688, 2688, 2688, -400, -400,
|
|
+ -400, -400, -400, 2688, 2688, 98, -400, -400, -400, 148,
|
|
+ 160, -400, -400, 163, 151, 2688, 14, -400, 239, -400,
|
|
+ -400, 292, 232, -400, 2688, 245, 192, 192, -400, 2756,
|
|
+ 209, 125, -400, 531, 1555, 473, 1927, 349, 203, 2756,
|
|
+ 2714, 1647, 1647, 1741, 1836, 2020, 410, 398, 398, 2688,
|
|
+ 2688, 170, 172, 182, -400, 183, 2595, 32, 184, 168,
|
|
+ -400, -400, 588, 249, 129, 273, 141, 278, 149, 357,
|
|
+ 808, -400, 252, 189, -6, 276, 2688, 2688, 2688, 2688,
|
|
+ 205, -400, -400, 197, -400, -400, -400, -400, 1567, -400,
|
|
+ 2688, 2688, -400, -19, -400, -19, -19, -19, -19, -19,
|
|
+ 217, -29, -400, 2688, -400, 160, 279, 78, -400, -400,
|
|
+ 603, -400, -400, -400, 167, 2688, 298, -400, -400, 2688,
|
|
+ 509, 179, -400, -400, -400, -400, -400, 616, -400, -400,
|
|
+ 2688, -400, 299, -400, 308, -400, 319, -400, 328, -400,
|
|
+ -400, -400, 316, -400, -400, -400, 322, 244, -19, 250,
|
|
+ 257, -19, 258, 262, -400, 21, -400, -400, -400, 259,
|
|
+ 275, 286, 2688, 264, 281, -400, 2688, 284, -400, 287,
|
|
+ 378, -400, -400, -400, -400, 185, -400, 2798, 380, -400,
|
|
+ -400, 289, -400, -400, -400, -400, 291, 160, 148, -400,
|
|
+ 2688, -400, -400, 399, 399, 2688, -400, 2688, 399, -400,
|
|
+ 318, 399, 399, -19, -400, -400, -400, -400, -400, -400,
|
|
+ 344, 6, 160, -400, 320, 399, 399, -400, 18, 18,
|
|
+ 321, 323, 325, 87, 2688, 399, -400, -400, 903, -400,
|
|
+ -400, -400, -400, 424, 998, -400, 87, 87, -400, 399,
|
|
+ 334, -400, -400, 399, 2688, 399, -400, 336, 87, -400,
|
|
+ 3, -400, -400, -400, -400, 1093, -400, 2688, 87, 343,
|
|
+ 87, -400, -400, 383, 438, -400, 1188, -400, 362, -400,
|
|
+ 399, -400, -400, -400, -400, -400, -400, 399, 87, 1661,
|
|
+ 1283, 18, -400, 363, -400, -400, 399, -400
|
|
};
|
|
|
|
-/* 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. */
|
|
+ /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
|
|
+ Performed when YYTABLE does not 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, 226,
|
|
@@ -358,18 +239,18 @@ static const yytype_uint8 yydefact[] =
|
|
203, 0, 88, 195, 0, 0, 226, 198, 199, 249,
|
|
225, 112, 250, 0, 240, 162, 161, 0, 0, 86,
|
|
87, 224, 170, 0, 218, 221, 223, 222, 201, 196,
|
|
- 148, 149, 168, 154, 153, 173, 0, 237, 242, 0,
|
|
+ 148, 149, 168, 153, 154, 173, 0, 237, 242, 0,
|
|
0, 0, 103, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
- 0, 152, 151, 150, 0, 0, 0, 0, 0, 0,
|
|
+ 0, 150, 151, 152, 0, 0, 0, 0, 0, 0,
|
|
0, 0, 0, 19, 82, 83, 0, 34, 16, 16,
|
|
16, 16, 16, 0, 16, 0, 16, 16, 40, 0,
|
|
52, 55, 0, 0, 0, 0, 0, 0, 26, 25,
|
|
20, 155, 110, 226, 0, 0, 207, 114, 89, 0,
|
|
90, 205, 209, 0, 0, 0, 106, 158, 0, 188,
|
|
- 220, 0, 94, 217, 0, 171, 101, 100, 99, 104,
|
|
+ 220, 0, 94, 217, 0, 171, 100, 101, 99, 104,
|
|
0, 0, 128, 0, 141, 137, 138, 134, 135, 132,
|
|
- 0, 144, 143, 142, 140, 139, 136, 145, 133, 0,
|
|
+ 0, 143, 144, 142, 140, 139, 136, 145, 133, 0,
|
|
0, 244, 246, 0, 116, 0, 0, 0, 248, 109,
|
|
117, 186, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
0, 81, 0, 29, 0, 0, 76, 0, 0, 0,
|
|
@@ -396,7 +277,20 @@ static const yytype_uint8 yydefact[] =
|
|
0, 68, 49, 0, 59, 70, 0, 45
|
|
};
|
|
|
|
-/* YYDEFGOTO[NTERM-NUM]. */
|
|
+ /* YYPGOTO[NTERM-NUM]. */
|
|
+static const yytype_int16 yypgoto[] =
|
|
+{
|
|
+ -400, -400, -400, -400, -400, -400, -400, -400, 4, -400,
|
|
+ 113, -81, -400, -15, -400, 455, 371, -9, -400, -400,
|
|
+ -400, -400, -400, -400, -400, -400, -400, -307, -399, -30,
|
|
+ -380, -400, 30, 178, -289, -16, -400, 290, 451, -400,
|
|
+ 405, 130, -313, -400, 121, -400, -400, -5, -35, -400,
|
|
+ -400, -400, -400, -400, -400, -400, -400, 227, -400, -400,
|
|
+ -400, -106, -118, -400, -400, 128, -400, 301, 44, -40,
|
|
+ -39, -400, -400, -400, -400, -400, 10
|
|
+};
|
|
+
|
|
+ /* YYDEFGOTO[NTERM-NUM]. */
|
|
static const yytype_int16 yydefgoto[] =
|
|
{
|
|
-1, 7, 8, 9, 10, 11, 12, 13, 94, 361,
|
|
@@ -409,81 +303,9 @@ static const yytype_int16 yydefgoto[] =
|
|
71, 72, 73, 74, 75, 76, 157
|
|
};
|
|
|
|
-/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
|
|
- STATE-NUM. */
|
|
-#define YYPACT_NINF -400
|
|
-static const yytype_int16 yypact[] =
|
|
-{
|
|
- 565, -400, -400, -400, -400, -400, -400, 73, -400, 2699,
|
|
- 69, 1486, 1389, -400, -400, -400, 1955, 2699, 2699, 49,
|
|
- 49, 49, -400, 49, 49, -400, -400, 76, -8, -400,
|
|
- 2699, -400, -400, -400, 2699, -400, -3, 8, 11, 1862,
|
|
- 1767, 49, 1862, 2048, 22, 2699, 1, 2699, 2699, 2699,
|
|
- 2699, 2699, 2699, 2699, 2141, 49, 49, -19, 14, -400,
|
|
- 9, -400, -400, -400, -400, 2770, -400, -400, 24, 68,
|
|
- 72, 106, -400, 105, 118, 165, 109, -400, -400, -400,
|
|
- -400, -400, 22, 111, -400, 39, 50, 62, 65, -14,
|
|
- 77, 95, 69, -400, 87, -400, 48, 506, 1389, -400,
|
|
- -400, -400, 612, 710, -400, 70, 490, 490, -400, -400,
|
|
- -400, -400, -400, -400, -400, 2699, 96, 101, 2699, 107,
|
|
- 410, 69, 16, 2770, 120, 2234, 1767, -400, 410, 516,
|
|
- 14, -400, 440, 2699, -400, -400, 410, 159, 93, -400,
|
|
- -400, 2699, 410, 2327, 136, -400, -400, -400, 410, 14,
|
|
- 490, 490, 490, 258, 258, 210, 152, -400, -400, 2699,
|
|
- 2699, 2699, 2699, 2699, 2699, 2420, 2699, 2699, 2699, 2699,
|
|
- 2699, 2699, 2699, 2699, 2699, 2699, 2699, 2699, 2699, 2699,
|
|
- 2699, -400, -400, -400, 131, 2513, 2699, 2699, 2699, 2699,
|
|
- 2699, 2699, 2699, -400, 200, -400, 223, -400, -400, -400,
|
|
- -400, -400, -400, 55, -400, 146, -400, -400, -400, 69,
|
|
- -400, -400, 2699, 2699, 2699, 2699, 2699, 2699, -400, -400,
|
|
- -400, -400, -400, 2699, 2699, 98, -400, -400, -400, 148,
|
|
- 160, -400, -400, 163, 150, 2699, 14, -400, 240, -400,
|
|
- -400, 293, 232, -400, 2699, 245, 192, 192, -400, 2770,
|
|
- 209, 125, -400, 531, 1567, 2033, 371, 695, 203, 2770,
|
|
- 2725, 1658, 1658, 1752, 1847, 1940, 278, 490, 490, 2699,
|
|
- 2699, 170, 172, 182, -400, 183, 2606, 32, 184, 168,
|
|
- -400, -400, 597, 249, 129, 273, 141, 436, 149, 486,
|
|
- 807, -400, 252, 189, -6, 279, 2699, 2699, 2699, 2699,
|
|
- 198, -400, -400, 202, -400, -400, -400, -400, 1579, -400,
|
|
- 2699, 2699, -400, -19, -400, -19, -19, -19, -19, -19,
|
|
- 208, -29, -400, 2699, -400, 160, 285, 69, -400, -400,
|
|
- 617, -400, -400, -400, 167, 2699, 299, -400, -400, 2699,
|
|
- 582, 179, -400, -400, -400, -400, -400, 630, -400, -400,
|
|
- 2699, -400, 306, -400, 308, -400, 319, -400, 332, -400,
|
|
- -400, -400, 320, -400, -400, -400, 329, 259, -19, 263,
|
|
- 264, -19, 270, 257, -400, 21, -400, -400, -400, 280,
|
|
- 282, 286, 2699, 281, 287, -400, 2699, 288, -400, 289,
|
|
- 381, -400, -400, -400, -400, 185, -400, 2815, 398, -400,
|
|
- -400, 292, -400, -400, -400, -400, 314, 160, 148, -400,
|
|
- 2699, -400, -400, 408, 408, 2699, -400, 2699, 408, -400,
|
|
- 321, 408, 408, -19, -400, -400, -400, -400, -400, -400,
|
|
- 350, 6, 160, -400, 322, 408, 408, -400, 18, 18,
|
|
- 325, 328, 334, 87, 2699, 408, -400, -400, 904, -400,
|
|
- -400, -400, -400, 425, 1001, -400, 87, 87, -400, 408,
|
|
- 336, -400, -400, 408, 2699, 408, -400, 340, 87, -400,
|
|
- 3, -400, -400, -400, -400, 1098, -400, 2699, 87, 338,
|
|
- 87, -400, -400, 372, 426, -400, 1195, -400, 345, -400,
|
|
- 408, -400, -400, -400, -400, -400, -400, 408, 87, 1672,
|
|
- 1292, 18, -400, 347, -400, -400, 408, -400
|
|
-};
|
|
-
|
|
-/* YYPGOTO[NTERM-NUM]. */
|
|
-static const yytype_int16 yypgoto[] =
|
|
-{
|
|
- -400, -400, -400, -400, -400, -400, -400, -400, 4, -400,
|
|
- 113, -81, -400, -15, -400, 435, 355, -9, -400, -400,
|
|
- -400, -400, -400, -400, -400, -400, -400, -307, -399, -30,
|
|
- -380, -400, 17, 157, -289, -44, -400, 265, 429, -400,
|
|
- 385, 112, -313, -400, 67, -400, -400, -5, -35, -400,
|
|
- -400, -400, -400, -400, -400, -400, -400, 227, -400, -400,
|
|
- -400, -106, -118, -400, -400, 108, -400, 284, 44, -40,
|
|
- -39, -400, -400, -400, -400, -400, 10
|
|
-};
|
|
-
|
|
-/* 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 YYTABLE_NINF, syntax error. */
|
|
-#define YYTABLE_NINF -248
|
|
+ /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
|
|
+ positive, shift that token. If negative, reduce the rule whose
|
|
+ number is the opposite. If YYTABLE_NINF, syntax error. */
|
|
static const yytype_int16 yytable[] =
|
|
{
|
|
103, 377, 95, 364, 57, 130, 146, 147, 234, 222,
|
|
@@ -493,8 +315,8 @@ static const yytype_int16 yytable[] =
|
|
462, 77, 139, 127, 110, 110, 135, 140, 162, 156,
|
|
133, 134, 108, 202, 159, 160, 161, 109, 77, 110,
|
|
110, 459, 460, 111, 111, 111, 158, 111, 111, 108,
|
|
- 19, 20, 21, 14, 109, 386, 203, 186, 77, 187,
|
|
- 130, -243, 221, -243, 132, 111, 204, 118, 55, 219,
|
|
+ 19, 20, 21, 14, 109, 386, 186, 203, 187, 118,
|
|
+ 130, -243, 221, -243, 132, 111, 204, 77, 55, 219,
|
|
145, 162, 119, 420, 431, 365, 208, 124, 236, 111,
|
|
111, 143, 505, 55, 484, 320, 130, 450, 125, 165,
|
|
322, 126, 499, 225, -247, -245, -16, -245, 192, 453,
|
|
@@ -502,101 +324,72 @@ static const yytype_int16 yytable[] =
|
|
110, 196, 209, 205, 55, 348, 235, 337, 241, 198,
|
|
269, 353, 270, 159, 160, 161, 271, 272, 273, 211,
|
|
199, 55, 274, 355, 246, 247, 248, 55, 250, 251,
|
|
- 253, 357, 200, 306, 307, 201, 159, 160, 161, 237,
|
|
- 132, 159, 160, 161, 190, 479, 191, 206, 290, 394,
|
|
+ 253, 357, 200, 306, 307, 201, 159, 160, 161, 206,
|
|
+ 132, 159, 160, 161, 190, 479, 191, 207, 290, 394,
|
|
282, 283, 284, 285, 286, 287, 288, 289, 488, 321,
|
|
- 193, 399, 377, 275, 238, 207, 223, 427, 159, 160,
|
|
- 161, 224, 159, 160, 161, 242, 226, 313, 315, 316,
|
|
- 317, 318, 319, 312, 159, 160, 161, 388, 57, 231,
|
|
+ 193, 399, 377, 275, 238, 223, 224, 427, 159, 160,
|
|
+ 161, 226, 159, 160, 161, 237, 231, 313, 315, 316,
|
|
+ 317, 318, 319, 312, 159, 160, 161, 388, 57, 242,
|
|
291, 244, 159, 160, 161, 159, 160, 161, 280, 326,
|
|
330, 276, 401, 277, 278, 229, 159, 160, 161, 334,
|
|
- 159, 160, 161, 294, 106, 107, 309, 305, 324, 329,
|
|
- 331, 245, 159, 160, 161, 333, 335, 120, 159, 160,
|
|
+ 159, 160, 161, 294, 106, 107, 309, 305, 324, 331,
|
|
+ 329, 245, 159, 160, 161, 333, 335, 120, 159, 160,
|
|
161, 123, 328, 169, 340, 341, 128, 161, 350, 136,
|
|
360, 347, 142, 342, 148, 343, 150, 151, 152, 153,
|
|
154, 110, 159, 160, 161, 344, 345, 349, 130, -31,
|
|
- 179, 368, 315, 371, 371, 180, 181, 182, 183, 366,
|
|
- 55, 184, 376, 381, 434, 371, 371, 385, 391, 396,
|
|
- 336, 296, 297, 298, 299, 300, 402, 308, 403, 310,
|
|
+ 179, 368, 315, 371, 371, 180, 366, 376, 181, 182,
|
|
+ 183, 184, 391, 381, 434, 371, 371, 55, 396, 402,
|
|
+ 336, 296, 297, 298, 299, 300, 385, 308, 403, 310,
|
|
311, 111, 159, 160, 161, 212, 213, 214, 215, 404,
|
|
- 395, 392, 216, 439, 217, 306, 307, 443, 169, 170,
|
|
- 446, 447, 405, 228, 374, 57, 159, 160, 161, 410,
|
|
- 352, -248, -248, -248, 456, 457, 184, 415, 411, 159,
|
|
- 160, 161, 412, 413, 468, 179, 159, 160, 161, 414,
|
|
- 180, 181, 182, 183, 354, 130, 184, 371, 476, 418,
|
|
- 421, 423, 478, 419, 480, -79, 422, 424, 425, 249,
|
|
- 426, 429, 332, 254, 255, 256, 257, 258, 259, 260,
|
|
- 261, 262, 263, 264, 265, 266, 267, 268, 428, 498,
|
|
- 371, 448, 371, 466, 375, 430, 501, 437, 454, 305,
|
|
- 445, 449, 382, 455, 463, 507, 473, 474, 464, 167,
|
|
- -248, 169, 170, 465, 471, 451, 477, 490, 482, 368,
|
|
- -174, 481, 493, 475, 497, 495, 506, 99, 489, 186,
|
|
- 491, 187, -174, 218, 369, 503, 486, 178, 179, 371,
|
|
- 293, 467, 122, 180, 181, 182, 183, 195, 502, 184,
|
|
- 169, 170, 371, 406, 407, 432, 408, 409, 500, -174,
|
|
- -174, -174, -174, 416, 0, 0, -174, 304, -174, 417,
|
|
- 0, -174, 0, 0, 0, 0, 178, 179, -174, -174,
|
|
- -174, -174, 180, 181, 182, 183, 0, 0, 184, 159,
|
|
- 160, 161, 0, -174, -174, -174, -213, -174, -174, -174,
|
|
- -174, -174, -174, -174, -174, -174, -174, -174, -213, 0,
|
|
- 0, 0, -174, -174, -174, -174, 0, 356, -174, -174,
|
|
+ 395, 392, 216, 439, 217, 306, 307, 443, 405, 228,
|
|
+ 446, 447, 410, 411, 374, 57, 159, 160, 161, 412,
|
|
+ 352, 159, 160, 161, 456, 457, 413, 414, 418, 159,
|
|
+ 160, 161, 415, 421, 468, 159, 160, 161, 1, 2,
|
|
+ 3, 4, 5, 6, 354, 130, 419, 371, 476, 356,
|
|
+ 422, 423, 478, 424, 480, -79, 425, 426, 429, 249,
|
|
+ 428, 332, 430, 254, 255, 256, 257, 258, 259, 260,
|
|
+ 261, 262, 263, 264, 265, 266, 267, 268, 437, 498,
|
|
+ 371, 448, 371, 466, 375, 449, 501, 445, 454, 305,
|
|
+ 463, 455, 382, 464, 465, 507, 473, 474, 169, 170,
|
|
+ 159, 160, 161, 471, 477, 451, 179, 481, 482, 368,
|
|
+ -174, 180, 490, 475, 181, 182, 183, 184, 489, 186,
|
|
+ 491, 187, -174, 493, 178, 179, 486, 495, 358, 371,
|
|
+ 180, 497, 506, 181, 182, 183, 184, 99, 502, 218,
|
|
+ 169, 170, 371, 406, 467, 369, 408, 409, 500, -174,
|
|
+ -174, -174, -174, 503, 122, 293, -174, 195, -174, 417,
|
|
+ 180, -174, 407, 181, 182, 183, 184, 179, -174, -174,
|
|
+ -174, -174, 180, 416, 304, 181, 182, 183, 184, -248,
|
|
+ -248, -248, 184, -174, -174, -174, -213, -174, -174, -174,
|
|
+ -174, -174, -174, -174, -174, -174, -174, -174, -213, 432,
|
|
+ 0, -248, -174, 169, 170, -174, -174, -174, -174, -174,
|
|
0, -174, 0, 0, -174, 212, 213, 214, 215, 0,
|
|
- 0, 0, 216, 0, 217, -213, -213, -213, -213, 159,
|
|
- 160, 161, -213, 0, -213, 0, 397, -213, 1, 2,
|
|
- 3, 4, 5, 6, -213, -213, -213, -213, 0, 159,
|
|
- 160, 161, 180, 181, 182, 183, 0, 358, 184, -213,
|
|
+ 0, 0, 216, 0, 217, -213, -213, -213, -213, 178,
|
|
+ 179, 0, -213, 0, -213, 180, 397, -213, 181, 182,
|
|
+ 183, 184, 0, 0, -213, -213, -213, -213, 0, 159,
|
|
+ 160, 161, 159, 160, 161, 0, 0, 0, 0, -213,
|
|
-213, -213, 0, -213, -213, -213, -213, -213, -213, -213,
|
|
- -213, -213, -213, -213, 159, 160, 161, 0, -213, -213,
|
|
- -213, -213, -13, 79, -213, -213, 0, -213, 0, 0,
|
|
- -213, 77, 0, 16, 0, 17, 18, 19, 20, 21,
|
|
- 338, 0, 22, 23, 24, 25, 26, 0, 27, 28,
|
|
- 29, 30, 31, 32, 80, 98, 81, 82, 33, 83,
|
|
- 84, 85, 86, 87, 88, 159, 160, 161, 89, 90,
|
|
- 91, 92, 34, 0, 35, 36, 37, 38, 39, 40,
|
|
- 159, 160, 161, 0, 41, 42, 43, 44, 45, 46,
|
|
- 47, 0, 0, 398, 0, 0, 0, 0, 48, 0,
|
|
- 159, 160, 161, 0, 0, 0, 351, 0, 0, 0,
|
|
- 49, 50, 51, 159, 160, 161, 0, 0, 52, 53,
|
|
- -3, 79, 54, 93, 55, 56, 393, 0, 0, 77,
|
|
- 0, 16, 0, 17, 18, 19, 20, 21, 0, 400,
|
|
- 22, 23, 24, 25, 26, 0, 27, 28, 29, 30,
|
|
- 31, 32, 80, 98, 81, 82, 33, 83, 84, 85,
|
|
- 86, 87, 88, 0, 0, 0, 89, 90, 91, 92,
|
|
- 34, 0, 35, 36, 37, 38, 39, 40, 0, 0,
|
|
- 0, 0, 41, 42, 43, 44, 45, 46, 47, 0,
|
|
- 0, 0, 179, 0, 0, 0, 48, 180, 181, 182,
|
|
- 183, 0, 0, 184, 0, 0, 0, 0, 49, 50,
|
|
- 51, 0, 0, 0, 0, 0, 52, 53, 79, 0,
|
|
- 54, 93, 55, 56, 0, 0, 77, 359, 16, 0,
|
|
- 17, 18, 19, 20, 21, 0, 0, 22, 23, 24,
|
|
- 25, 26, 0, 27, 28, 29, 30, 31, 32, 80,
|
|
- 98, 81, 82, 33, 83, 84, 85, 86, 87, 88,
|
|
- 0, 0, 0, 89, 90, 91, 92, 34, 0, 35,
|
|
- 36, 37, 38, 39, 40, 0, 0, 0, 0, 41,
|
|
- 42, 43, 44, 45, 46, 47, 0, 0, 0, 0,
|
|
- 0, 0, 0, 48, 0, 0, 0, 0, 0, 0,
|
|
- 0, 0, 0, 0, 0, 49, 50, 51, 0, 0,
|
|
- 0, 0, 0, 52, 53, 79, 0, 54, 93, 55,
|
|
- 56, 0, 0, 77, 469, 16, 0, 17, 18, 19,
|
|
- 20, 21, 0, 0, 22, 23, 24, 25, 26, 0,
|
|
- 27, 28, 29, 30, 31, 32, 80, 98, 81, 82,
|
|
- 33, 83, 84, 85, 86, 87, 88, 0, 0, 0,
|
|
- 89, 90, 91, 92, 34, 0, 35, 36, 37, 38,
|
|
- 39, 40, 0, 0, 0, 0, 41, 42, 43, 44,
|
|
- 45, 46, 47, 0, 0, 0, 0, 0, 0, 0,
|
|
- 48, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
- 0, 0, 49, 50, 51, 0, 0, 0, 0, 0,
|
|
- 52, 53, 79, 0, 54, 93, 55, 56, 0, 0,
|
|
- 77, 472, 16, 0, 17, 18, 19, 20, 21, 0,
|
|
- 0, 22, 23, 24, 25, 26, 0, 27, 28, 29,
|
|
- 30, 31, 32, 80, 98, 81, 82, 33, 83, 84,
|
|
- 85, 86, 87, 88, 0, 0, 0, 89, 90, 91,
|
|
- 92, 34, 0, 35, 36, 37, 38, 39, 40, 0,
|
|
- 0, 0, 0, 41, 42, 43, 44, 45, 46, 47,
|
|
- 0, 0, 0, 0, 0, 0, 0, 48, 0, 0,
|
|
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 49,
|
|
- 50, 51, 0, 0, 0, 0, 0, 52, 53, 79,
|
|
- 0, 54, 93, 55, 56, 0, 0, 77, 487, 16,
|
|
+ -213, -213, -213, -213, 159, 160, 161, 0, -213, 0,
|
|
+ 398, -213, -213, -213, -213, -213, 0, -213, -13, 79,
|
|
+ -213, 0, 0, 0, 0, 0, 0, 77, 0, 16,
|
|
+ 338, 17, 18, 19, 20, 21, 0, 0, 22, 23,
|
|
+ 24, 25, 26, 0, 27, 28, 29, 30, 31, 32,
|
|
+ 80, 98, 81, 82, 33, 83, 84, 85, 86, 87,
|
|
+ 88, 159, 160, 161, 89, 90, 91, 92, 34, 0,
|
|
+ 35, 36, 37, 38, 39, 40, 159, 160, 161, 0,
|
|
+ 41, 42, 43, 44, 45, 46, 47, 351, 0, 159,
|
|
+ 160, 161, 0, 0, 48, 0, 0, 0, 0, 0,
|
|
+ 0, 0, 393, 0, 0, 0, 49, 50, 0, 51,
|
|
+ 0, 52, 53, -3, 79, 400, 0, 0, 54, 93,
|
|
+ 55, 56, 77, 0, 16, 0, 17, 18, 19, 20,
|
|
+ 21, 0, 0, 22, 23, 24, 25, 26, 0, 27,
|
|
+ 28, 29, 30, 31, 32, 80, 98, 81, 82, 33,
|
|
+ 83, 84, 85, 86, 87, 88, 0, 0, 0, 89,
|
|
+ 90, 91, 92, 34, 0, 35, 36, 37, 38, 39,
|
|
+ 40, 0, 0, 0, 0, 41, 42, 43, 44, 45,
|
|
+ 46, 47, 0, 0, 0, 0, 0, 0, 0, 48,
|
|
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
+ 0, 49, 50, 0, 51, 0, 52, 53, 0, 79,
|
|
+ 0, 0, 0, 54, 93, 55, 56, 77, 359, 16,
|
|
0, 17, 18, 19, 20, 21, 0, 0, 22, 23,
|
|
24, 25, 26, 0, 27, 28, 29, 30, 31, 32,
|
|
80, 98, 81, 82, 33, 83, 84, 85, 86, 87,
|
|
@@ -604,131 +397,131 @@ static const yytype_int16 yytable[] =
|
|
35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
|
|
41, 42, 43, 44, 45, 46, 47, 0, 0, 0,
|
|
0, 0, 0, 0, 48, 0, 0, 0, 0, 0,
|
|
- 0, 0, 0, 0, 0, 0, 49, 50, 51, 0,
|
|
- 0, 0, 0, 0, 52, 53, 79, 0, 54, 93,
|
|
- 55, 56, 0, 0, 77, 496, 16, 0, 17, 18,
|
|
- 19, 20, 21, 0, 0, 22, 23, 24, 25, 26,
|
|
- 0, 27, 28, 29, 30, 31, 32, 80, 98, 81,
|
|
- 82, 33, 83, 84, 85, 86, 87, 88, 0, 0,
|
|
- 0, 89, 90, 91, 92, 34, 0, 35, 36, 37,
|
|
- 38, 39, 40, 0, 0, 0, 0, 41, 42, 43,
|
|
- 44, 45, 46, 47, 0, 0, 0, 0, 0, 0,
|
|
- 0, 48, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
- 0, 0, 0, 49, 50, 51, 0, 0, 0, 0,
|
|
- 0, 52, 53, 79, 0, 54, 93, 55, 56, 0,
|
|
- 0, 77, 0, 16, 0, 17, 18, 19, 20, 21,
|
|
- 0, 0, 22, 23, 24, 25, 26, 0, 27, 28,
|
|
- 29, 30, 31, 32, 80, 98, 81, 82, 33, 83,
|
|
- 84, 85, 86, 87, 88, 0, 0, 0, 89, 90,
|
|
- 91, 92, 34, 0, 35, 36, 37, 38, 39, 40,
|
|
- 0, 0, 0, 0, 41, 42, 43, 44, 45, 46,
|
|
- 47, 0, 0, 504, 0, 0, 0, 0, 48, 0,
|
|
+ 0, 0, 0, 0, 0, 0, 49, 50, 0, 51,
|
|
+ 0, 52, 53, 0, 79, 0, 0, 0, 54, 93,
|
|
+ 55, 56, 77, 469, 16, 0, 17, 18, 19, 20,
|
|
+ 21, 0, 0, 22, 23, 24, 25, 26, 0, 27,
|
|
+ 28, 29, 30, 31, 32, 80, 98, 81, 82, 33,
|
|
+ 83, 84, 85, 86, 87, 88, 0, 0, 0, 89,
|
|
+ 90, 91, 92, 34, 0, 35, 36, 37, 38, 39,
|
|
+ 40, 0, 0, 0, 0, 41, 42, 43, 44, 45,
|
|
+ 46, 47, 0, 0, 0, 0, 0, 0, 0, 48,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
- 49, 50, 51, 0, 0, 0, 0, 0, 52, 53,
|
|
- 79, 0, 54, 93, 55, 56, 0, 0, 77, 0,
|
|
- 16, 0, 17, 18, 19, 20, 21, 0, 0, 22,
|
|
- 23, 24, 25, 26, 0, 27, 28, 29, 30, 31,
|
|
- 32, 80, 98, 81, 82, 33, 83, 84, 85, 86,
|
|
- 87, 88, 0, 0, 0, 89, 90, 91, 92, 34,
|
|
- 0, 35, 36, 37, 38, 39, 40, 0, 0, 0,
|
|
- 0, 41, 42, 43, 44, 45, 46, 47, 0, 0,
|
|
- 0, 0, 0, 0, 0, 48, 0, 0, 0, 0,
|
|
- 0, 0, 0, 0, 0, 0, 0, 49, 50, 51,
|
|
- 0, 0, 0, 0, 0, 52, 53, 79, 0, 54,
|
|
- 93, 55, 56, 0, 0, 77, 0, 16, 0, 17,
|
|
- 18, 19, 20, 21, 0, 0, 22, 23, 24, 25,
|
|
- 26, 0, 27, 28, 29, 30, 31, 32, 80, 0,
|
|
- 81, 82, 33, 83, 84, 85, 86, 87, 88, 0,
|
|
- 0, 0, 89, 90, 91, 92, 34, 0, 35, 36,
|
|
- 37, 38, 39, 40, 0, 0, 0, 0, 41, 42,
|
|
- 43, 44, 45, 46, 47, 0, 0, 0, 0, 0,
|
|
- 0, 0, 48, 0, 0, 0, 0, 0, 0, 0,
|
|
- 0, 0, 0, 0, 49, 50, 51, 0, 0, 0,
|
|
- 79, 0, 52, 53, 0, 0, 54, 93, 55, 56,
|
|
- 16, 0, 17, 18, 19, 20, 21, 0, 0, 22,
|
|
- 23, 24, 25, 26, 0, 27, 28, 29, 30, 31,
|
|
- 32, 0, 0, 0, 0, 33, 0, 0, -248, 0,
|
|
- 0, 0, 0, 0, 0, 167, 168, 169, 170, 34,
|
|
- 0, 35, 36, 37, 38, 39, 40, 0, 0, 0,
|
|
- 0, 41, 42, 43, 44, 45, 46, 47, 173, 174,
|
|
- 175, 176, 177, 178, 179, 48, 0, 0, 0, 180,
|
|
- 181, 182, 183, 0, 0, 184, 0, 49, 50, 51,
|
|
- 0, 0, 0, 79, 0, 52, 53, 0, 0, 54,
|
|
- -74, 55, 56, 16, 0, 17, 18, 19, 20, 21,
|
|
- 0, 0, 22, 23, 24, 25, 26, 0, 27, 28,
|
|
- 29, 30, 31, 32, 0, 0, 0, 0, 33, 0,
|
|
- 0, 0, 0, 0, 0, 0, 167, 168, 169, 170,
|
|
- 0, 0, 34, 0, 35, 36, 37, 38, 39, 40,
|
|
- 0, 0, 0, 0, 41, 42, 43, 44, 45, 46,
|
|
- 47, 175, 176, 177, 178, 179, 0, 0, 48, 0,
|
|
- 180, 181, 182, 183, 0, 0, 184, 0, 0, 0,
|
|
- 49, 50, 51, 0, 0, 0, 0, 0, 52, 53,
|
|
- 0, -74, 54, 0, 55, 56, 77, 0, 16, 0,
|
|
- 17, 18, 19, 20, 21, 0, 0, 129, 23, 24,
|
|
- 25, 26, 109, 27, 28, 29, 30, 31, 32, 0,
|
|
- 0, 0, 0, 33, 0, 0, 0, 0, 0, 0,
|
|
- 167, 168, 169, 170, 0, 0, 0, 34, 0, 35,
|
|
- 36, 37, 38, 39, 40, 0, 0, 0, 0, 41,
|
|
- 42, 43, 44, 45, 46, 47, 176, 177, 178, 179,
|
|
- 0, 0, 0, 48, 180, 181, 182, 183, 0, 0,
|
|
- 184, 0, 0, 0, 0, 49, 50, 51, 0, 0,
|
|
- 0, 0, 0, 52, 53, 0, 0, 54, 0, 55,
|
|
- 56, 77, 0, 16, 0, 17, 18, 19, 20, 21,
|
|
- 0, 0, 22, 23, 24, 25, 26, 0, 27, 28,
|
|
- 29, 30, 31, 32, 0, 0, 0, 0, 33, 0,
|
|
- 0, 0, 0, 0, 0, 167, 168, 169, 170, 0,
|
|
- 0, 0, 34, 0, 35, 36, 37, 38, 39, 40,
|
|
- 0, 0, 0, 0, 41, 42, 43, 44, 45, 46,
|
|
- 47, 0, 177, 178, 179, 0, 0, 0, 48, 180,
|
|
- 181, 182, 183, 0, 0, 184, 0, 0, 0, 0,
|
|
- 49, 50, 51, 0, 0, 0, 0, 0, 52, 53,
|
|
- 0, 0, 54, 0, 55, 56, 16, 104, 17, 18,
|
|
- 19, 20, 21, 0, 0, 22, 23, 24, 25, 26,
|
|
- 0, 27, 28, 29, 30, 31, 32, 0, 0, 0,
|
|
- 0, 33, 0, 0, 0, 0, 0, 0, 167, 168,
|
|
- 169, 170, 0, 0, 0, 34, 0, 35, 36, 37,
|
|
- 38, 39, 40, 0, 0, 0, 0, 41, 42, 43,
|
|
- 44, 45, 46, 47, 0, 0, 178, 179, 0, 0,
|
|
- 0, 48, 180, 181, 182, 183, 0, 0, 184, 0,
|
|
- 0, 0, 0, 49, 50, 51, 0, 0, 0, 0,
|
|
- 0, 52, 53, 0, 0, 54, 0, 55, 56, 16,
|
|
+ 0, 49, 50, 0, 51, 0, 52, 53, 0, 79,
|
|
+ 0, 0, 0, 54, 93, 55, 56, 77, 472, 16,
|
|
0, 17, 18, 19, 20, 21, 0, 0, 22, 23,
|
|
24, 25, 26, 0, 27, 28, 29, 30, 31, 32,
|
|
- 0, 0, 0, 0, 33, 0, 0, 0, 0, 0,
|
|
- 0, -248, 0, 169, 170, 0, 0, 0, 34, 0,
|
|
+ 80, 98, 81, 82, 33, 83, 84, 85, 86, 87,
|
|
+ 88, 0, 0, 0, 89, 90, 91, 92, 34, 0,
|
|
+ 35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
|
|
+ 41, 42, 43, 44, 45, 46, 47, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 48, 0, 0, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 0, 0, 49, 50, 0, 51,
|
|
+ 0, 52, 53, 0, 79, 0, 0, 0, 54, 93,
|
|
+ 55, 56, 77, 487, 16, 0, 17, 18, 19, 20,
|
|
+ 21, 0, 0, 22, 23, 24, 25, 26, 0, 27,
|
|
+ 28, 29, 30, 31, 32, 80, 98, 81, 82, 33,
|
|
+ 83, 84, 85, 86, 87, 88, 0, 0, 0, 89,
|
|
+ 90, 91, 92, 34, 0, 35, 36, 37, 38, 39,
|
|
+ 40, 0, 0, 0, 0, 41, 42, 43, 44, 45,
|
|
+ 46, 47, 0, 0, 0, 0, 0, 0, 0, 48,
|
|
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
+ 0, 49, 50, 0, 51, 0, 52, 53, 0, 79,
|
|
+ 0, 0, 0, 54, 93, 55, 56, 77, 496, 16,
|
|
+ 0, 17, 18, 19, 20, 21, 0, 0, 22, 23,
|
|
+ 24, 25, 26, 0, 27, 28, 29, 30, 31, 32,
|
|
+ 80, 98, 81, 82, 33, 83, 84, 85, 86, 87,
|
|
+ 88, 0, 0, 0, 89, 90, 91, 92, 34, 0,
|
|
35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
|
|
- 41, 42, 43, 44, 45, 46, 47, 0, 0, 178,
|
|
- 179, 0, 0, 0, 48, 180, 181, 182, 183, 0,
|
|
- 0, 184, 0, 0, 0, 0, 49, 50, 51, 0,
|
|
- 0, 0, 0, 0, 52, 53, 0, 0, 54, 137,
|
|
- 55, 56, 16, 0, 17, 18, 19, 20, 21, 0,
|
|
+ 41, 42, 43, 44, 45, 46, 47, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 48, 0, 0, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 0, 0, 49, 50, 0, 51,
|
|
+ 0, 52, 53, 0, 79, 0, 0, 0, 54, 93,
|
|
+ 55, 56, 77, 0, 16, 0, 17, 18, 19, 20,
|
|
+ 21, 0, 0, 22, 23, 24, 25, 26, 0, 27,
|
|
+ 28, 29, 30, 31, 32, 80, 98, 81, 82, 33,
|
|
+ 83, 84, 85, 86, 87, 88, 0, 0, 0, 89,
|
|
+ 90, 91, 92, 34, 0, 35, 36, 37, 38, 39,
|
|
+ 40, 0, 0, 0, 0, 41, 42, 43, 44, 45,
|
|
+ 46, 47, 0, 0, 504, 0, 0, 0, 0, 48,
|
|
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
+ 0, 49, 50, 0, 51, 0, 52, 53, 0, 79,
|
|
+ 0, 0, 0, 54, 93, 55, 56, 77, 0, 16,
|
|
+ 0, 17, 18, 19, 20, 21, 0, 0, 22, 23,
|
|
+ 24, 25, 26, 0, 27, 28, 29, 30, 31, 32,
|
|
+ 80, 98, 81, 82, 33, 83, 84, 85, 86, 87,
|
|
+ 88, 0, 0, 0, 89, 90, 91, 92, 34, 0,
|
|
+ 35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
|
|
+ 41, 42, 43, 44, 45, 46, 47, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 48, 0, 0, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 0, 0, 49, 50, 0, 51,
|
|
+ 0, 52, 53, 0, 79, 0, 0, 0, 54, 93,
|
|
+ 55, 56, 77, 0, 16, 0, 17, 18, 19, 20,
|
|
+ 21, 0, 0, 22, 23, 24, 25, 26, 0, 27,
|
|
+ 28, 29, 30, 31, 32, 80, 0, 81, 82, 33,
|
|
+ 83, 84, 85, 86, 87, 88, 0, 0, 0, 89,
|
|
+ 90, 91, 92, 34, 0, 35, 36, 37, 38, 39,
|
|
+ 40, 0, 0, 0, 0, 41, 42, 43, 44, 45,
|
|
+ 46, 47, 0, 0, 0, 0, 0, 0, 0, 48,
|
|
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
+ 0, 49, 50, 0, 51, 0, 52, 53, 79, 0,
|
|
+ 0, 0, 0, 54, 93, 55, 56, 0, 16, 0,
|
|
+ 17, 18, 19, 20, 21, 0, 0, 22, 23, 24,
|
|
+ 25, 26, 0, 27, 28, 29, 30, 31, 32, 0,
|
|
+ 0, 0, 0, 33, 0, 0, -248, 0, 0, 0,
|
|
+ 0, 0, 0, 167, 168, 169, 170, 34, 0, 35,
|
|
+ 36, 37, 38, 39, 40, 0, 0, 0, 0, 41,
|
|
+ 42, 43, 44, 45, 46, 47, 173, 174, 175, 176,
|
|
+ 177, 178, 179, 48, 0, 0, 0, 180, 0, 0,
|
|
+ 181, 182, 183, 184, 0, 49, 50, 0, 51, 0,
|
|
+ 52, 53, 79, 0, 0, 0, 0, 54, -74, 55,
|
|
+ 56, 0, 16, 0, 17, 18, 19, 20, 21, 0,
|
|
0, 22, 23, 24, 25, 26, 0, 27, 28, 29,
|
|
30, 31, 32, 0, 0, 0, 0, 33, 0, 0,
|
|
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 0, 167, 168, 169, 170, 0,
|
|
0, 34, 0, 35, 36, 37, 38, 39, 40, 0,
|
|
0, 0, 0, 41, 42, 43, 44, 45, 46, 47,
|
|
- 0, 0, 0, 0, 0, 0, 0, 48, 0, 0,
|
|
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 49,
|
|
- 50, 51, 0, 0, 0, 0, 0, 52, 53, 0,
|
|
- 155, 54, 0, 55, 56, 16, 0, 17, 18, 19,
|
|
+ 175, 176, 177, 178, 179, 0, 0, 48, 0, 180,
|
|
+ 0, 0, 181, 182, 183, 184, 0, 0, 0, 49,
|
|
+ 50, 0, 51, 0, 52, 53, 0, 0, 0, 0,
|
|
+ -74, 54, 0, 55, 56, 77, 0, 16, 0, 17,
|
|
+ 18, 19, 20, 21, 0, 0, 129, 23, 24, 25,
|
|
+ 26, 109, 27, 28, 29, 30, 31, 32, 0, 0,
|
|
+ 0, 0, 33, 0, 0, 0, 0, 0, 0, 167,
|
|
+ 168, 169, 170, 0, 0, 0, 34, 0, 35, 36,
|
|
+ 37, 38, 39, 40, 0, 0, 0, 0, 41, 42,
|
|
+ 43, 44, 45, 46, 47, 176, 177, 178, 179, 0,
|
|
+ 0, 0, 48, 180, 0, 0, 181, 182, 183, 184,
|
|
+ 0, 0, 0, 0, 49, 50, 0, 51, 0, 52,
|
|
+ 53, 0, 0, 0, 0, 0, 54, 0, 55, 56,
|
|
+ 77, 0, 16, 0, 17, 18, 19, 20, 21, 0,
|
|
+ 0, 22, 23, 24, 25, 26, 0, 27, 28, 29,
|
|
+ 30, 31, 32, 0, 0, 0, 0, 33, 0, 0,
|
|
+ 0, 0, 0, 0, 167, 168, 169, 170, 0, 0,
|
|
+ 0, 34, 0, 35, 36, 37, 38, 39, 40, 0,
|
|
+ 0, 0, 0, 41, 42, 43, 44, 45, 46, 47,
|
|
+ 0, 177, 178, 179, 0, 0, 0, 48, 180, 0,
|
|
+ 0, 181, 182, 183, 184, 0, 0, 0, 0, 49,
|
|
+ 50, 0, 51, 0, 52, 53, 0, 0, 0, 0,
|
|
+ 0, 54, 0, 55, 56, 16, 104, 17, 18, 19,
|
|
20, 21, 0, 0, 22, 23, 24, 25, 26, 0,
|
|
27, 28, 29, 30, 31, 32, 0, 0, 0, 0,
|
|
- 33, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
+ 33, 0, 0, 0, 0, 167, -248, 169, 170, 0,
|
|
0, 0, 0, 0, 34, 0, 35, 36, 37, 38,
|
|
39, 40, 0, 0, 0, 0, 41, 42, 43, 44,
|
|
- 45, 46, 47, 0, 0, 0, 0, 0, 0, 0,
|
|
- 48, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
- 0, 0, 49, 50, 51, 0, 0, 0, 0, 0,
|
|
- 52, 53, 0, 232, 54, 0, 55, 56, 16, 0,
|
|
+ 45, 46, 47, 178, 179, 0, 0, 0, 0, 180,
|
|
+ 48, 0, 181, 182, 183, 184, 0, 0, 0, 0,
|
|
+ 0, 0, 49, 50, 0, 51, 0, 52, 53, 0,
|
|
+ 0, 0, 0, 0, 54, 0, 55, 56, 16, 0,
|
|
17, 18, 19, 20, 21, 0, 0, 22, 23, 24,
|
|
25, 26, 0, 27, 28, 29, 30, 31, 32, 0,
|
|
- 0, 0, 0, 33, 0, 0, 0, 0, 0, 0,
|
|
- 0, 0, 0, 0, 0, 0, 0, 34, 0, 35,
|
|
+ 0, 0, 0, 33, 0, 0, 0, 0, 167, 168,
|
|
+ 169, 170, 0, 0, 0, 0, 0, 34, 0, 35,
|
|
36, 37, 38, 39, 40, 0, 0, 0, 0, 41,
|
|
- 42, 43, 44, 45, 46, 47, 0, 0, 0, 0,
|
|
- 0, 0, 0, 48, 0, 0, 0, 0, 0, 0,
|
|
- 0, 0, 0, 0, 0, 49, 50, 51, 0, 0,
|
|
- 0, 0, 0, 52, 53, 0, 240, 54, 0, 55,
|
|
+ 42, 43, 44, 45, 46, 47, 178, 179, 0, 0,
|
|
+ 0, 0, 180, 48, 0, 181, 182, 183, 184, 0,
|
|
+ 0, 0, 0, 0, 0, 49, 50, 0, 51, 0,
|
|
+ 52, 53, 0, 0, 0, 0, 0, 54, 137, 55,
|
|
56, 16, 0, 17, 18, 19, 20, 21, 0, 0,
|
|
22, 23, 24, 25, 26, 0, 27, 28, 29, 30,
|
|
31, 32, 0, 0, 0, 0, 33, 0, 0, 0,
|
|
@@ -737,7 +530,7 @@ static const yytype_int16 yytable[] =
|
|
0, 0, 41, 42, 43, 44, 45, 46, 47, 0,
|
|
0, 0, 0, 0, 0, 0, 48, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 49, 50,
|
|
- 51, 0, 0, 0, 0, 0, 52, 53, 0, 252,
|
|
+ 0, 51, 0, 52, 53, 0, 0, 0, 0, 155,
|
|
54, 0, 55, 56, 16, 0, 17, 18, 19, 20,
|
|
21, 0, 0, 22, 23, 24, 25, 26, 0, 27,
|
|
28, 29, 30, 31, 32, 0, 0, 0, 0, 33,
|
|
@@ -746,8 +539,8 @@ static const yytype_int16 yytable[] =
|
|
40, 0, 0, 0, 0, 41, 42, 43, 44, 45,
|
|
46, 47, 0, 0, 0, 0, 0, 0, 0, 48,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
- 0, 49, 50, 51, 0, 0, 0, 0, 0, 52,
|
|
- 53, 0, 281, 54, 0, 55, 56, 16, 0, 17,
|
|
+ 0, 49, 50, 0, 51, 0, 52, 53, 0, 0,
|
|
+ 0, 0, 232, 54, 0, 55, 56, 16, 0, 17,
|
|
18, 19, 20, 21, 0, 0, 22, 23, 24, 25,
|
|
26, 0, 27, 28, 29, 30, 31, 32, 0, 0,
|
|
0, 0, 33, 0, 0, 0, 0, 0, 0, 0,
|
|
@@ -755,37 +548,58 @@ static const yytype_int16 yytable[] =
|
|
37, 38, 39, 40, 0, 0, 0, 0, 41, 42,
|
|
43, 44, 45, 46, 47, 0, 0, 0, 0, 0,
|
|
0, 0, 48, 0, 0, 0, 0, 0, 0, 0,
|
|
- 0, 0, 0, 0, 49, 50, 51, 0, 0, 0,
|
|
- 0, 0, 52, 53, 0, 346, 54, 0, 55, 56,
|
|
+ 0, 0, 0, 0, 49, 50, 0, 51, 0, 52,
|
|
+ 53, 0, 0, 0, 0, 240, 54, 0, 55, 56,
|
|
16, 0, 17, 18, 19, 20, 21, 0, 0, 22,
|
|
23, 24, 25, 26, 0, 27, 28, 29, 30, 31,
|
|
32, 0, 0, 0, 0, 33, 0, 0, 0, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 34,
|
|
0, 35, 36, 37, 38, 39, 40, 0, 0, 0,
|
|
0, 41, 42, 43, 44, 45, 46, 47, 0, 0,
|
|
- 0, 0, 0, 0, 0, 48, 166, 0, 0, 0,
|
|
- 0, 0, 0, 167, 168, 169, 170, 49, 50, 51,
|
|
- 0, 0, 0, 0, 0, 52, 53, 0, 0, 54,
|
|
- 0, 55, 56, 171, 172, 339, 173, 174, 175, 176,
|
|
- 177, 178, 179, 0, 0, 0, 0, 180, 181, 182,
|
|
- 183, 166, 0, 184, 0, 0, 0, 0, 167, 168,
|
|
- 169, 170, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
- 0, 0, 0, 0, 0, 0, 0, 0, 171, 172,
|
|
- 0, 173, 174, 175, 176, 177, 178, 179, 0, 0,
|
|
- 0, 0, 180, 181, 182, 183, 166, 0, 184, 0,
|
|
- 0, 0, 0, 167, 168, 169, 170, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 0, 48, 0, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 0, 0, 0, 49, 50, 0,
|
|
+ 51, 0, 52, 53, 0, 0, 0, 0, 252, 54,
|
|
+ 0, 55, 56, 16, 0, 17, 18, 19, 20, 21,
|
|
+ 0, 0, 22, 23, 24, 25, 26, 0, 27, 28,
|
|
+ 29, 30, 31, 32, 0, 0, 0, 0, 33, 0,
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
- 0, 0, 0, 0, 172, 0, 173, 174, 175, 176,
|
|
- 177, 178, 179, 0, 0, 0, 0, 180, 181, 182,
|
|
- 183, 0, 0, 184
|
|
+ 0, 0, 34, 0, 35, 36, 37, 38, 39, 40,
|
|
+ 0, 0, 0, 0, 41, 42, 43, 44, 45, 46,
|
|
+ 47, 0, 0, 0, 0, 0, 0, 0, 48, 0,
|
|
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
+ 49, 50, 0, 51, 0, 52, 53, 0, 0, 0,
|
|
+ 0, 281, 54, 0, 55, 56, 16, 0, 17, 18,
|
|
+ 19, 20, 21, 0, 0, 22, 23, 24, 25, 26,
|
|
+ 0, 27, 28, 29, 30, 31, 32, 0, 0, 0,
|
|
+ 0, 33, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 0, 34, 0, 35, 36, 37,
|
|
+ 38, 39, 40, 0, 0, 0, 0, 41, 42, 43,
|
|
+ 44, 45, 46, 47, 0, 0, 0, 0, 0, 0,
|
|
+ 0, 48, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
+ 0, 0, 0, 49, 50, 0, 51, 0, 52, 53,
|
|
+ 0, 0, 0, 0, 346, 54, 0, 55, 56, 16,
|
|
+ 0, 17, 18, 19, 20, 21, 0, 0, 22, 23,
|
|
+ 24, 25, 26, 0, 27, 28, 29, 30, 31, 32,
|
|
+ 0, 0, 0, 0, 33, 0, 0, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 0, 0, 0, 0, 34, 0,
|
|
+ 35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
|
|
+ 41, 42, 43, 44, 45, 46, 47, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 48, 166, 0, 0, 0, 0,
|
|
+ 0, 0, 167, 168, 169, 170, 49, 50, 0, 51,
|
|
+ 0, 52, 53, 0, 0, 0, 0, 0, 54, 0,
|
|
+ 55, 56, 171, 172, 339, 173, 174, 175, 176, 177,
|
|
+ 178, 179, 0, 0, 0, 0, 180, 166, 0, 181,
|
|
+ 182, 183, 184, 0, 167, 168, 169, 170, 0, 0,
|
|
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 171, 172, 0, 173, 174, 175,
|
|
+ 176, 177, 178, 179, 0, 0, 0, 0, 180, 166,
|
|
+ 0, 181, 182, 183, 184, 0, 167, 168, 169, 170,
|
|
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
|
+ 0, 0, 0, 0, 0, 0, 0, 172, 0, 173,
|
|
+ 174, 175, 176, 177, 178, 179, 0, 0, 0, 0,
|
|
+ 180, 0, 0, 181, 182, 183, 184
|
|
};
|
|
|
|
-#define yypact_value_is_default(Yystate) \
|
|
- (!!((Yystate) == (-400)))
|
|
-
|
|
-#define yytable_value_is_error(Yytable_value) \
|
|
- (!!((Yytable_value) == (-248)))
|
|
-
|
|
static const yytype_int16 yycheck[] =
|
|
{
|
|
15, 308, 11, 9, 9, 40, 46, 46, 126, 115,
|
|
@@ -795,8 +609,8 @@ static const yytype_int16 yycheck[] =
|
|
439, 9, 20, 39, 40, 41, 42, 25, 77, 54,
|
|
40, 41, 20, 67, 73, 74, 75, 25, 9, 55,
|
|
56, 43, 44, 19, 20, 21, 56, 23, 24, 20,
|
|
- 15, 16, 17, 0, 25, 104, 90, 9, 9, 11,
|
|
- 115, 9, 12, 11, 40, 41, 100, 11, 102, 98,
|
|
+ 15, 16, 17, 0, 25, 104, 9, 91, 11, 11,
|
|
+ 115, 9, 12, 11, 40, 41, 100, 9, 102, 98,
|
|
46, 77, 100, 382, 407, 101, 92, 100, 133, 55,
|
|
56, 100, 501, 102, 101, 223, 141, 101, 100, 100,
|
|
12, 100, 492, 118, 9, 9, 100, 11, 9, 432,
|
|
@@ -804,101 +618,72 @@ static const yytype_int16 yycheck[] =
|
|
126, 20, 45, 89, 102, 103, 126, 12, 143, 100,
|
|
9, 12, 11, 73, 74, 75, 15, 16, 17, 101,
|
|
100, 102, 21, 12, 159, 160, 161, 102, 163, 164,
|
|
- 165, 12, 100, 203, 203, 100, 73, 74, 75, 10,
|
|
+ 165, 12, 100, 203, 203, 100, 73, 74, 75, 100,
|
|
126, 73, 74, 75, 9, 464, 11, 100, 193, 12,
|
|
185, 186, 187, 188, 189, 190, 191, 192, 477, 224,
|
|
77, 12, 499, 62, 101, 100, 100, 12, 73, 74,
|
|
- 75, 100, 73, 74, 75, 69, 99, 212, 213, 214,
|
|
- 215, 216, 217, 209, 73, 74, 75, 323, 223, 99,
|
|
+ 75, 99, 73, 74, 75, 10, 99, 212, 213, 214,
|
|
+ 215, 216, 217, 209, 73, 74, 75, 323, 223, 69,
|
|
20, 11, 73, 74, 75, 73, 74, 75, 184, 69,
|
|
235, 100, 350, 102, 103, 122, 73, 74, 75, 244,
|
|
- 73, 74, 75, 20, 17, 18, 100, 203, 100, 99,
|
|
- 10, 99, 73, 74, 75, 23, 11, 30, 73, 74,
|
|
+ 73, 74, 75, 20, 17, 18, 100, 203, 100, 10,
|
|
+ 99, 99, 73, 74, 75, 23, 11, 30, 73, 74,
|
|
75, 34, 99, 60, 269, 270, 39, 75, 100, 42,
|
|
18, 276, 45, 103, 47, 103, 49, 50, 51, 52,
|
|
53, 277, 73, 74, 75, 103, 103, 103, 323, 100,
|
|
- 87, 296, 297, 298, 299, 92, 93, 94, 95, 20,
|
|
- 102, 98, 100, 308, 410, 310, 311, 99, 23, 10,
|
|
- 101, 198, 199, 200, 201, 202, 10, 204, 10, 206,
|
|
+ 87, 296, 297, 298, 299, 92, 20, 100, 95, 96,
|
|
+ 97, 98, 23, 308, 410, 310, 311, 102, 10, 10,
|
|
+ 101, 198, 199, 200, 201, 202, 99, 204, 10, 206,
|
|
207, 277, 73, 74, 75, 39, 40, 41, 42, 10,
|
|
- 335, 327, 46, 414, 48, 375, 375, 418, 60, 61,
|
|
- 421, 422, 10, 23, 300, 350, 73, 74, 75, 20,
|
|
- 101, 93, 94, 95, 435, 436, 98, 100, 99, 73,
|
|
- 74, 75, 99, 99, 445, 87, 73, 74, 75, 99,
|
|
- 92, 93, 94, 95, 101, 410, 98, 382, 459, 99,
|
|
- 99, 386, 463, 101, 465, 99, 99, 99, 99, 162,
|
|
- 9, 99, 99, 166, 167, 168, 169, 170, 171, 172,
|
|
- 173, 174, 175, 176, 177, 178, 179, 180, 10, 490,
|
|
- 415, 426, 417, 443, 301, 101, 497, 9, 433, 375,
|
|
- 99, 71, 309, 101, 99, 506, 456, 457, 100, 58,
|
|
- 59, 60, 61, 99, 9, 431, 100, 99, 468, 444,
|
|
- 0, 101, 70, 458, 99, 19, 99, 12, 478, 9,
|
|
- 480, 11, 12, 98, 297, 499, 471, 86, 87, 464,
|
|
- 195, 444, 33, 92, 93, 94, 95, 82, 498, 98,
|
|
- 60, 61, 477, 360, 362, 408, 363, 364, 493, 39,
|
|
- 40, 41, 42, 375, -1, -1, 46, 203, 48, 376,
|
|
- -1, 51, -1, -1, -1, -1, 86, 87, 58, 59,
|
|
- 60, 61, 92, 93, 94, 95, -1, -1, 98, 73,
|
|
- 74, 75, -1, 73, 74, 75, 0, 77, 78, 79,
|
|
- 80, 81, 82, 83, 84, 85, 86, 87, 12, -1,
|
|
- -1, -1, 92, 93, 94, 95, -1, 101, 98, 99,
|
|
+ 335, 327, 46, 414, 48, 375, 375, 418, 10, 23,
|
|
+ 421, 422, 20, 99, 300, 350, 73, 74, 75, 99,
|
|
+ 101, 73, 74, 75, 435, 436, 99, 99, 99, 73,
|
|
+ 74, 75, 100, 99, 445, 73, 74, 75, 3, 4,
|
|
+ 5, 6, 7, 8, 101, 410, 101, 382, 459, 101,
|
|
+ 99, 386, 463, 99, 465, 99, 99, 9, 99, 162,
|
|
+ 10, 99, 101, 166, 167, 168, 169, 170, 171, 172,
|
|
+ 173, 174, 175, 176, 177, 178, 179, 180, 9, 490,
|
|
+ 415, 426, 417, 443, 301, 71, 497, 99, 433, 375,
|
|
+ 99, 101, 309, 100, 99, 506, 456, 457, 60, 61,
|
|
+ 73, 74, 75, 9, 100, 431, 87, 101, 468, 444,
|
|
+ 0, 92, 99, 458, 95, 96, 97, 98, 478, 9,
|
|
+ 480, 11, 12, 70, 86, 87, 471, 19, 101, 464,
|
|
+ 92, 99, 99, 95, 96, 97, 98, 12, 498, 98,
|
|
+ 60, 61, 477, 360, 444, 297, 363, 364, 493, 39,
|
|
+ 40, 41, 42, 499, 33, 195, 46, 82, 48, 376,
|
|
+ 92, 51, 362, 95, 96, 97, 98, 87, 58, 59,
|
|
+ 60, 61, 92, 375, 203, 95, 96, 97, 98, 95,
|
|
+ 96, 97, 98, 73, 74, 75, 0, 77, 78, 79,
|
|
+ 80, 81, 82, 83, 84, 85, 86, 87, 12, 408,
|
|
+ -1, 58, 92, 60, 61, 95, 96, 97, 98, 99,
|
|
-1, 101, -1, -1, 104, 39, 40, 41, 42, -1,
|
|
- -1, -1, 46, -1, 48, 39, 40, 41, 42, 73,
|
|
- 74, 75, 46, -1, 48, -1, 339, 51, 3, 4,
|
|
- 5, 6, 7, 8, 58, 59, 60, 61, -1, 73,
|
|
- 74, 75, 92, 93, 94, 95, -1, 101, 98, 73,
|
|
+ -1, -1, 46, -1, 48, 39, 40, 41, 42, 86,
|
|
+ 87, -1, 46, -1, 48, 92, 339, 51, 95, 96,
|
|
+ 97, 98, -1, -1, 58, 59, 60, 61, -1, 73,
|
|
+ 74, 75, 73, 74, 75, -1, -1, -1, -1, 73,
|
|
74, 75, -1, 77, 78, 79, 80, 81, 82, 83,
|
|
- 84, 85, 86, 87, 73, 74, 75, -1, 92, 93,
|
|
- 94, 95, 0, 1, 98, 99, -1, 101, -1, -1,
|
|
- 104, 9, -1, 11, -1, 13, 14, 15, 16, 17,
|
|
- 99, -1, 20, 21, 22, 23, 24, -1, 26, 27,
|
|
- 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
|
|
- 38, 39, 40, 41, 42, 73, 74, 75, 46, 47,
|
|
- 48, 49, 50, -1, 52, 53, 54, 55, 56, 57,
|
|
- 73, 74, 75, -1, 62, 63, 64, 65, 66, 67,
|
|
- 68, -1, -1, 101, -1, -1, -1, -1, 76, -1,
|
|
- 73, 74, 75, -1, -1, -1, 99, -1, -1, -1,
|
|
- 88, 89, 90, 73, 74, 75, -1, -1, 96, 97,
|
|
- 0, 1, 100, 101, 102, 103, 99, -1, -1, 9,
|
|
- -1, 11, -1, 13, 14, 15, 16, 17, -1, 99,
|
|
- 20, 21, 22, 23, 24, -1, 26, 27, 28, 29,
|
|
- 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
|
|
- 40, 41, 42, -1, -1, -1, 46, 47, 48, 49,
|
|
- 50, -1, 52, 53, 54, 55, 56, 57, -1, -1,
|
|
- -1, -1, 62, 63, 64, 65, 66, 67, 68, -1,
|
|
- -1, -1, 87, -1, -1, -1, 76, 92, 93, 94,
|
|
- 95, -1, -1, 98, -1, -1, -1, -1, 88, 89,
|
|
- 90, -1, -1, -1, -1, -1, 96, 97, 1, -1,
|
|
- 100, 101, 102, 103, -1, -1, 9, 10, 11, -1,
|
|
- 13, 14, 15, 16, 17, -1, -1, 20, 21, 22,
|
|
- 23, 24, -1, 26, 27, 28, 29, 30, 31, 32,
|
|
- 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
|
|
- -1, -1, -1, 46, 47, 48, 49, 50, -1, 52,
|
|
- 53, 54, 55, 56, 57, -1, -1, -1, -1, 62,
|
|
- 63, 64, 65, 66, 67, 68, -1, -1, -1, -1,
|
|
- -1, -1, -1, 76, -1, -1, -1, -1, -1, -1,
|
|
- -1, -1, -1, -1, -1, 88, 89, 90, -1, -1,
|
|
- -1, -1, -1, 96, 97, 1, -1, 100, 101, 102,
|
|
- 103, -1, -1, 9, 10, 11, -1, 13, 14, 15,
|
|
- 16, 17, -1, -1, 20, 21, 22, 23, 24, -1,
|
|
- 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
|
|
- 36, 37, 38, 39, 40, 41, 42, -1, -1, -1,
|
|
- 46, 47, 48, 49, 50, -1, 52, 53, 54, 55,
|
|
- 56, 57, -1, -1, -1, -1, 62, 63, 64, 65,
|
|
- 66, 67, 68, -1, -1, -1, -1, -1, -1, -1,
|
|
- 76, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
- -1, -1, 88, 89, 90, -1, -1, -1, -1, -1,
|
|
- 96, 97, 1, -1, 100, 101, 102, 103, -1, -1,
|
|
- 9, 10, 11, -1, 13, 14, 15, 16, 17, -1,
|
|
- -1, 20, 21, 22, 23, 24, -1, 26, 27, 28,
|
|
- 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
|
|
- 39, 40, 41, 42, -1, -1, -1, 46, 47, 48,
|
|
- 49, 50, -1, 52, 53, 54, 55, 56, 57, -1,
|
|
- -1, -1, -1, 62, 63, 64, 65, 66, 67, 68,
|
|
- -1, -1, -1, -1, -1, -1, -1, 76, -1, -1,
|
|
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
|
|
- 89, 90, -1, -1, -1, -1, -1, 96, 97, 1,
|
|
- -1, 100, 101, 102, 103, -1, -1, 9, 10, 11,
|
|
+ 84, 85, 86, 87, 73, 74, 75, -1, 92, -1,
|
|
+ 101, 95, 96, 97, 98, 99, -1, 101, 0, 1,
|
|
+ 104, -1, -1, -1, -1, -1, -1, 9, -1, 11,
|
|
+ 99, 13, 14, 15, 16, 17, -1, -1, 20, 21,
|
|
+ 22, 23, 24, -1, 26, 27, 28, 29, 30, 31,
|
|
+ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
|
|
+ 42, 73, 74, 75, 46, 47, 48, 49, 50, -1,
|
|
+ 52, 53, 54, 55, 56, 57, 73, 74, 75, -1,
|
|
+ 62, 63, 64, 65, 66, 67, 68, 99, -1, 73,
|
|
+ 74, 75, -1, -1, 76, -1, -1, -1, -1, -1,
|
|
+ -1, -1, 99, -1, -1, -1, 88, 89, -1, 91,
|
|
+ -1, 93, 94, 0, 1, 99, -1, -1, 100, 101,
|
|
+ 102, 103, 9, -1, 11, -1, 13, 14, 15, 16,
|
|
+ 17, -1, -1, 20, 21, 22, 23, 24, -1, 26,
|
|
+ 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
|
|
+ 37, 38, 39, 40, 41, 42, -1, -1, -1, 46,
|
|
+ 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
|
|
+ 57, -1, -1, -1, -1, 62, 63, 64, 65, 66,
|
|
+ 67, 68, -1, -1, -1, -1, -1, -1, -1, 76,
|
|
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
+ -1, 88, 89, -1, 91, -1, 93, 94, -1, 1,
|
|
+ -1, -1, -1, 100, 101, 102, 103, 9, 10, 11,
|
|
-1, 13, 14, 15, 16, 17, -1, -1, 20, 21,
|
|
22, 23, 24, -1, 26, 27, 28, 29, 30, 31,
|
|
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
|
|
@@ -906,131 +691,131 @@ static const yytype_int16 yycheck[] =
|
|
52, 53, 54, 55, 56, 57, -1, -1, -1, -1,
|
|
62, 63, 64, 65, 66, 67, 68, -1, -1, -1,
|
|
-1, -1, -1, -1, 76, -1, -1, -1, -1, -1,
|
|
- -1, -1, -1, -1, -1, -1, 88, 89, 90, -1,
|
|
- -1, -1, -1, -1, 96, 97, 1, -1, 100, 101,
|
|
- 102, 103, -1, -1, 9, 10, 11, -1, 13, 14,
|
|
- 15, 16, 17, -1, -1, 20, 21, 22, 23, 24,
|
|
- -1, 26, 27, 28, 29, 30, 31, 32, 33, 34,
|
|
- 35, 36, 37, 38, 39, 40, 41, 42, -1, -1,
|
|
- -1, 46, 47, 48, 49, 50, -1, 52, 53, 54,
|
|
- 55, 56, 57, -1, -1, -1, -1, 62, 63, 64,
|
|
- 65, 66, 67, 68, -1, -1, -1, -1, -1, -1,
|
|
- -1, 76, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
- -1, -1, -1, 88, 89, 90, -1, -1, -1, -1,
|
|
- -1, 96, 97, 1, -1, 100, 101, 102, 103, -1,
|
|
- -1, 9, -1, 11, -1, 13, 14, 15, 16, 17,
|
|
- -1, -1, 20, 21, 22, 23, 24, -1, 26, 27,
|
|
- 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
|
|
- 38, 39, 40, 41, 42, -1, -1, -1, 46, 47,
|
|
- 48, 49, 50, -1, 52, 53, 54, 55, 56, 57,
|
|
- -1, -1, -1, -1, 62, 63, 64, 65, 66, 67,
|
|
- 68, -1, -1, 71, -1, -1, -1, -1, 76, -1,
|
|
+ -1, -1, -1, -1, -1, -1, 88, 89, -1, 91,
|
|
+ -1, 93, 94, -1, 1, -1, -1, -1, 100, 101,
|
|
+ 102, 103, 9, 10, 11, -1, 13, 14, 15, 16,
|
|
+ 17, -1, -1, 20, 21, 22, 23, 24, -1, 26,
|
|
+ 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
|
|
+ 37, 38, 39, 40, 41, 42, -1, -1, -1, 46,
|
|
+ 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
|
|
+ 57, -1, -1, -1, -1, 62, 63, 64, 65, 66,
|
|
+ 67, 68, -1, -1, -1, -1, -1, -1, -1, 76,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
- 88, 89, 90, -1, -1, -1, -1, -1, 96, 97,
|
|
- 1, -1, 100, 101, 102, 103, -1, -1, 9, -1,
|
|
- 11, -1, 13, 14, 15, 16, 17, -1, -1, 20,
|
|
- 21, 22, 23, 24, -1, 26, 27, 28, 29, 30,
|
|
- 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
|
|
- 41, 42, -1, -1, -1, 46, 47, 48, 49, 50,
|
|
- -1, 52, 53, 54, 55, 56, 57, -1, -1, -1,
|
|
- -1, 62, 63, 64, 65, 66, 67, 68, -1, -1,
|
|
- -1, -1, -1, -1, -1, 76, -1, -1, -1, -1,
|
|
- -1, -1, -1, -1, -1, -1, -1, 88, 89, 90,
|
|
- -1, -1, -1, -1, -1, 96, 97, 1, -1, 100,
|
|
- 101, 102, 103, -1, -1, 9, -1, 11, -1, 13,
|
|
- 14, 15, 16, 17, -1, -1, 20, 21, 22, 23,
|
|
- 24, -1, 26, 27, 28, 29, 30, 31, 32, -1,
|
|
- 34, 35, 36, 37, 38, 39, 40, 41, 42, -1,
|
|
- -1, -1, 46, 47, 48, 49, 50, -1, 52, 53,
|
|
- 54, 55, 56, 57, -1, -1, -1, -1, 62, 63,
|
|
- 64, 65, 66, 67, 68, -1, -1, -1, -1, -1,
|
|
- -1, -1, 76, -1, -1, -1, -1, -1, -1, -1,
|
|
- -1, -1, -1, -1, 88, 89, 90, -1, -1, -1,
|
|
- 1, -1, 96, 97, -1, -1, 100, 101, 102, 103,
|
|
- 11, -1, 13, 14, 15, 16, 17, -1, -1, 20,
|
|
- 21, 22, 23, 24, -1, 26, 27, 28, 29, 30,
|
|
- 31, -1, -1, -1, -1, 36, -1, -1, 51, -1,
|
|
- -1, -1, -1, -1, -1, 58, 59, 60, 61, 50,
|
|
- -1, 52, 53, 54, 55, 56, 57, -1, -1, -1,
|
|
- -1, 62, 63, 64, 65, 66, 67, 68, 81, 82,
|
|
- 83, 84, 85, 86, 87, 76, -1, -1, -1, 92,
|
|
- 93, 94, 95, -1, -1, 98, -1, 88, 89, 90,
|
|
- -1, -1, -1, 1, -1, 96, 97, -1, -1, 100,
|
|
- 101, 102, 103, 11, -1, 13, 14, 15, 16, 17,
|
|
- -1, -1, 20, 21, 22, 23, 24, -1, 26, 27,
|
|
- 28, 29, 30, 31, -1, -1, -1, -1, 36, -1,
|
|
- -1, -1, -1, -1, -1, -1, 58, 59, 60, 61,
|
|
- -1, -1, 50, -1, 52, 53, 54, 55, 56, 57,
|
|
- -1, -1, -1, -1, 62, 63, 64, 65, 66, 67,
|
|
- 68, 83, 84, 85, 86, 87, -1, -1, 76, -1,
|
|
- 92, 93, 94, 95, -1, -1, 98, -1, -1, -1,
|
|
- 88, 89, 90, -1, -1, -1, -1, -1, 96, 97,
|
|
- -1, 99, 100, -1, 102, 103, 9, -1, 11, -1,
|
|
- 13, 14, 15, 16, 17, -1, -1, 20, 21, 22,
|
|
- 23, 24, 25, 26, 27, 28, 29, 30, 31, -1,
|
|
- -1, -1, -1, 36, -1, -1, -1, -1, -1, -1,
|
|
- 58, 59, 60, 61, -1, -1, -1, 50, -1, 52,
|
|
- 53, 54, 55, 56, 57, -1, -1, -1, -1, 62,
|
|
- 63, 64, 65, 66, 67, 68, 84, 85, 86, 87,
|
|
- -1, -1, -1, 76, 92, 93, 94, 95, -1, -1,
|
|
- 98, -1, -1, -1, -1, 88, 89, 90, -1, -1,
|
|
- -1, -1, -1, 96, 97, -1, -1, 100, -1, 102,
|
|
- 103, 9, -1, 11, -1, 13, 14, 15, 16, 17,
|
|
- -1, -1, 20, 21, 22, 23, 24, -1, 26, 27,
|
|
- 28, 29, 30, 31, -1, -1, -1, -1, 36, -1,
|
|
- -1, -1, -1, -1, -1, 58, 59, 60, 61, -1,
|
|
- -1, -1, 50, -1, 52, 53, 54, 55, 56, 57,
|
|
- -1, -1, -1, -1, 62, 63, 64, 65, 66, 67,
|
|
- 68, -1, 85, 86, 87, -1, -1, -1, 76, 92,
|
|
- 93, 94, 95, -1, -1, 98, -1, -1, -1, -1,
|
|
- 88, 89, 90, -1, -1, -1, -1, -1, 96, 97,
|
|
- -1, -1, 100, -1, 102, 103, 11, 12, 13, 14,
|
|
- 15, 16, 17, -1, -1, 20, 21, 22, 23, 24,
|
|
- -1, 26, 27, 28, 29, 30, 31, -1, -1, -1,
|
|
- -1, 36, -1, -1, -1, -1, -1, -1, 58, 59,
|
|
- 60, 61, -1, -1, -1, 50, -1, 52, 53, 54,
|
|
- 55, 56, 57, -1, -1, -1, -1, 62, 63, 64,
|
|
- 65, 66, 67, 68, -1, -1, 86, 87, -1, -1,
|
|
- -1, 76, 92, 93, 94, 95, -1, -1, 98, -1,
|
|
- -1, -1, -1, 88, 89, 90, -1, -1, -1, -1,
|
|
- -1, 96, 97, -1, -1, 100, -1, 102, 103, 11,
|
|
+ -1, 88, 89, -1, 91, -1, 93, 94, -1, 1,
|
|
+ -1, -1, -1, 100, 101, 102, 103, 9, 10, 11,
|
|
-1, 13, 14, 15, 16, 17, -1, -1, 20, 21,
|
|
22, 23, 24, -1, 26, 27, 28, 29, 30, 31,
|
|
- -1, -1, -1, -1, 36, -1, -1, -1, -1, -1,
|
|
- -1, 58, -1, 60, 61, -1, -1, -1, 50, -1,
|
|
+ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
|
|
+ 42, -1, -1, -1, 46, 47, 48, 49, 50, -1,
|
|
+ 52, 53, 54, 55, 56, 57, -1, -1, -1, -1,
|
|
+ 62, 63, 64, 65, 66, 67, 68, -1, -1, -1,
|
|
+ -1, -1, -1, -1, 76, -1, -1, -1, -1, -1,
|
|
+ -1, -1, -1, -1, -1, -1, 88, 89, -1, 91,
|
|
+ -1, 93, 94, -1, 1, -1, -1, -1, 100, 101,
|
|
+ 102, 103, 9, 10, 11, -1, 13, 14, 15, 16,
|
|
+ 17, -1, -1, 20, 21, 22, 23, 24, -1, 26,
|
|
+ 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
|
|
+ 37, 38, 39, 40, 41, 42, -1, -1, -1, 46,
|
|
+ 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
|
|
+ 57, -1, -1, -1, -1, 62, 63, 64, 65, 66,
|
|
+ 67, 68, -1, -1, -1, -1, -1, -1, -1, 76,
|
|
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
+ -1, 88, 89, -1, 91, -1, 93, 94, -1, 1,
|
|
+ -1, -1, -1, 100, 101, 102, 103, 9, 10, 11,
|
|
+ -1, 13, 14, 15, 16, 17, -1, -1, 20, 21,
|
|
+ 22, 23, 24, -1, 26, 27, 28, 29, 30, 31,
|
|
+ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
|
|
+ 42, -1, -1, -1, 46, 47, 48, 49, 50, -1,
|
|
+ 52, 53, 54, 55, 56, 57, -1, -1, -1, -1,
|
|
+ 62, 63, 64, 65, 66, 67, 68, -1, -1, -1,
|
|
+ -1, -1, -1, -1, 76, -1, -1, -1, -1, -1,
|
|
+ -1, -1, -1, -1, -1, -1, 88, 89, -1, 91,
|
|
+ -1, 93, 94, -1, 1, -1, -1, -1, 100, 101,
|
|
+ 102, 103, 9, -1, 11, -1, 13, 14, 15, 16,
|
|
+ 17, -1, -1, 20, 21, 22, 23, 24, -1, 26,
|
|
+ 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
|
|
+ 37, 38, 39, 40, 41, 42, -1, -1, -1, 46,
|
|
+ 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
|
|
+ 57, -1, -1, -1, -1, 62, 63, 64, 65, 66,
|
|
+ 67, 68, -1, -1, 71, -1, -1, -1, -1, 76,
|
|
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
+ -1, 88, 89, -1, 91, -1, 93, 94, -1, 1,
|
|
+ -1, -1, -1, 100, 101, 102, 103, 9, -1, 11,
|
|
+ -1, 13, 14, 15, 16, 17, -1, -1, 20, 21,
|
|
+ 22, 23, 24, -1, 26, 27, 28, 29, 30, 31,
|
|
+ 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
|
|
+ 42, -1, -1, -1, 46, 47, 48, 49, 50, -1,
|
|
52, 53, 54, 55, 56, 57, -1, -1, -1, -1,
|
|
- 62, 63, 64, 65, 66, 67, 68, -1, -1, 86,
|
|
- 87, -1, -1, -1, 76, 92, 93, 94, 95, -1,
|
|
- -1, 98, -1, -1, -1, -1, 88, 89, 90, -1,
|
|
- -1, -1, -1, -1, 96, 97, -1, -1, 100, 101,
|
|
- 102, 103, 11, -1, 13, 14, 15, 16, 17, -1,
|
|
+ 62, 63, 64, 65, 66, 67, 68, -1, -1, -1,
|
|
+ -1, -1, -1, -1, 76, -1, -1, -1, -1, -1,
|
|
+ -1, -1, -1, -1, -1, -1, 88, 89, -1, 91,
|
|
+ -1, 93, 94, -1, 1, -1, -1, -1, 100, 101,
|
|
+ 102, 103, 9, -1, 11, -1, 13, 14, 15, 16,
|
|
+ 17, -1, -1, 20, 21, 22, 23, 24, -1, 26,
|
|
+ 27, 28, 29, 30, 31, 32, -1, 34, 35, 36,
|
|
+ 37, 38, 39, 40, 41, 42, -1, -1, -1, 46,
|
|
+ 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
|
|
+ 57, -1, -1, -1, -1, 62, 63, 64, 65, 66,
|
|
+ 67, 68, -1, -1, -1, -1, -1, -1, -1, 76,
|
|
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
+ -1, 88, 89, -1, 91, -1, 93, 94, 1, -1,
|
|
+ -1, -1, -1, 100, 101, 102, 103, -1, 11, -1,
|
|
+ 13, 14, 15, 16, 17, -1, -1, 20, 21, 22,
|
|
+ 23, 24, -1, 26, 27, 28, 29, 30, 31, -1,
|
|
+ -1, -1, -1, 36, -1, -1, 51, -1, -1, -1,
|
|
+ -1, -1, -1, 58, 59, 60, 61, 50, -1, 52,
|
|
+ 53, 54, 55, 56, 57, -1, -1, -1, -1, 62,
|
|
+ 63, 64, 65, 66, 67, 68, 81, 82, 83, 84,
|
|
+ 85, 86, 87, 76, -1, -1, -1, 92, -1, -1,
|
|
+ 95, 96, 97, 98, -1, 88, 89, -1, 91, -1,
|
|
+ 93, 94, 1, -1, -1, -1, -1, 100, 101, 102,
|
|
+ 103, -1, 11, -1, 13, 14, 15, 16, 17, -1,
|
|
-1, 20, 21, 22, 23, 24, -1, 26, 27, 28,
|
|
29, 30, 31, -1, -1, -1, -1, 36, -1, -1,
|
|
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
+ -1, -1, -1, -1, -1, 58, 59, 60, 61, -1,
|
|
+ -1, 50, -1, 52, 53, 54, 55, 56, 57, -1,
|
|
+ -1, -1, -1, 62, 63, 64, 65, 66, 67, 68,
|
|
+ 83, 84, 85, 86, 87, -1, -1, 76, -1, 92,
|
|
+ -1, -1, 95, 96, 97, 98, -1, -1, -1, 88,
|
|
+ 89, -1, 91, -1, 93, 94, -1, -1, -1, -1,
|
|
+ 99, 100, -1, 102, 103, 9, -1, 11, -1, 13,
|
|
+ 14, 15, 16, 17, -1, -1, 20, 21, 22, 23,
|
|
+ 24, 25, 26, 27, 28, 29, 30, 31, -1, -1,
|
|
+ -1, -1, 36, -1, -1, -1, -1, -1, -1, 58,
|
|
+ 59, 60, 61, -1, -1, -1, 50, -1, 52, 53,
|
|
+ 54, 55, 56, 57, -1, -1, -1, -1, 62, 63,
|
|
+ 64, 65, 66, 67, 68, 84, 85, 86, 87, -1,
|
|
+ -1, -1, 76, 92, -1, -1, 95, 96, 97, 98,
|
|
+ -1, -1, -1, -1, 88, 89, -1, 91, -1, 93,
|
|
+ 94, -1, -1, -1, -1, -1, 100, -1, 102, 103,
|
|
+ 9, -1, 11, -1, 13, 14, 15, 16, 17, -1,
|
|
+ -1, 20, 21, 22, 23, 24, -1, 26, 27, 28,
|
|
+ 29, 30, 31, -1, -1, -1, -1, 36, -1, -1,
|
|
+ -1, -1, -1, -1, 58, 59, 60, 61, -1, -1,
|
|
-1, 50, -1, 52, 53, 54, 55, 56, 57, -1,
|
|
-1, -1, -1, 62, 63, 64, 65, 66, 67, 68,
|
|
- -1, -1, -1, -1, -1, -1, -1, 76, -1, -1,
|
|
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
|
|
- 89, 90, -1, -1, -1, -1, -1, 96, 97, -1,
|
|
- 99, 100, -1, 102, 103, 11, -1, 13, 14, 15,
|
|
+ -1, 85, 86, 87, -1, -1, -1, 76, 92, -1,
|
|
+ -1, 95, 96, 97, 98, -1, -1, -1, -1, 88,
|
|
+ 89, -1, 91, -1, 93, 94, -1, -1, -1, -1,
|
|
+ -1, 100, -1, 102, 103, 11, 12, 13, 14, 15,
|
|
16, 17, -1, -1, 20, 21, 22, 23, 24, -1,
|
|
26, 27, 28, 29, 30, 31, -1, -1, -1, -1,
|
|
- 36, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
+ 36, -1, -1, -1, -1, 58, 59, 60, 61, -1,
|
|
-1, -1, -1, -1, 50, -1, 52, 53, 54, 55,
|
|
56, 57, -1, -1, -1, -1, 62, 63, 64, 65,
|
|
- 66, 67, 68, -1, -1, -1, -1, -1, -1, -1,
|
|
- 76, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
- -1, -1, 88, 89, 90, -1, -1, -1, -1, -1,
|
|
- 96, 97, -1, 99, 100, -1, 102, 103, 11, -1,
|
|
+ 66, 67, 68, 86, 87, -1, -1, -1, -1, 92,
|
|
+ 76, -1, 95, 96, 97, 98, -1, -1, -1, -1,
|
|
+ -1, -1, 88, 89, -1, 91, -1, 93, 94, -1,
|
|
+ -1, -1, -1, -1, 100, -1, 102, 103, 11, -1,
|
|
13, 14, 15, 16, 17, -1, -1, 20, 21, 22,
|
|
23, 24, -1, 26, 27, 28, 29, 30, 31, -1,
|
|
- -1, -1, -1, 36, -1, -1, -1, -1, -1, -1,
|
|
- -1, -1, -1, -1, -1, -1, -1, 50, -1, 52,
|
|
+ -1, -1, -1, 36, -1, -1, -1, -1, 58, 59,
|
|
+ 60, 61, -1, -1, -1, -1, -1, 50, -1, 52,
|
|
53, 54, 55, 56, 57, -1, -1, -1, -1, 62,
|
|
- 63, 64, 65, 66, 67, 68, -1, -1, -1, -1,
|
|
- -1, -1, -1, 76, -1, -1, -1, -1, -1, -1,
|
|
- -1, -1, -1, -1, -1, 88, 89, 90, -1, -1,
|
|
- -1, -1, -1, 96, 97, -1, 99, 100, -1, 102,
|
|
+ 63, 64, 65, 66, 67, 68, 86, 87, -1, -1,
|
|
+ -1, -1, 92, 76, -1, 95, 96, 97, 98, -1,
|
|
+ -1, -1, -1, -1, -1, 88, 89, -1, 91, -1,
|
|
+ 93, 94, -1, -1, -1, -1, -1, 100, 101, 102,
|
|
103, 11, -1, 13, 14, 15, 16, 17, -1, -1,
|
|
20, 21, 22, 23, 24, -1, 26, 27, 28, 29,
|
|
30, 31, -1, -1, -1, -1, 36, -1, -1, -1,
|
|
@@ -1039,7 +824,7 @@ static const yytype_int16 yycheck[] =
|
|
-1, -1, 62, 63, 64, 65, 66, 67, 68, -1,
|
|
-1, -1, -1, -1, -1, -1, 76, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, 88, 89,
|
|
- 90, -1, -1, -1, -1, -1, 96, 97, -1, 99,
|
|
+ -1, 91, -1, 93, 94, -1, -1, -1, -1, 99,
|
|
100, -1, 102, 103, 11, -1, 13, 14, 15, 16,
|
|
17, -1, -1, 20, 21, 22, 23, 24, -1, 26,
|
|
27, 28, 29, 30, 31, -1, -1, -1, -1, 36,
|
|
@@ -1048,8 +833,8 @@ static const yytype_int16 yycheck[] =
|
|
57, -1, -1, -1, -1, 62, 63, 64, 65, 66,
|
|
67, 68, -1, -1, -1, -1, -1, -1, -1, 76,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
- -1, 88, 89, 90, -1, -1, -1, -1, -1, 96,
|
|
- 97, -1, 99, 100, -1, 102, 103, 11, -1, 13,
|
|
+ -1, 88, 89, -1, 91, -1, 93, 94, -1, -1,
|
|
+ -1, -1, 99, 100, -1, 102, 103, 11, -1, 13,
|
|
14, 15, 16, 17, -1, -1, 20, 21, 22, 23,
|
|
24, -1, 26, 27, 28, 29, 30, 31, -1, -1,
|
|
-1, -1, 36, -1, -1, -1, -1, -1, -1, -1,
|
|
@@ -1057,33 +842,60 @@ static const yytype_int16 yycheck[] =
|
|
54, 55, 56, 57, -1, -1, -1, -1, 62, 63,
|
|
64, 65, 66, 67, 68, -1, -1, -1, -1, -1,
|
|
-1, -1, 76, -1, -1, -1, -1, -1, -1, -1,
|
|
- -1, -1, -1, -1, 88, 89, 90, -1, -1, -1,
|
|
- -1, -1, 96, 97, -1, 99, 100, -1, 102, 103,
|
|
+ -1, -1, -1, -1, 88, 89, -1, 91, -1, 93,
|
|
+ 94, -1, -1, -1, -1, 99, 100, -1, 102, 103,
|
|
11, -1, 13, 14, 15, 16, 17, -1, -1, 20,
|
|
21, 22, 23, 24, -1, 26, 27, 28, 29, 30,
|
|
31, -1, -1, -1, -1, 36, -1, -1, -1, -1,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, 50,
|
|
-1, 52, 53, 54, 55, 56, 57, -1, -1, -1,
|
|
-1, 62, 63, 64, 65, 66, 67, 68, -1, -1,
|
|
- -1, -1, -1, -1, -1, 76, 51, -1, -1, -1,
|
|
- -1, -1, -1, 58, 59, 60, 61, 88, 89, 90,
|
|
- -1, -1, -1, -1, -1, 96, 97, -1, -1, 100,
|
|
- -1, 102, 103, 78, 79, 80, 81, 82, 83, 84,
|
|
- 85, 86, 87, -1, -1, -1, -1, 92, 93, 94,
|
|
- 95, 51, -1, 98, -1, -1, -1, -1, 58, 59,
|
|
- 60, 61, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
- -1, -1, -1, -1, -1, -1, -1, -1, 78, 79,
|
|
- -1, 81, 82, 83, 84, 85, 86, 87, -1, -1,
|
|
- -1, -1, 92, 93, 94, 95, 51, -1, 98, -1,
|
|
- -1, -1, -1, 58, 59, 60, 61, -1, -1, -1,
|
|
+ -1, -1, -1, -1, -1, 76, -1, -1, -1, -1,
|
|
+ -1, -1, -1, -1, -1, -1, -1, 88, 89, -1,
|
|
+ 91, -1, 93, 94, -1, -1, -1, -1, 99, 100,
|
|
+ -1, 102, 103, 11, -1, 13, 14, 15, 16, 17,
|
|
+ -1, -1, 20, 21, 22, 23, 24, -1, 26, 27,
|
|
+ 28, 29, 30, 31, -1, -1, -1, -1, 36, -1,
|
|
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
+ -1, -1, 50, -1, 52, 53, 54, 55, 56, 57,
|
|
+ -1, -1, -1, -1, 62, 63, 64, 65, 66, 67,
|
|
+ 68, -1, -1, -1, -1, -1, -1, -1, 76, -1,
|
|
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
+ 88, 89, -1, 91, -1, 93, 94, -1, -1, -1,
|
|
+ -1, 99, 100, -1, 102, 103, 11, -1, 13, 14,
|
|
+ 15, 16, 17, -1, -1, 20, 21, 22, 23, 24,
|
|
+ -1, 26, 27, 28, 29, 30, 31, -1, -1, -1,
|
|
+ -1, 36, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
+ -1, -1, -1, -1, -1, 50, -1, 52, 53, 54,
|
|
+ 55, 56, 57, -1, -1, -1, -1, 62, 63, 64,
|
|
+ 65, 66, 67, 68, -1, -1, -1, -1, -1, -1,
|
|
+ -1, 76, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
+ -1, -1, -1, 88, 89, -1, 91, -1, 93, 94,
|
|
+ -1, -1, -1, -1, 99, 100, -1, 102, 103, 11,
|
|
+ -1, 13, 14, 15, 16, 17, -1, -1, 20, 21,
|
|
+ 22, 23, 24, -1, 26, 27, 28, 29, 30, 31,
|
|
+ -1, -1, -1, -1, 36, -1, -1, -1, -1, -1,
|
|
+ -1, -1, -1, -1, -1, -1, -1, -1, 50, -1,
|
|
+ 52, 53, 54, 55, 56, 57, -1, -1, -1, -1,
|
|
+ 62, 63, 64, 65, 66, 67, 68, -1, -1, -1,
|
|
+ -1, -1, -1, -1, 76, 51, -1, -1, -1, -1,
|
|
+ -1, -1, 58, 59, 60, 61, 88, 89, -1, 91,
|
|
+ -1, 93, 94, -1, -1, -1, -1, -1, 100, -1,
|
|
+ 102, 103, 78, 79, 80, 81, 82, 83, 84, 85,
|
|
+ 86, 87, -1, -1, -1, -1, 92, 51, -1, 95,
|
|
+ 96, 97, 98, -1, 58, 59, 60, 61, -1, -1,
|
|
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
+ -1, -1, -1, -1, 78, 79, -1, 81, 82, 83,
|
|
+ 84, 85, 86, 87, -1, -1, -1, -1, 92, 51,
|
|
+ -1, 95, 96, 97, 98, -1, 58, 59, 60, 61,
|
|
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
|
|
- -1, -1, -1, -1, 79, -1, 81, 82, 83, 84,
|
|
- 85, 86, 87, -1, -1, -1, -1, 92, 93, 94,
|
|
- 95, -1, -1, 98
|
|
+ -1, -1, -1, -1, -1, -1, -1, 79, -1, 81,
|
|
+ 82, 83, 84, 85, 86, 87, -1, -1, -1, -1,
|
|
+ 92, -1, -1, 95, 96, 97, 98
|
|
};
|
|
|
|
-/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
|
|
- symbol of state STATE-NUM. */
|
|
+ /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
|
|
+ symbol of state STATE-NUM. */
|
|
static const yytype_uint8 yystos[] =
|
|
{
|
|
0, 3, 4, 5, 6, 7, 8, 106, 107, 108,
|
|
@@ -1091,7 +903,7 @@ static const yytype_uint8 yystos[] =
|
|
16, 17, 20, 21, 22, 23, 24, 26, 27, 28,
|
|
29, 30, 31, 36, 50, 52, 53, 54, 55, 56,
|
|
57, 62, 63, 64, 65, 66, 67, 68, 76, 88,
|
|
- 89, 90, 96, 97, 100, 102, 103, 152, 153, 154,
|
|
+ 89, 91, 93, 94, 100, 102, 103, 152, 153, 154,
|
|
157, 158, 159, 160, 161, 162, 164, 167, 172, 173,
|
|
174, 175, 176, 177, 178, 179, 180, 9, 113, 1,
|
|
32, 34, 35, 37, 38, 39, 40, 41, 42, 46,
|
|
@@ -1104,9 +916,9 @@ static const yytype_uint8 yystos[] =
|
|
162, 162, 162, 162, 162, 99, 152, 181, 181, 73,
|
|
74, 75, 77, 9, 11, 100, 51, 58, 59, 60,
|
|
61, 78, 79, 81, 82, 83, 84, 85, 86, 87,
|
|
- 92, 93, 94, 95, 98, 100, 9, 11, 9, 11,
|
|
+ 92, 95, 96, 97, 98, 100, 9, 11, 9, 11,
|
|
9, 11, 9, 115, 144, 145, 20, 142, 100, 100,
|
|
- 100, 100, 67, 90, 100, 173, 100, 100, 113, 45,
|
|
+ 100, 100, 67, 91, 100, 173, 100, 100, 113, 45,
|
|
134, 101, 39, 40, 41, 42, 46, 48, 121, 122,
|
|
120, 12, 166, 100, 100, 152, 99, 113, 23, 115,
|
|
146, 99, 99, 152, 167, 181, 153, 10, 101, 166,
|
|
@@ -1139,6 +951,68 @@ static const yytype_uint8 yystos[] =
|
|
118, 116, 134, 140, 71, 133, 99, 116
|
|
};
|
|
|
|
+ /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
|
|
+static const yytype_uint8 yyr1[] =
|
|
+{
|
|
+ 0, 105, 107, 106, 108, 106, 109, 106, 110, 106,
|
|
+ 111, 106, 112, 106, 113, 114, 115, 116, 117, 118,
|
|
+ 118, 119, 119, 120, 120, 121, 121, 122, 122, 123,
|
|
+ 122, 124, 122, 122, 125, 122, 122, 122, 122, 122,
|
|
+ 122, 122, 122, 126, 127, 122, 122, 122, 128, 122,
|
|
+ 122, 122, 122, 129, 122, 122, 122, 130, 131, 131,
|
|
+ 132, 132, 132, 132, 132, 132, 132, 132, 133, 133,
|
|
+ 133, 134, 134, 135, 136, 136, 137, 137, 138, 139,
|
|
+ 140, 141, 141, 142, 143, 144, 145, 145, 146, 146,
|
|
+ 147, 147, 147, 148, 148, 150, 149, 151, 151, 152,
|
|
+ 152, 152, 152, 153, 153, 153, 154, 154, 154, 154,
|
|
+ 154, 154, 154, 154, 155, 154, 156, 156, 157, 157,
|
|
+ 157, 157, 157, 157, 157, 157, 157, 157, 157, 157,
|
|
+ 157, 157, 158, 158, 158, 158, 158, 158, 158, 158,
|
|
+ 158, 158, 158, 158, 158, 158, 159, 159, 159, 159,
|
|
+ 159, 159, 159, 159, 159, 160, 160, 160, 160, 160,
|
|
+ 160, 161, 161, 162, 162, 162, 162, 162, 162, 162,
|
|
+ 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
|
|
+ 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
|
|
+ 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
|
|
+ 162, 162, 162, 162, 162, 162, 162, 162, 162, 162,
|
|
+ 162, 163, 162, 162, 162, 162, 162, 164, 164, 165,
|
|
+ 165, 165, 165, 165, 166, 166, 167, 167, 168, 168,
|
|
+ 169, 170, 170, 170, 171, 171, 172, 173, 174, 175,
|
|
+ 176, 176, 177, 178, 178, 179, 179, 180, 180, 181,
|
|
+ 181, 181, 181
|
|
+};
|
|
+
|
|
+ /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
|
|
+static const yytype_uint8 yyr2[] =
|
|
+{
|
|
+ 0, 2, 0, 4, 0, 3, 0, 3, 0, 3,
|
|
+ 0, 3, 0, 3, 4, 7, 0, 4, 0, 0,
|
|
+ 2, 0, 2, 1, 1, 2, 2, 1, 4, 0,
|
|
+ 7, 0, 10, 4, 0, 7, 7, 7, 6, 6,
|
|
+ 2, 8, 8, 0, 0, 13, 9, 8, 0, 11,
|
|
+ 9, 7, 2, 0, 8, 2, 1, 2, 0, 3,
|
|
+ 1, 1, 3, 3, 3, 3, 3, 3, 0, 2,
|
|
+ 6, 0, 2, 0, 0, 1, 0, 1, 1, 1,
|
|
+ 1, 1, 0, 0, 0, 0, 1, 1, 0, 1,
|
|
+ 0, 2, 1, 2, 1, 0, 3, 1, 1, 3,
|
|
+ 3, 3, 1, 2, 3, 1, 3, 5, 6, 3,
|
|
+ 3, 5, 2, 4, 0, 5, 1, 1, 5, 4,
|
|
+ 5, 4, 5, 6, 5, 4, 5, 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,
|
|
+ 8, 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, 6, 1, 1, 1, 1, 3, 2, 3,
|
|
+ 2, 1, 1, 1, 0, 1, 0, 1, 0, 2,
|
|
+ 1, 1, 1, 1, 1, 1, 2, 2, 2, 2,
|
|
+ 2, 4, 2, 1, 3, 1, 3, 1, 3, 1,
|
|
+ 1, 1, 1
|
|
+};
|
|
+
|
|
typedef enum {
|
|
toketype_ival, toketype_opval, toketype_pval
|
|
} toketypes;
|
|
@@ -1176,6 +1050,6 @@ static const toketypes yy_type_tab[] =
|
|
};
|
|
|
|
/* Generated from:
|
|
- * 703ebd267cf8ca45f9dee9bc0f4b21511117a0c1dca1c8bc9438ce91950217ae perly.y
|
|
+ * 4fd37fdbff6285ba6e9096c2229255ecc6264d2f26835e535cf1c38f387ceae6 perly.y
|
|
* a4923588f219644801577c514014847e1e5240f49413fa3b89d3306fa4874d07 regen_perly.pl
|
|
* ex: set ro: */
|
|
diff --git a/perly.y b/perly.y
|
|
index 200964d..8717258 100644
|
|
--- a/perly.y
|
|
+++ b/perly.y
|
|
@@ -755,19 +755,31 @@ subscripted: gelem '{' expr ';' '}' /* *main::{something} */
|
|
jmaybe($3)); }
|
|
| term ARROW '(' ')' /* $subref->() */
|
|
{ $$ = newUNOP(OP_ENTERSUB, OPf_STACKED,
|
|
- newCVREF(0, scalar($1))); }
|
|
+ newCVREF(0, scalar($1)));
|
|
+ if (parser->expect == XBLOCK)
|
|
+ parser->expect = XOPERATOR;
|
|
+ }
|
|
| term ARROW '(' expr ')' /* $subref->(@args) */
|
|
{ $$ = newUNOP(OP_ENTERSUB, OPf_STACKED,
|
|
op_append_elem(OP_LIST, $4,
|
|
- newCVREF(0, scalar($1)))); }
|
|
+ newCVREF(0, scalar($1))));
|
|
+ if (parser->expect == XBLOCK)
|
|
+ parser->expect = XOPERATOR;
|
|
+ }
|
|
|
|
| subscripted '(' expr ')' /* $foo->{bar}->(@args) */
|
|
{ $$ = newUNOP(OP_ENTERSUB, OPf_STACKED,
|
|
op_append_elem(OP_LIST, $3,
|
|
- newCVREF(0, scalar($1)))); }
|
|
+ newCVREF(0, scalar($1))));
|
|
+ if (parser->expect == XBLOCK)
|
|
+ parser->expect = XOPERATOR;
|
|
+ }
|
|
| subscripted '(' ')' /* $foo->{bar}->() */
|
|
{ $$ = newUNOP(OP_ENTERSUB, OPf_STACKED,
|
|
- newCVREF(0, scalar($1))); }
|
|
+ newCVREF(0, scalar($1)));
|
|
+ if (parser->expect == XBLOCK)
|
|
+ parser->expect = XOPERATOR;
|
|
+ }
|
|
| '(' expr ')' '[' expr ']' /* list slice */
|
|
{ $$ = newSLICEOP(0, $5, $2); }
|
|
| QWLIST '[' expr ']' /* list literal slice */
|
|
diff --git a/t/op/postfixderef.t b/t/op/postfixderef.t
|
|
index 77988bf..fa066aa 100644
|
|
--- a/t/op/postfixderef.t
|
|
+++ b/t/op/postfixderef.t
|
|
@@ -16,7 +16,7 @@ BEGIN {
|
|
|
|
use strict qw(refs subs);
|
|
|
|
-plan(115);
|
|
+plan(129);
|
|
|
|
{
|
|
no strict 'refs';
|
|
@@ -353,3 +353,26 @@ is "$_->@{foo}", "foo->7 8 9", '->@{ does not interpolate without feature';
|
|
is "@{[foo->@[0,1]]}", "7 8", '->@[ inside "@{...}"';
|
|
is "@{[foo->@{foo}]}", "oof", '->@{ inside "@{...}"';
|
|
}
|
|
+
|
|
+# parsing of {} subscript as subscript rather than block
|
|
+{
|
|
+ sub ppp { "qqq" }
|
|
+ my $h = { ppp => "pp", qqq => "qq", rrr => 7 };
|
|
+ is ${$h}{ppp}, "pp";
|
|
+ is ${$h}{"rrr"} - 2, 5;
|
|
+ my $ar = [$h];
|
|
+ is $ar->[0]->{ppp}, "pp";
|
|
+ is $ar->[0]->{"rrr"} - 2, 5;
|
|
+ is $ar->[0]{ppp}, "pp";
|
|
+ is $ar->[0]{"rrr"} - 2, 5;
|
|
+ my $hr = {h=>$h};
|
|
+ is $hr->{"h"}->{ppp}, "pp";
|
|
+ is $hr->{"h"}->{"rrr"} - 2, 5;
|
|
+ is $hr->{"h"}{ppp}, "pp";
|
|
+ is $hr->{"h"}{"rrr"} - 2, 5;
|
|
+ my $cr = sub { $h };
|
|
+ is $cr->()->{ppp}, "pp";
|
|
+ is $cr->()->{"rrr"} - 2, 5;
|
|
+ is $cr->(){ppp}, "pp";
|
|
+ is $cr->(){"rrr"} - 2, 5;
|
|
+}
|
|
--
|
|
2.13.6
|
|
|