This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Correct three sub call comments in perly.y
authorFather Chrysostomos <sprout@cpan.org>
Sat, 1 Jun 2013 03:24:31 +0000 (20:24 -0700)
committerFather Chrysostomos <sprout@cpan.org>
Sat, 1 Jun 2013 03:34:23 +0000 (20:34 -0700)
NOAMP is only emitted by toke.c when there are no parentheses.  If
there is a parenthesis following a word, the lexer conjures up an '&'
token from nowhere.

perly.act
perly.h
perly.tab
perly.y

index 98b09d7..6982660 100644 (file)
--- a/perly.act
+++ b/perly.act
@@ -8,7 +8,7 @@ case 2:
 #line 141 "perly.y"
     {
                          PL_parser->expect = XSTATE;
 #line 141 "perly.y"
     {
                          PL_parser->expect = XSTATE;
-                       }
+                       ;}
     break;
 
   case 3:
     break;
 
   case 3:
@@ -16,14 +16,14 @@ case 2:
     {
                          newPROG(block_end((ps[(3) - (4)].val.ival),(ps[(4) - (4)].val.opval)));
                          (yyval.ival) = 0;
     {
                          newPROG(block_end((ps[(3) - (4)].val.ival),(ps[(4) - (4)].val.opval)));
                          (yyval.ival) = 0;
-                       }
+                       ;}
     break;
 
   case 4:
 #line 150 "perly.y"
     {
                          parser->expect = XTERM;
     break;
 
   case 4:
 #line 150 "perly.y"
     {
                          parser->expect = XTERM;
-                       }
+                       ;}
     break;
 
   case 5:
     break;
 
   case 5:
@@ -31,14 +31,14 @@ case 2:
     {
                          PL_eval_root = (ps[(3) - (3)].val.opval);
                          (yyval.ival) = 0;
     {
                          PL_eval_root = (ps[(3) - (3)].val.opval);
                          (yyval.ival) = 0;
-                       }
+                       ;}
     break;
 
   case 6:
 #line 159 "perly.y"
     {
                          parser->expect = XBLOCK;
     break;
 
   case 6:
 #line 159 "perly.y"
     {
                          parser->expect = XBLOCK;
-                       }
+                       ;}
     break;
 
   case 7:
     break;
 
   case 7:
@@ -49,14 +49,14 @@ case 2:
                          (yyval.ival) = 0;
                          yyunlex();
                          parser->yychar = YYEOF;
                          (yyval.ival) = 0;
                          yyunlex();
                          parser->yychar = YYEOF;
-                       }
+                       ;}
     break;
 
   case 8:
 #line 171 "perly.y"
     {
                          parser->expect = XSTATE;
     break;
 
   case 8:
 #line 171 "perly.y"
     {
                          parser->expect = XSTATE;
-                       }
+                       ;}
     break;
 
   case 9:
     break;
 
   case 9:
@@ -67,14 +67,14 @@ case 2:
                          (yyval.ival) = 0;
                          yyunlex();
                          parser->yychar = YYEOF;
                          (yyval.ival) = 0;
                          yyunlex();
                          parser->yychar = YYEOF;
-                       }
+                       ;}
     break;
 
   case 10:
 #line 183 "perly.y"
     {
                          parser->expect = XSTATE;
     break;
 
   case 10:
 #line 183 "perly.y"
     {
                          parser->expect = XSTATE;
-                       }
+                       ;}
     break;
 
   case 11:
     break;
 
   case 11:
@@ -85,14 +85,14 @@ case 2:
                          (yyval.ival) = 0;
                          yyunlex();
                          parser->yychar = YYEOF;
                          (yyval.ival) = 0;
                          yyunlex();
                          parser->yychar = YYEOF;
-                       }
+                       ;}
     break;
 
   case 12:
 #line 195 "perly.y"
     {
                          parser->expect = XSTATE;
     break;
 
   case 12:
 #line 195 "perly.y"
     {
                          parser->expect = XSTATE;
-                       }
+                       ;}
     break;
 
   case 13:
     break;
 
   case 13:
@@ -100,7 +100,7 @@ case 2:
     {
                          PL_eval_root = (ps[(3) - (3)].val.opval);
                          (yyval.ival) = 0;
     {
                          PL_eval_root = (ps[(3) - (3)].val.opval);
                          (yyval.ival) = 0;
-                       }
+                       ;}
     break;
 
   case 14:
     break;
 
   case 14:
@@ -110,7 +110,7 @@ case 2:
                          (yyval.opval) = block_end((ps[(2) - (4)].val.ival), (ps[(3) - (4)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),'}');
                          (yyval.opval) = block_end((ps[(2) - (4)].val.ival), (ps[(3) - (4)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),'}');
-                       }
+                       ;}
     break;
 
   case 15:
     break;
 
   case 15:
@@ -120,12 +120,12 @@ case 2:
                          (yyval.opval) = block_end((ps[(2) - (7)].val.ival), (ps[(5) - (7)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (7)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(7) - (7)].val.i_tkval),(yyval.opval),'}');
                          (yyval.opval) = block_end((ps[(2) - (7)].val.ival), (ps[(5) - (7)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (7)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(7) - (7)].val.i_tkval),(yyval.opval),'}');
-                       }
+                       ;}
     break;
 
   case 16:
 #line 226 "perly.y"
     break;
 
   case 16:
 #line 226 "perly.y"
-    { (yyval.ival) = block_start(TRUE); }
+    { (yyval.ival) = block_start(TRUE); ;}
     break;
 
   case 17:
     break;
 
   case 17:
@@ -135,17 +135,17 @@ case 2:
                          (yyval.opval) = block_end((ps[(2) - (4)].val.ival), (ps[(3) - (4)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),'}');
                          (yyval.opval) = block_end((ps[(2) - (4)].val.ival), (ps[(3) - (4)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),'}');
-                       }
+                       ;}
     break;
 
   case 18:
 #line 239 "perly.y"
     break;
 
   case 18:
 #line 239 "perly.y"
-    { (yyval.ival) = block_start(FALSE); }
+    { (yyval.ival) = block_start(FALSE); ;}
     break;
 
   case 19:
 #line 244 "perly.y"
     break;
 
   case 19:
 #line 244 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (OP*)NULL; ;}
     break;
 
   case 20:
     break;
 
   case 20:
@@ -154,12 +154,12 @@ case 2:
                            PL_pad_reset_pending = TRUE;
                            if ((ps[(1) - (2)].val.opval) && (ps[(2) - (2)].val.opval))
                                PL_hints |= HINT_BLOCK_SCOPE;
                            PL_pad_reset_pending = TRUE;
                            if ((ps[(1) - (2)].val.opval) && (ps[(2) - (2)].val.opval))
                                PL_hints |= HINT_BLOCK_SCOPE;
-                       }
+                       ;}
     break;
 
   case 21:
 #line 255 "perly.y"
     break;
 
   case 21:
 #line 255 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (OP*)NULL; ;}
     break;
 
   case 22:
     break;
 
   case 22:
@@ -168,7 +168,7 @@ case 2:
                            PL_pad_reset_pending = TRUE;
                            if ((ps[(1) - (2)].val.opval) && (ps[(2) - (2)].val.opval))
                                PL_hints |= HINT_BLOCK_SCOPE;
                            PL_pad_reset_pending = TRUE;
                            if ((ps[(1) - (2)].val.opval) && (ps[(2) - (2)].val.opval))
                                PL_hints |= HINT_BLOCK_SCOPE;
-                       }
+                       ;}
     break;
 
   case 23:
     break;
 
   case 23:
@@ -179,12 +179,12 @@ case 2:
                          } else {
                              (yyval.opval) = IF_MAD(newOP(OP_NULL, 0), NULL);
                          }
                          } else {
                              (yyval.opval) = IF_MAD(newOP(OP_NULL, 0), NULL);
                          }
-                       }
+                       ;}
     break;
 
   case 24:
 #line 274 "perly.y"
     break;
 
   case 24:
 #line 274 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 25:
     break;
 
   case 25:
@@ -195,7 +195,7 @@ case 2:
                                          PVAL((ps[(1) - (2)].val.p_tkval)), (ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.p_tkval),
                              (ps[(2) - (2)].val.opval) ? cLISTOPx((yyval.opval))->op_first : (yyval.opval), 'L');
                                          PVAL((ps[(1) - (2)].val.p_tkval)), (ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.p_tkval),
                              (ps[(2) - (2)].val.opval) ? cLISTOPx((yyval.opval))->op_first : (yyval.opval), 'L');
-                       }
+                       ;}
     break;
 
   case 26:
     break;
 
   case 26:
@@ -205,12 +205,12 @@ case 2:
                                           * PVAL((ps[(1) - (2)].val.p_tkval))[strlen(PVAL((ps[(1) - (2)].val.p_tkval)))+1],
                                          PVAL((ps[(1) - (2)].val.p_tkval)), (ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.p_tkval), cLISTOPx((yyval.opval))->op_first, 'L');
                                           * PVAL((ps[(1) - (2)].val.p_tkval))[strlen(PVAL((ps[(1) - (2)].val.p_tkval)))+1],
                                          PVAL((ps[(1) - (2)].val.p_tkval)), (ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.p_tkval), cLISTOPx((yyval.opval))->op_first, 'L');
-                       }
+                       ;}
     break;
 
   case 27:
 #line 296 "perly.y"
     break;
 
   case 27:
 #line 296 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 28:
     break;
 
   case 28:
@@ -218,7 +218,7 @@ case 2:
     {
                          (yyval.opval) = newOP(OP_NULL,0);
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'p');
     {
                          (yyval.opval) = newOP(OP_NULL,0);
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'p');
-                       }
+                       ;}
     break;
 
   case 29:
     break;
 
   case 29:
@@ -238,7 +238,7 @@ case 2:
                              SvREFCNT_inc_simple_void(fmtcv);
                              pad_add_anon(fmtcv, OP_NULL);
                          }
                              SvREFCNT_inc_simple_void(fmtcv);
                              pad_add_anon(fmtcv, OP_NULL);
                          }
-                       }
+                       ;}
     break;
 
   case 30:
     break;
 
   case 30:
@@ -263,7 +263,7 @@ case 2:
                              CvCLONE_on(PL_compcv);
                          PL_parser->in_my = 0;
                          PL_parser->in_my_stash = NULL;
                              CvCLONE_on(PL_compcv);
                          PL_parser->in_my = 0;
                          PL_parser->in_my_stash = NULL;
-                       }
+                       ;}
     break;
 
   case 31:
     break;
 
   case 31:
@@ -294,7 +294,7 @@ case 2:
                          (yyval.opval) = (OP*)NULL;
 #endif
                          intro_my();
                          (yyval.opval) = (OP*)NULL;
 #endif
                          intro_my();
-                       }
+                       ;}
     break;
 
   case 32:
     break;
 
   case 32:
@@ -312,12 +312,12 @@ case 2:
                              package_version((ps[(2) - (4)].val.opval));
                          (yyval.opval) = (OP*)NULL;
 #endif
                              package_version((ps[(2) - (4)].val.opval));
                          (yyval.opval) = (OP*)NULL;
 #endif
-                       }
+                       ;}
     break;
 
   case 33:
 #line 385 "perly.y"
     break;
 
   case 33:
 #line 385 "perly.y"
-    { CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ }
+    { CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ ;}
     break;
 
   case 34:
     break;
 
   case 34:
@@ -335,7 +335,7 @@ case 2:
                          utilize(IVAL((ps[(1) - (7)].val.i_tkval)), (ps[(2) - (7)].val.ival), (ps[(4) - (7)].val.opval), (ps[(5) - (7)].val.opval), (ps[(6) - (7)].val.opval));
                          (yyval.opval) = (OP*)NULL;
 #endif
                          utilize(IVAL((ps[(1) - (7)].val.i_tkval)), (ps[(2) - (7)].val.ival), (ps[(4) - (7)].val.opval), (ps[(5) - (7)].val.opval), (ps[(6) - (7)].val.opval));
                          (yyval.opval) = (OP*)NULL;
 #endif
-                       }
+                       ;}
     break;
 
   case 35:
     break;
 
   case 35:
@@ -347,7 +347,7 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (7)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (7)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (7)].val.i_tkval));
                          TOKEN_GETMAD((ps[(2) - (7)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (7)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (7)].val.i_tkval));
-                       }
+                       ;}
     break;
 
   case 36:
     break;
 
   case 36:
@@ -359,7 +359,7 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (7)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (7)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (7)].val.i_tkval));
                          TOKEN_GETMAD((ps[(2) - (7)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (7)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (7)].val.i_tkval));
-                       }
+                       ;}
     break;
 
   case 37:
     break;
 
   case 37:
@@ -373,17 +373,17 @@ case 2:
                                      ? 0
                                      : offset));
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (6)].val.i_tkval));
                                      ? 0
                                      : offset));
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (6)].val.i_tkval));
-                       }
+                       ;}
     break;
 
   case 38:
 #line 431 "perly.y"
     break;
 
   case 38:
 #line 431 "perly.y"
-    { (yyval.opval) = block_end((ps[(3) - (6)].val.ival), newWHENOP((ps[(4) - (6)].val.opval), op_scope((ps[(6) - (6)].val.opval)))); }
+    { (yyval.opval) = block_end((ps[(3) - (6)].val.ival), newWHENOP((ps[(4) - (6)].val.opval), op_scope((ps[(6) - (6)].val.opval)))); ;}
     break;
 
   case 39:
 #line 433 "perly.y"
     break;
 
   case 39:
 #line 433 "perly.y"
-    { (yyval.opval) = newWHENOP(0, op_scope((ps[(2) - (2)].val.opval))); }
+    { (yyval.opval) = newWHENOP(0, op_scope((ps[(2) - (2)].val.opval))); ;}
     break;
 
   case 40:
     break;
 
   case 40:
@@ -396,7 +396,7 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (8)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (8)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (8)].val.i_tkval));
                          TOKEN_GETMAD((ps[(2) - (8)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (8)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (8)].val.i_tkval));
-                       }
+                       ;}
     break;
 
   case 41:
     break;
 
   case 41:
@@ -409,7 +409,7 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (8)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (8)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (8)].val.i_tkval));
                          TOKEN_GETMAD((ps[(2) - (8)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (8)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (8)].val.i_tkval));
-                       }
+                       ;}
     break;
 
   case 42:
     break;
 
   case 42:
@@ -432,7 +432,7 @@ case 2:
                          TOKEN_GETMAD((ps[(7) - (11)].val.i_tkval),(yyval.opval),'2');
                          TOKEN_GETMAD((ps[(10) - (11)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (11)].val.i_tkval));
                          TOKEN_GETMAD((ps[(7) - (11)].val.i_tkval),(yyval.opval),'2');
                          TOKEN_GETMAD((ps[(10) - (11)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (11)].val.i_tkval));
-                       }
+                       ;}
     break;
 
   case 43:
     break;
 
   case 43:
@@ -444,7 +444,7 @@ case 2:
                          TOKEN_GETMAD((ps[(5) - (9)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(7) - (9)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (9)].val.i_tkval));
                          TOKEN_GETMAD((ps[(5) - (9)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(7) - (9)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (9)].val.i_tkval));
-                       }
+                       ;}
     break;
 
   case 44:
     break;
 
   case 44:
@@ -456,7 +456,7 @@ case 2:
                          TOKEN_GETMAD((ps[(3) - (8)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(6) - (8)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (8)].val.i_tkval));
                          TOKEN_GETMAD((ps[(3) - (8)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(6) - (8)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (8)].val.i_tkval));
-                       }
+                       ;}
     break;
 
   case 45:
     break;
 
   case 45:
@@ -468,7 +468,7 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (7)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (7)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (7)].val.i_tkval));
                          TOKEN_GETMAD((ps[(2) - (7)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (7)].val.i_tkval),(yyval.opval),')');
                          PL_parser->copline = (line_t)IVAL((ps[(1) - (7)].val.i_tkval));
-                       }
+                       ;}
     break;
 
   case 46:
     break;
 
   case 46:
@@ -477,7 +477,7 @@ case 2:
                          /* a block is a loop that happens once */
                          (yyval.opval) = newWHILEOP(0, 1, (LOOP*)(OP*)NULL,
                                  (OP*)NULL, (ps[(1) - (2)].val.opval), (ps[(2) - (2)].val.opval), 0);
                          /* a block is a loop that happens once */
                          (yyval.opval) = newWHILEOP(0, 1, (LOOP*)(OP*)NULL,
                                  (OP*)NULL, (ps[(1) - (2)].val.opval), (ps[(2) - (2)].val.opval), 0);
-                       }
+                       ;}
     break;
 
   case 47:
     break;
 
   case 47:
@@ -487,7 +487,7 @@ case 2:
                          if ((ps[(2) - (5)].val.opval)) {
                              package_version((ps[(2) - (5)].val.opval));
                          }
                          if ((ps[(2) - (5)].val.opval)) {
                              package_version((ps[(2) - (5)].val.opval));
                          }
-                       }
+                       ;}
     break;
 
   case 48:
     break;
 
   case 48:
@@ -500,7 +500,7 @@ case 2:
                          TOKEN_GETMAD((ps[(8) - (8)].val.i_tkval),(yyval.opval),'}');
                          if (PL_parser->copline > (line_t)IVAL((ps[(4) - (8)].val.i_tkval)))
                              PL_parser->copline = (line_t)IVAL((ps[(4) - (8)].val.i_tkval));
                          TOKEN_GETMAD((ps[(8) - (8)].val.i_tkval),(yyval.opval),'}');
                          if (PL_parser->copline > (line_t)IVAL((ps[(4) - (8)].val.i_tkval)))
                              PL_parser->copline = (line_t)IVAL((ps[(4) - (8)].val.i_tkval));
-                       }
+                       ;}
     break;
 
   case 49:
     break;
 
   case 49:
@@ -509,7 +509,7 @@ case 2:
                          PL_parser->expect = XSTATE;
                          (yyval.opval) = (ps[(1) - (2)].val.opval);
                          TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),';');
                          PL_parser->expect = XSTATE;
                          (yyval.opval) = (ps[(1) - (2)].val.opval);
                          TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),';');
-                       }
+                       ;}
     break;
 
   case 50:
     break;
 
   case 50:
@@ -519,7 +519,7 @@ case 2:
                          (yyval.opval) = IF_MAD(newOP(OP_NULL, 0), (OP*)NULL);
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),';');
                          PL_parser->copline = NOLINE;
                          (yyval.opval) = IF_MAD(newOP(OP_NULL, 0), (OP*)NULL);
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),';');
                          PL_parser->copline = NOLINE;
-                       }
+                       ;}
     break;
 
   case 51:
     break;
 
   case 51:
@@ -543,55 +543,55 @@ case 2:
                          else PL_parser->copline--;
                          (yyval.opval) = newSTATEOP(0, NULL,
                                          convert(OP_FORMLINE, 0, list));
                          else PL_parser->copline--;
                          (yyval.opval) = newSTATEOP(0, NULL,
                                          convert(OP_FORMLINE, 0, list));
-                       }
+                       ;}
     break;
 
   case 52:
 #line 565 "perly.y"
     break;
 
   case 52:
 #line 565 "perly.y"
-    { (yyval.opval) = NULL; }
+    { (yyval.opval) = NULL; ;}
     break;
 
   case 53:
 #line 567 "perly.y"
     break;
 
   case 53:
 #line 567 "perly.y"
-    { (yyval.opval) = op_unscope((ps[(2) - (3)].val.opval)); }
+    { (yyval.opval) = op_unscope((ps[(2) - (3)].val.opval)); ;}
     break;
 
   case 54:
 #line 572 "perly.y"
     break;
 
   case 54:
 #line 572 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (OP*)NULL; ;}
     break;
 
   case 55:
 #line 574 "perly.y"
     break;
 
   case 55:
 #line 574 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 56:
 #line 576 "perly.y"
     { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'i');
     break;
 
   case 56:
 #line 576 "perly.y"
     { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'i');
-                       }
+                       ;}
     break;
 
   case 57:
 #line 580 "perly.y"
     { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'i');
     break;
 
   case 57:
 #line 580 "perly.y"
     { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'i');
-                       }
+                       ;}
     break;
 
   case 58:
 #line 584 "perly.y"
     { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, scalar((ps[(3) - (3)].val.opval)), (ps[(1) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'w');
     break;
 
   case 58:
 #line 584 "perly.y"
     { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, scalar((ps[(3) - (3)].val.opval)), (ps[(1) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'w');
-                       }
+                       ;}
     break;
 
   case 59:
 #line 588 "perly.y"
     { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'w');
     break;
 
   case 59:
 #line 588 "perly.y"
     { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'w');
-                       }
+                       ;}
     break;
 
   case 60:
     break;
 
   case 60:
@@ -599,17 +599,17 @@ case 2:
     { (yyval.opval) = newFOROP(0, (OP*)NULL, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval), (OP*)NULL);
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'w');
                          PL_parser->copline = (line_t)IVAL((ps[(2) - (3)].val.i_tkval));
     { (yyval.opval) = newFOROP(0, (OP*)NULL, (ps[(3) - (3)].val.opval), (ps[(1) - (3)].val.opval), (OP*)NULL);
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'w');
                          PL_parser->copline = (line_t)IVAL((ps[(2) - (3)].val.i_tkval));
-                       }
+                       ;}
     break;
 
   case 61:
 #line 597 "perly.y"
     break;
 
   case 61:
 #line 597 "perly.y"
-    { (yyval.opval) = newWHENOP((ps[(3) - (3)].val.opval), op_scope((ps[(1) - (3)].val.opval))); }
+    { (yyval.opval) = newWHENOP((ps[(3) - (3)].val.opval), op_scope((ps[(1) - (3)].val.opval))); ;}
     break;
 
   case 62:
 #line 602 "perly.y"
     break;
 
   case 62:
 #line 602 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (OP*)NULL; ;}
     break;
 
   case 63:
     break;
 
   case 63:
@@ -618,7 +618,7 @@ case 2:
                          ((ps[(2) - (2)].val.opval))->op_flags |= OPf_PARENS;
                          (yyval.opval) = op_scope((ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
                          ((ps[(2) - (2)].val.opval))->op_flags |= OPf_PARENS;
                          (yyval.opval) = op_scope((ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 64:
     break;
 
   case 64:
@@ -631,12 +631,12 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (6)].val.i_tkval),(yyval.opval),'I');
                          TOKEN_GETMAD((ps[(2) - (6)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (6)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(1) - (6)].val.i_tkval),(yyval.opval),'I');
                          TOKEN_GETMAD((ps[(2) - (6)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (6)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 65:
 #line 623 "perly.y"
     break;
 
   case 65:
 #line 623 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (OP*)NULL; ;}
     break;
 
   case 66:
     break;
 
   case 66:
@@ -644,91 +644,91 @@ case 2:
     {
                          (yyval.opval) = op_scope((ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     {
                          (yyval.opval) = op_scope((ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 67:
 #line 633 "perly.y"
     { (yyval.ival) = (PL_min_intro_pending &&
                            PL_max_intro_pending >=  PL_min_intro_pending);
     break;
 
   case 67:
 #line 633 "perly.y"
     { (yyval.ival) = (PL_min_intro_pending &&
                            PL_max_intro_pending >=  PL_min_intro_pending);
-                         intro_my(); }
+                         intro_my(); ;}
     break;
 
   case 68:
 #line 639 "perly.y"
     break;
 
   case 68:
 #line 639 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (OP*)NULL; ;}
     break;
 
   case 70:
 #line 645 "perly.y"
     { YYSTYPE tmplval;
                          (void)scan_num("1", &tmplval);
     break;
 
   case 70:
 #line 645 "perly.y"
     { YYSTYPE tmplval;
                          (void)scan_num("1", &tmplval);
-                         (yyval.opval) = tmplval.opval; }
+                         (yyval.opval) = tmplval.opval; ;}
     break;
 
   case 72:
 #line 653 "perly.y"
     break;
 
   case 72:
 #line 653 "perly.y"
-    { (yyval.opval) = invert(scalar((ps[(1) - (1)].val.opval))); }
+    { (yyval.opval) = invert(scalar((ps[(1) - (1)].val.opval))); ;}
     break;
 
   case 73:
 #line 658 "perly.y"
     break;
 
   case 73:
 #line 658 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); ;}
     break;
 
   case 74:
 #line 662 "perly.y"
     break;
 
   case 74:
 #line 662 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); ;}
     break;
 
   case 75:
 #line 666 "perly.y"
     break;
 
   case 75:
 #line 666 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); ;}
     break;
 
   case 76:
 #line 669 "perly.y"
     break;
 
   case 76:
 #line 669 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 77:
 #line 670 "perly.y"
     break;
 
   case 77:
 #line 670 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (OP*)NULL; ;}
     break;
 
   case 78:
 #line 674 "perly.y"
     { (yyval.ival) = start_subparse(FALSE, 0);
     break;
 
   case 78:
 #line 674 "perly.y"
     { (yyval.ival) = start_subparse(FALSE, 0);
-                           SAVEFREESV(PL_compcv); }
+                           SAVEFREESV(PL_compcv); ;}
     break;
 
   case 79:
 #line 680 "perly.y"
     { (yyval.ival) = start_subparse(FALSE, CVf_ANON);
     break;
 
   case 79:
 #line 680 "perly.y"
     { (yyval.ival) = start_subparse(FALSE, CVf_ANON);
-                           SAVEFREESV(PL_compcv); }
+                           SAVEFREESV(PL_compcv); ;}
     break;
 
   case 80:
 #line 685 "perly.y"
     { (yyval.ival) = start_subparse(TRUE, 0);
     break;
 
   case 80:
 #line 685 "perly.y"
     { (yyval.ival) = start_subparse(TRUE, 0);
-                           SAVEFREESV(PL_compcv); }
+                           SAVEFREESV(PL_compcv); ;}
     break;
 
   case 83:
 #line 696 "perly.y"
     break;
 
   case 83:
 #line 696 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (OP*)NULL; ;}
     break;
 
   case 85:
 #line 702 "perly.y"
     break;
 
   case 85:
 #line 702 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (OP*)NULL; ;}
     break;
 
   case 86:
 #line 704 "perly.y"
     { (yyval.opval) = (ps[(2) - (2)].val.opval);
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),':');
     break;
 
   case 86:
 #line 704 "perly.y"
     { (yyval.opval) = (ps[(2) - (2)].val.opval);
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),':');
-                       }
+                       ;}
     break;
 
   case 87:
     break;
 
   case 87:
@@ -738,14 +738,14 @@ case 2:
                                    (OP*)NULL
                                );
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),':');
                                    (OP*)NULL
                                );
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),':');
-                       }
+                       ;}
     break;
 
   case 88:
 #line 718 "perly.y"
     { (yyval.opval) = (ps[(2) - (2)].val.opval);
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),':');
     break;
 
   case 88:
 #line 718 "perly.y"
     { (yyval.opval) = (ps[(2) - (2)].val.opval);
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),':');
-                       }
+                       ;}
     break;
 
   case 89:
     break;
 
   case 89:
@@ -755,12 +755,12 @@ case 2:
                                    (OP*)NULL
                                );
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),':');
                                    (OP*)NULL
                                );
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),':');
-                       }
+                       ;}
     break;
 
   case 90:
 #line 731 "perly.y"
     break;
 
   case 90:
 #line 731 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 91:
     break;
 
   case 91:
@@ -771,28 +771,28 @@ case 2:
                                );
                          PL_parser->expect = XSTATE;
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),';');
                                );
                          PL_parser->expect = XSTATE;
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),';');
-                       }
+                       ;}
     break;
 
   case 92:
 #line 743 "perly.y"
     { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 92:
 #line 743 "perly.y"
     { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 93:
 #line 747 "perly.y"
     { (yyval.opval) = newLOGOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 93:
 #line 747 "perly.y"
     { (yyval.opval) = newLOGOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 94:
 #line 751 "perly.y"
     { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 94:
 #line 751 "perly.y"
     { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 96:
     break;
 
   case 96:
@@ -805,7 +805,7 @@ case 2:
 #else
                          (yyval.opval) = (ps[(1) - (2)].val.opval);
 #endif
 #else
                          (yyval.opval) = (ps[(1) - (2)].val.opval);
 #endif
-                       }
+                       ;}
     break;
 
   case 97:
     break;
 
   case 97:
@@ -817,7 +817,7 @@ case 2:
                              token_getmad((ps[(2) - (3)].val.i_tkval),term,',');
                          )
                          (yyval.opval) = op_append_elem(OP_LIST, (ps[(1) - (3)].val.opval), term);
                              token_getmad((ps[(2) - (3)].val.i_tkval),term,',');
                          )
                          (yyval.opval) = op_append_elem(OP_LIST, (ps[(1) - (3)].val.opval), term);
-                       }
+                       ;}
     break;
 
   case 99:
     break;
 
   case 99:
@@ -825,7 +825,7 @@ case 2:
     { (yyval.opval) = convert(IVAL((ps[(1) - (3)].val.i_tkval)), OPf_STACKED,
                                op_prepend_elem(OP_LIST, newGVREF(IVAL((ps[(1) - (3)].val.i_tkval)),(ps[(2) - (3)].val.opval)), (ps[(3) - (3)].val.opval)) );
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'o');
     { (yyval.opval) = convert(IVAL((ps[(1) - (3)].val.i_tkval)), OPf_STACKED,
                                op_prepend_elem(OP_LIST, newGVREF(IVAL((ps[(1) - (3)].val.i_tkval)),(ps[(2) - (3)].val.opval)), (ps[(3) - (3)].val.opval)) );
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 100:
     break;
 
   case 100:
@@ -835,7 +835,7 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (5)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(1) - (5)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 101:
     break;
 
   case 101:
@@ -847,7 +847,7 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (6)].val.i_tkval),(yyval.opval),'A');
                          TOKEN_GETMAD((ps[(4) - (6)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(6) - (6)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(2) - (6)].val.i_tkval),(yyval.opval),'A');
                          TOKEN_GETMAD((ps[(4) - (6)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(6) - (6)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 102:
     break;
 
   case 102:
@@ -856,7 +856,7 @@ case 2:
                                op_append_elem(OP_LIST, scalar((ps[(1) - (3)].val.opval)),
                                    newUNOP(OP_METHOD, 0, (ps[(3) - (3)].val.opval))));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'A');
                                op_append_elem(OP_LIST, scalar((ps[(1) - (3)].val.opval)),
                                    newUNOP(OP_METHOD, 0, (ps[(3) - (3)].val.opval))));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'A');
-                       }
+                       ;}
     break;
 
   case 103:
     break;
 
   case 103:
@@ -865,7 +865,7 @@ case 2:
                                op_append_elem(OP_LIST,
                                    op_prepend_elem(OP_LIST, (ps[(2) - (3)].val.opval), (ps[(3) - (3)].val.opval)),
                                    newUNOP(OP_METHOD, 0, (ps[(1) - (3)].val.opval))));
                                op_append_elem(OP_LIST,
                                    op_prepend_elem(OP_LIST, (ps[(2) - (3)].val.opval), (ps[(3) - (3)].val.opval)),
                                    newUNOP(OP_METHOD, 0, (ps[(1) - (3)].val.opval))));
-                       }
+                       ;}
     break;
 
   case 104:
     break;
 
   case 104:
@@ -876,14 +876,14 @@ case 2:
                                    newUNOP(OP_METHOD, 0, (ps[(1) - (5)].val.opval))));
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')');
                                    newUNOP(OP_METHOD, 0, (ps[(1) - (5)].val.opval))));
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 105:
 #line 823 "perly.y"
     { (yyval.opval) = convert(IVAL((ps[(1) - (2)].val.i_tkval)), 0, (ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 105:
 #line 823 "perly.y"
     { (yyval.opval) = convert(IVAL((ps[(1) - (2)].val.i_tkval)), 0, (ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 106:
     break;
 
   case 106:
@@ -892,13 +892,13 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 107:
 #line 833 "perly.y"
     { SvREFCNT_inc_simple_void(PL_compcv);
     break;
 
   case 107:
 #line 833 "perly.y"
     { SvREFCNT_inc_simple_void(PL_compcv);
-                         (yyval.opval) = newANONATTRSUB((ps[(2) - (3)].val.ival), 0, (OP*)NULL, (ps[(3) - (3)].val.opval)); }
+                         (yyval.opval) = newANONATTRSUB((ps[(2) - (3)].val.ival), 0, (OP*)NULL, (ps[(3) - (3)].val.opval)); ;}
     break;
 
   case 108:
     break;
 
   case 108:
@@ -906,7 +906,7 @@ case 2:
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
                                 op_append_elem(OP_LIST,
                                   op_prepend_elem(OP_LIST, (ps[(4) - (5)].val.opval), (ps[(5) - (5)].val.opval)), (ps[(1) - (5)].val.opval)));
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
                                 op_append_elem(OP_LIST,
                                   op_prepend_elem(OP_LIST, (ps[(4) - (5)].val.opval), (ps[(5) - (5)].val.opval)), (ps[(1) - (5)].val.opval)));
-                       }
+                       ;}
     break;
 
   case 111:
     break;
 
   case 111:
@@ -916,7 +916,7 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}');
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}');
-                       }
+                       ;}
     break;
 
   case 112:
     break;
 
   case 112:
@@ -924,7 +924,7 @@ case 2:
     { (yyval.opval) = newBINOP(OP_AELEM, 0, oopsAV((ps[(1) - (4)].val.opval)), scalar((ps[(3) - (4)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']');
     { (yyval.opval) = newBINOP(OP_AELEM, 0, oopsAV((ps[(1) - (4)].val.opval)), scalar((ps[(3) - (4)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']');
-                       }
+                       ;}
     break;
 
   case 113:
     break;
 
   case 113:
@@ -935,7 +935,7 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'a');
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),']');
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'a');
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),']');
-                       }
+                       ;}
     break;
 
   case 114:
     break;
 
   case 114:
@@ -945,7 +945,7 @@ case 2:
                                        scalar((ps[(3) - (4)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']');
                                        scalar((ps[(3) - (4)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']');
-                       }
+                       ;}
     break;
 
   case 115:
     break;
 
   case 115:
@@ -955,7 +955,7 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}');
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}');
-                       }
+                       ;}
     break;
 
   case 116:
     break;
 
   case 116:
@@ -968,7 +968,7 @@ case 2:
                          TOKEN_GETMAD((ps[(3) - (6)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(5) - (6)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(6) - (6)].val.i_tkval),(yyval.opval),'}');
                          TOKEN_GETMAD((ps[(3) - (6)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(5) - (6)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(6) - (6)].val.i_tkval),(yyval.opval),'}');
-                       }
+                       ;}
     break;
 
   case 117:
     break;
 
   case 117:
@@ -980,7 +980,7 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}');
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}');
-                       }
+                       ;}
     break;
 
   case 118:
     break;
 
   case 118:
@@ -990,7 +990,7 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'a');
                          TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'a');
                          TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 119:
     break;
 
   case 119:
@@ -1001,7 +1001,7 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'a');
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'a');
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 120:
     break;
 
   case 120:
@@ -1011,7 +1011,7 @@ case 2:
                                               newCVREF(0, scalar((ps[(1) - (4)].val.opval)))));
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')');
                                               newCVREF(0, scalar((ps[(1) - (4)].val.opval)))));
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 121:
     break;
 
   case 121:
@@ -1020,7 +1020,7 @@ case 2:
                                   newCVREF(0, scalar((ps[(1) - (3)].val.opval))));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
                                   newCVREF(0, scalar((ps[(1) - (3)].val.opval))));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 122:
     break;
 
   case 122:
@@ -1030,7 +1030,7 @@ case 2:
                          TOKEN_GETMAD((ps[(3) - (6)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(4) - (6)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(6) - (6)].val.i_tkval),(yyval.opval),']');
                          TOKEN_GETMAD((ps[(3) - (6)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(4) - (6)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(6) - (6)].val.i_tkval),(yyval.opval),']');
-                       }
+                       ;}
     break;
 
   case 123:
     break;
 
   case 123:
@@ -1038,7 +1038,7 @@ case 2:
     { (yyval.opval) = newSLICEOP(0, (ps[(3) - (4)].val.opval), (ps[(1) - (4)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']');
     { (yyval.opval) = newSLICEOP(0, (ps[(3) - (4)].val.opval), (ps[(1) - (4)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']');
-                       }
+                       ;}
     break;
 
   case 124:
     break;
 
   case 124:
@@ -1048,21 +1048,21 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),']');
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),']');
-                       }
+                       ;}
     break;
 
   case 125:
 #line 955 "perly.y"
     { (yyval.opval) = newASSIGNOP(OPf_STACKED, (ps[(1) - (3)].val.opval), IVAL((ps[(2) - (3)].val.i_tkval)), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 125:
 #line 955 "perly.y"
     { (yyval.opval) = newASSIGNOP(OPf_STACKED, (ps[(1) - (3)].val.opval), IVAL((ps[(2) - (3)].val.i_tkval)), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 126:
 #line 959 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 126:
 #line 959 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 127:
     break;
 
   case 127:
@@ -1071,49 +1071,49 @@ case 2:
                                scalar((ps[(1) - (3)].val.opval));
                            (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, (ps[(1) - (3)].val.opval), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
                                scalar((ps[(1) - (3)].val.opval));
                            (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, (ps[(1) - (3)].val.opval), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 128:
 #line 969 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 128:
 #line 969 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 129:
 #line 973 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 129:
 #line 973 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 130:
 #line 977 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 130:
 #line 977 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 131:
 #line 981 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 131:
 #line 981 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 132:
 #line 985 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 132:
 #line 985 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 133:
 #line 989 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 133:
 #line 989 "perly.y"
     { (yyval.opval) = newBINOP(IVAL((ps[(2) - (3)].val.i_tkval)), 0, scalar((ps[(1) - (3)].val.opval)), scalar((ps[(3) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 134:
     break;
 
   case 134:
@@ -1128,28 +1128,28 @@ case 2:
                              op = (UNOP*)op->op_first; /* get to range */
                              token_getmad((ps[(2) - (3)].val.i_tkval),(OP*)op,'o');
                            });
                              op = (UNOP*)op->op_first; /* get to range */
                              token_getmad((ps[(2) - (3)].val.i_tkval),(OP*)op,'o');
                            });
-                       }
+                       ;}
     break;
 
   case 135:
 #line 1005 "perly.y"
     { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 135:
 #line 1005 "perly.y"
     { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 136:
 #line 1009 "perly.y"
     { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 136:
 #line 1009 "perly.y"
     { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 137:
 #line 1013 "perly.y"
     { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 137:
 #line 1013 "perly.y"
     { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 138:
     break;
 
   case 138:
@@ -1159,14 +1159,14 @@ case 2:
                                ((yyval.opval)->op_type == OP_NOT
                                    ? ((UNOP*)(yyval.opval))->op_first : (yyval.opval)),
                                '~');
                                ((yyval.opval)->op_type == OP_NOT
                                    ? ((UNOP*)(yyval.opval))->op_first : (yyval.opval)),
                                '~');
-                       }
+                       ;}
     break;
 
   case 139:
 #line 1027 "perly.y"
     { (yyval.opval) = newUNOP(OP_NEGATE, 0, scalar((ps[(2) - (2)].val.opval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 139:
 #line 1027 "perly.y"
     { (yyval.opval) = newUNOP(OP_NEGATE, 0, scalar((ps[(2) - (2)].val.opval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 140:
     break;
 
   case 140:
@@ -1176,21 +1176,21 @@ case 2:
                                    (ps[(2) - (2)].val.opval)
                                );
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'+');
                                    (ps[(2) - (2)].val.opval)
                                );
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'+');
-                       }
+                       ;}
     break;
 
   case 141:
 #line 1038 "perly.y"
     { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 141:
 #line 1038 "perly.y"
     { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 142:
 #line 1042 "perly.y"
     { (yyval.opval) = newUNOP(OP_COMPLEMENT, 0, scalar((ps[(2) - (2)].val.opval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 142:
 #line 1042 "perly.y"
     { (yyval.opval) = newUNOP(OP_COMPLEMENT, 0, scalar((ps[(2) - (2)].val.opval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 143:
     break;
 
   case 143:
@@ -1198,7 +1198,7 @@ case 2:
     { (yyval.opval) = newUNOP(OP_POSTINC, 0,
                                        op_lvalue(scalar((ps[(1) - (2)].val.opval)), OP_POSTINC));
                          TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),'o');
     { (yyval.opval) = newUNOP(OP_POSTINC, 0,
                                        op_lvalue(scalar((ps[(1) - (2)].val.opval)), OP_POSTINC));
                          TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 144:
     break;
 
   case 144:
@@ -1206,7 +1206,7 @@ case 2:
     { (yyval.opval) = newUNOP(OP_POSTDEC, 0,
                                        op_lvalue(scalar((ps[(1) - (2)].val.opval)), OP_POSTDEC));
                          TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),'o');
     { (yyval.opval) = newUNOP(OP_POSTDEC, 0,
                                        op_lvalue(scalar((ps[(1) - (2)].val.opval)), OP_POSTDEC));
                          TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 145:
     break;
 
   case 145:
@@ -1214,7 +1214,7 @@ case 2:
     { (yyval.opval) = newUNOP(OP_PREINC, 0,
                                        op_lvalue(scalar((ps[(2) - (2)].val.opval)), OP_PREINC));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     { (yyval.opval) = newUNOP(OP_PREINC, 0,
                                        op_lvalue(scalar((ps[(2) - (2)].val.opval)), OP_PREINC));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 146:
     break;
 
   case 146:
@@ -1222,7 +1222,7 @@ case 2:
     { (yyval.opval) = newUNOP(OP_PREDEC, 0,
                                        op_lvalue(scalar((ps[(2) - (2)].val.opval)), OP_PREDEC));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     { (yyval.opval) = newUNOP(OP_PREDEC, 0,
                                        op_lvalue(scalar((ps[(2) - (2)].val.opval)), OP_PREDEC));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 147:
     break;
 
   case 147:
@@ -1230,7 +1230,7 @@ case 2:
     { (yyval.opval) = newANONLIST((ps[(2) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),']');
     { (yyval.opval) = newANONLIST((ps[(2) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),']');
-                       }
+                       ;}
     break;
 
   case 148:
     break;
 
   case 148:
@@ -1238,7 +1238,7 @@ case 2:
     { (yyval.opval) = newANONLIST((OP*)NULL);
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),']');
     { (yyval.opval) = newANONLIST((OP*)NULL);
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),']');
-                       }
+                       ;}
     break;
 
   case 149:
     break;
 
   case 149:
@@ -1247,7 +1247,7 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),'}');
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),'}');
-                       }
+                       ;}
     break;
 
   case 150:
     break;
 
   case 150:
@@ -1256,7 +1256,7 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),'}');
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),'}');
-                       }
+                       ;}
     break;
 
   case 151:
     break;
 
   case 151:
@@ -1266,21 +1266,21 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (5)].val.i_tkval),(yyval.opval),'o');
                          OP_GETMAD((ps[(3) - (5)].val.opval),(yyval.opval),'s');
                          OP_GETMAD((ps[(4) - (5)].val.opval),(yyval.opval),'a');
                          TOKEN_GETMAD((ps[(1) - (5)].val.i_tkval),(yyval.opval),'o');
                          OP_GETMAD((ps[(3) - (5)].val.opval),(yyval.opval),'s');
                          OP_GETMAD((ps[(4) - (5)].val.opval),(yyval.opval),'a');
-                       }
+                       ;}
     break;
 
   case 152:
 #line 1103 "perly.y"
     { (yyval.opval) = dofile((ps[(2) - (2)].val.opval), IVAL((ps[(1) - (2)].val.i_tkval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 152:
 #line 1103 "perly.y"
     { (yyval.opval) = dofile((ps[(2) - (2)].val.opval), IVAL((ps[(1) - (2)].val.i_tkval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 153:
 #line 1107 "perly.y"
     { (yyval.opval) = newUNOP(OP_NULL, OPf_SPECIAL, op_scope((ps[(2) - (2)].val.opval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'D');
     break;
 
   case 153:
 #line 1107 "perly.y"
     { (yyval.opval) = newUNOP(OP_NULL, OPf_SPECIAL, op_scope((ps[(2) - (2)].val.opval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'D');
-                       }
+                       ;}
     break;
 
   case 154:
     break;
 
   case 154:
@@ -1295,7 +1295,7 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 155:
     break;
 
   case 155:
@@ -1311,7 +1311,7 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (5)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(1) - (5)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 156:
     break;
 
   case 156:
@@ -1322,7 +1322,7 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(3) - (4)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 157:
     break;
 
   case 157:
@@ -1334,7 +1334,7 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (5)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(1) - (5)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 162:
     break;
 
   case 162:
@@ -1342,26 +1342,26 @@ case 2:
     { (yyval.opval) = newCONDOP(0, (ps[(1) - (5)].val.opval), (ps[(3) - (5)].val.opval), (ps[(5) - (5)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'?');
                          TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),':');
     { (yyval.opval) = newCONDOP(0, (ps[(1) - (5)].val.opval), (ps[(3) - (5)].val.opval), (ps[(5) - (5)].val.opval));
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'?');
                          TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),':');
-                       }
+                       ;}
     break;
 
   case 163:
 #line 1165 "perly.y"
     { (yyval.opval) = newUNOP(OP_REFGEN, 0, op_lvalue((ps[(2) - (2)].val.opval),OP_REFGEN));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 163:
 #line 1165 "perly.y"
     { (yyval.opval) = newUNOP(OP_REFGEN, 0, op_lvalue((ps[(2) - (2)].val.opval),OP_REFGEN));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 164:
 #line 1169 "perly.y"
     break;
 
   case 164:
 #line 1169 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 165:
 #line 1171 "perly.y"
     { (yyval.opval) = localize((ps[(2) - (2)].val.opval),IVAL((ps[(1) - (2)].val.i_tkval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'k');
     break;
 
   case 165:
 #line 1171 "perly.y"
     { (yyval.opval) = localize((ps[(2) - (2)].val.opval),IVAL((ps[(1) - (2)].val.i_tkval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'k');
-                       }
+                       ;}
     break;
 
   case 166:
     break;
 
   case 166:
@@ -1369,12 +1369,12 @@ case 2:
     { (yyval.opval) = sawparens(IF_MAD(newUNOP(OP_NULL,0,(ps[(2) - (3)].val.opval)), (ps[(2) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
     { (yyval.opval) = sawparens(IF_MAD(newUNOP(OP_NULL,0,(ps[(2) - (3)].val.opval)), (ps[(2) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 167:
 #line 1180 "perly.y"
     break;
 
   case 167:
 #line 1180 "perly.y"
-    { (yyval.opval) = IF_MAD(newUNOP(OP_NULL,0,(ps[(1) - (1)].val.opval)), (ps[(1) - (1)].val.opval)); }
+    { (yyval.opval) = IF_MAD(newUNOP(OP_NULL,0,(ps[(1) - (1)].val.opval)), (ps[(1) - (1)].val.opval)); ;}
     break;
 
   case 168:
     break;
 
   case 168:
@@ -1382,37 +1382,37 @@ case 2:
     { (yyval.opval) = sawparens(newNULLLIST());
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),')');
     { (yyval.opval) = sawparens(newNULLLIST());
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 169:
 #line 1187 "perly.y"
     break;
 
   case 169:
 #line 1187 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 170:
 #line 1189 "perly.y"
     break;
 
   case 170:
 #line 1189 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 171:
 #line 1191 "perly.y"
     break;
 
   case 171:
 #line 1191 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 172:
 #line 1193 "perly.y"
     break;
 
   case 172:
 #line 1193 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 173:
 #line 1195 "perly.y"
     break;
 
   case 173:
 #line 1195 "perly.y"
-    { (yyval.opval) = newUNOP(OP_AV2ARYLEN, 0, ref((ps[(1) - (1)].val.opval), OP_AV2ARYLEN));}
+    { (yyval.opval) = newUNOP(OP_AV2ARYLEN, 0, ref((ps[(1) - (1)].val.opval), OP_AV2ARYLEN));;}
     break;
 
   case 174:
 #line 1197 "perly.y"
     break;
 
   case 174:
 #line 1197 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 175:
     break;
 
   case 175:
@@ -1424,7 +1424,7 @@ case 2:
                                        ref((ps[(1) - (4)].val.opval), OP_ASLICE)));
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']');
                                        ref((ps[(1) - (4)].val.opval), OP_ASLICE)));
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'[');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),']');
-                       }
+                       ;}
     break;
 
   case 176:
     break;
 
   case 176:
@@ -1438,17 +1438,17 @@ case 2:
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}');
                          TOKEN_GETMAD((ps[(2) - (5)].val.i_tkval),(yyval.opval),'{');
                          TOKEN_GETMAD((ps[(4) - (5)].val.i_tkval),(yyval.opval),';');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),'}');
-                       }
+                       ;}
     break;
 
   case 177:
 #line 1219 "perly.y"
     break;
 
   case 177:
 #line 1219 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 178:
 #line 1221 "perly.y"
     break;
 
   case 178:
 #line 1221 "perly.y"
-    { (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar((ps[(1) - (1)].val.opval))); }
+    { (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar((ps[(1) - (1)].val.opval))); ;}
     break;
 
   case 179:
     break;
 
   case 179:
@@ -1456,7 +1456,7 @@ case 2:
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (3)].val.opval)));
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 180:
     break;
 
   case 180:
@@ -1472,7 +1472,7 @@ case 2:
                              token_getmad((ps[(2) - (4)].val.i_tkval),op,'(');
                              token_getmad((ps[(4) - (4)].val.i_tkval),op,')');
                          });
                              token_getmad((ps[(2) - (4)].val.i_tkval),op,'(');
                              token_getmad((ps[(4) - (4)].val.i_tkval),op,')');
                          });
-                       }
+                       ;}
     break;
 
   case 181:
     break;
 
   case 181:
@@ -1480,7 +1480,7 @@ case 2:
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
                            op_append_elem(OP_LIST, (ps[(3) - (3)].val.opval), scalar((ps[(2) - (3)].val.opval))));
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'o');
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
                            op_append_elem(OP_LIST, (ps[(3) - (3)].val.opval), scalar((ps[(2) - (3)].val.opval))));
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 182:
     break;
 
   case 182:
@@ -1488,74 +1488,74 @@ case 2:
     { (yyval.opval) = newOP(IVAL((ps[(1) - (1)].val.i_tkval)), OPf_SPECIAL);
                            PL_hints |= HINT_BLOCK_SCOPE;
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'o');
     { (yyval.opval) = newOP(IVAL((ps[(1) - (1)].val.i_tkval)), OPf_SPECIAL);
                            PL_hints |= HINT_BLOCK_SCOPE;
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 183:
 #line 1251 "perly.y"
     { (yyval.opval) = newLOOPEX(IVAL((ps[(1) - (2)].val.i_tkval)),(ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 183:
 #line 1251 "perly.y"
     { (yyval.opval) = newLOOPEX(IVAL((ps[(1) - (2)].val.i_tkval)),(ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 184:
 #line 1255 "perly.y"
     { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 184:
 #line 1255 "perly.y"
     { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 185:
 #line 1259 "perly.y"
     { (yyval.opval) = newOP(IVAL((ps[(1) - (1)].val.i_tkval)), 0);
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 185:
 #line 1259 "perly.y"
     { (yyval.opval) = newOP(IVAL((ps[(1) - (1)].val.i_tkval)), 0);
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 186:
 #line 1263 "perly.y"
     { (yyval.opval) = newUNOP(IVAL((ps[(1) - (2)].val.i_tkval)), 0, (ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 186:
 #line 1263 "perly.y"
     { (yyval.opval) = newUNOP(IVAL((ps[(1) - (2)].val.i_tkval)), 0, (ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 187:
 #line 1267 "perly.y"
     { (yyval.opval) = newUNOP(IVAL((ps[(1) - (2)].val.i_tkval)), 0, (ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 187:
 #line 1267 "perly.y"
     { (yyval.opval) = newUNOP(IVAL((ps[(1) - (2)].val.i_tkval)), 0, (ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 188:
 #line 1271 "perly.y"
     { (yyval.opval) = newOP(OP_REQUIRE, (ps[(1) - (1)].val.i_tkval) ? OPf_SPECIAL : 0);
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 188:
 #line 1271 "perly.y"
     { (yyval.opval) = newOP(OP_REQUIRE, (ps[(1) - (1)].val.i_tkval) ? OPf_SPECIAL : 0);
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 189:
 #line 1275 "perly.y"
     { (yyval.opval) = newUNOP(OP_REQUIRE, (ps[(1) - (2)].val.i_tkval) ? OPf_SPECIAL : 0, (ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 189:
 #line 1275 "perly.y"
     { (yyval.opval) = newUNOP(OP_REQUIRE, (ps[(1) - (2)].val.i_tkval) ? OPf_SPECIAL : 0, (ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 190:
 #line 1279 "perly.y"
     break;
 
   case 190:
 #line 1279 "perly.y"
-    { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (1)].val.opval))); }
+    { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - (1)].val.opval))); ;}
     break;
 
   case 191:
 #line 1281 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
     break;
 
   case 191:
 #line 1281 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
-                           op_append_elem(OP_LIST, (ps[(2) - (2)].val.opval), scalar((ps[(1) - (2)].val.opval)))); }
+                           op_append_elem(OP_LIST, (ps[(2) - (2)].val.opval), scalar((ps[(1) - (2)].val.opval)))); ;}
     break;
 
   case 192:
 #line 1284 "perly.y"
     { (yyval.opval) = newOP(IVAL((ps[(1) - (1)].val.i_tkval)), 0);
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'o');
     break;
 
   case 192:
 #line 1284 "perly.y"
     { (yyval.opval) = newOP(IVAL((ps[(1) - (1)].val.i_tkval)), 0);
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'o');
-                       }
+                       ;}
     break;
 
   case 193:
     break;
 
   case 193:
@@ -1564,12 +1564,12 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 194:
 #line 1294 "perly.y"
     break;
 
   case 194:
 #line 1294 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 195:
     break;
 
   case 195:
@@ -1577,13 +1577,13 @@ case 2:
     { (yyval.opval) = (ps[(1) - (3)].val.opval);
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
     { (yyval.opval) = (ps[(1) - (3)].val.opval);
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 196:
 #line 1301 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
     break;
 
   case 196:
 #line 1301 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
-                               scalar((ps[(1) - (1)].val.opval))); }
+                               scalar((ps[(1) - (1)].val.opval))); ;}
     break;
 
   case 197:
     break;
 
   case 197:
@@ -1595,7 +1595,7 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(2) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 198:
     break;
 
   case 198:
@@ -1604,7 +1604,7 @@ case 2:
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')');
                          TOKEN_GETMAD((ps[(1) - (4)].val.i_tkval),(yyval.opval),'o');
                          TOKEN_GETMAD((ps[(2) - (4)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(4) - (4)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 199:
     break;
 
   case 199:
@@ -1618,7 +1618,7 @@ case 2:
                                SAVEFREESV(PL_compcv);
                            } else
                                (yyval.ival) = 0;
                                SAVEFREESV(PL_compcv);
                            } else
                                (yyval.ival) = 0;
-                       }
+                       ;}
     break;
 
   case 200:
     break;
 
   case 200:
@@ -1626,7 +1626,7 @@ case 2:
     { (yyval.opval) = pmruntime((ps[(1) - (5)].val.opval), (ps[(4) - (5)].val.opval), 1, (ps[(2) - (5)].val.ival));
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')');
     { (yyval.opval) = pmruntime((ps[(1) - (5)].val.opval), (ps[(4) - (5)].val.opval), 1, (ps[(2) - (5)].val.ival));
                          TOKEN_GETMAD((ps[(3) - (5)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(5) - (5)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 203:
     break;
 
   case 203:
@@ -1635,7 +1635,7 @@ case 2:
                          (yyval.opval) = newLISTOP(OP_DIE, 0, newOP(OP_PUSHMARK, 0),
                                newSVOP(OP_CONST, 0, newSVpvs("Unimplemented")));
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'X');
                          (yyval.opval) = newLISTOP(OP_DIE, 0, newOP(OP_PUSHMARK, 0),
                                newSVOP(OP_CONST, 0, newSVpvs("Unimplemented")));
                          TOKEN_GETMAD((ps[(1) - (1)].val.i_tkval),(yyval.opval),'X');
-                       }
+                       ;}
     break;
 
   case 205:
     break;
 
   case 205:
@@ -1646,14 +1646,14 @@ case 2:
                              append_madprops((ps[(3) - (3)].val.opval)->op_madprop, (yyval.opval), 'a');
                              (ps[(3) - (3)].val.opval)->op_madprop = 0;
                          );
                              append_madprops((ps[(3) - (3)].val.opval)->op_madprop, (yyval.opval), 'a');
                              (ps[(3) - (3)].val.opval)->op_madprop = 0;
                          );
-                       }
+                       ;}
     break;
 
   case 206:
 #line 1355 "perly.y"
     { (yyval.opval) = localize((ps[(2) - (2)].val.opval),IVAL((ps[(1) - (2)].val.i_tkval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'d');
     break;
 
   case 206:
 #line 1355 "perly.y"
     { (yyval.opval) = localize((ps[(2) - (2)].val.opval),IVAL((ps[(1) - (2)].val.i_tkval)));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'d');
-                       }
+                       ;}
     break;
 
   case 207:
     break;
 
   case 207:
@@ -1661,7 +1661,7 @@ case 2:
     { (yyval.opval) = sawparens((ps[(2) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
     { (yyval.opval) = sawparens((ps[(2) - (3)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (3)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(3) - (3)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 208:
     break;
 
   case 208:
@@ -1669,115 +1669,118 @@ case 2:
     { (yyval.opval) = sawparens(newNULLLIST());
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),')');
     { (yyval.opval) = sawparens(newNULLLIST());
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'(');
                          TOKEN_GETMAD((ps[(2) - (2)].val.i_tkval),(yyval.opval),')');
-                       }
+                       ;}
     break;
 
   case 209:
 #line 1372 "perly.y"
     break;
 
   case 209:
 #line 1372 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 210:
 #line 1374 "perly.y"
     break;
 
   case 210:
 #line 1374 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 211:
 #line 1376 "perly.y"
     break;
 
   case 211:
 #line 1376 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 212:
 #line 1381 "perly.y"
     break;
 
   case 212:
 #line 1381 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (OP*)NULL; ;}
     break;
 
   case 213:
 #line 1383 "perly.y"
     break;
 
   case 213:
 #line 1383 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 214:
 #line 1387 "perly.y"
     break;
 
   case 214:
 #line 1387 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (OP*)NULL; ;}
     break;
 
   case 215:
 #line 1389 "perly.y"
     break;
 
   case 215:
 #line 1389 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
   case 216:
 #line 1395 "perly.y"
     break;
 
   case 216:
 #line 1395 "perly.y"
-    { PL_parser->in_my = 0; (yyval.opval) = my((ps[(1) - (1)].val.opval)); }
+    { PL_parser->in_my = 0; (yyval.opval) = my((ps[(1) - (1)].val.opval)); ;}
     break;
 
   case 217:
 #line 1399 "perly.y"
     { (yyval.opval) = newCVREF(IVAL((ps[(1) - (2)].val.i_tkval)),(ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'&');
     break;
 
   case 217:
 #line 1399 "perly.y"
     { (yyval.opval) = newCVREF(IVAL((ps[(1) - (2)].val.i_tkval)),(ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'&');
-                       }
+                       ;}
     break;
 
   case 218:
 #line 1405 "perly.y"
     { (yyval.opval) = newSVREF((ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'$');
     break;
 
   case 218:
 #line 1405 "perly.y"
     { (yyval.opval) = newSVREF((ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'$');
-                       }
+                       ;}
     break;
 
   case 219:
 #line 1411 "perly.y"
     { (yyval.opval) = newAVREF((ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'@');
     break;
 
   case 219:
 #line 1411 "perly.y"
     { (yyval.opval) = newAVREF((ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'@');
-                       }
+                       ;}
     break;
 
   case 220:
 #line 1417 "perly.y"
     { (yyval.opval) = newHVREF((ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'%');
     break;
 
   case 220:
 #line 1417 "perly.y"
     { (yyval.opval) = newHVREF((ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'%');
-                       }
+                       ;}
     break;
 
   case 221:
 #line 1423 "perly.y"
     { (yyval.opval) = newAVREF((ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'l');
     break;
 
   case 221:
 #line 1423 "perly.y"
     { (yyval.opval) = newAVREF((ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'l');
-                       }
+                       ;}
     break;
 
   case 222:
 #line 1429 "perly.y"
     { (yyval.opval) = newGVREF(0,(ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'*');
     break;
 
   case 222:
 #line 1429 "perly.y"
     { (yyval.opval) = newGVREF(0,(ps[(2) - (2)].val.opval));
                          TOKEN_GETMAD((ps[(1) - (2)].val.i_tkval),(yyval.opval),'*');
-                       }
+                       ;}
     break;
 
   case 223:
 #line 1436 "perly.y"
     break;
 
   case 223:
 #line 1436 "perly.y"
-    { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); }
+    { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); ;}
     break;
 
   case 224:
 #line 1438 "perly.y"
     break;
 
   case 224:
 #line 1438 "perly.y"
-    { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); }
+    { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); ;}
     break;
 
   case 225:
 #line 1440 "perly.y"
     break;
 
   case 225:
 #line 1440 "perly.y"
-    { (yyval.opval) = op_scope((ps[(1) - (1)].val.opval)); }
+    { (yyval.opval) = op_scope((ps[(1) - (1)].val.opval)); ;}
     break;
 
   case 226:
 #line 1443 "perly.y"
     break;
 
   case 226:
 #line 1443 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); ;}
     break;
 
     break;
 
+
+/* Line 1267 of yacc.c.  */
+
       default: break;
     
 
 /* Generated from:
       default: break;
     
 
 /* Generated from:
- * 28c2c7738eefc00762e227af0363c729186c992e9127e0c935684cccbf3a3b4f perly.y
+ * 9e20ffc538d3ca3c4dbd4bd0d0c82f329cb509a0e5b976490f105c62fcddec27 perly.y
  * 5c9d2a0262457fe9b70073fc8ad6c188f812f38ad57712b7e2f53daa01b297cc regen_perly.pl
  * ex: set ro: */
  * 5c9d2a0262457fe9b70073fc8ad6c188f812f38ad57712b7e2f53daa01b297cc regen_perly.pl
  * ex: set ro: */
diff --git a/perly.h b/perly.h
index 6f1d6b9..cd50d6d 100644 (file)
--- a/perly.h
+++ b/perly.h
@@ -5,24 +5,27 @@
  */
 
 #ifdef PERL_CORE
  */
 
 #ifdef PERL_CORE
-/* A Bison parser, made by GNU Bison 2.6.1.  */
+/* A Bison parser, made by GNU Bison 2.3.  */
 
 
-/* Bison interface for Yacc-like parsers in C
-   
-      Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, Inc.
-   
-   This program is free software: you can redistribute it and/or modify
+/* Skeleton interface for Bison's Yacc-like parsers in C
+
+   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+   Free Software Foundation, Inc.
+
+   This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    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.
-   
+   the Free Software Foundation; either version 2, 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.
    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
    You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 51 Franklin Street, Fifth Floor,
+   Boston, MA 02110-1301, USA.  */
 
 /* As a special exception, you may create a larger work that contains
    part or all of the Bison parser skeleton and distribute that work
 
 /* As a special exception, you may create a larger work that contains
    part or all of the Bison parser skeleton and distribute that work
    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.
    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.  */
 
    This special exception was added by the Free Software Foundation in
    version 2.2 of Bison.  */
 
-/* Enabling traces.  */
-#ifndef YYDEBUG
-# define YYDEBUG 0
-#endif
-#if YYDEBUG
-extern int yydebug;
-#endif
-
 /* Tokens.  */
 #ifndef YYTOKENTYPE
 # define YYTOKENTYPE
 /* Tokens.  */
 #ifndef YYTOKENTYPE
 # define YYTOKENTYPE
@@ -133,7 +128,6 @@ extern int yydebug;
      PEG = 337
    };
 #endif
      PEG = 337
    };
 #endif
-
 /* Tokens.  */
 #define GRAMPROG 258
 #define GRAMEXPR 259
 /* Tokens.  */
 #define GRAMPROG 258
 #define GRAMEXPR 259
@@ -217,6 +211,8 @@ extern int yydebug;
 #define PEG 337
 
 
 #define PEG 337
 
 
+
+
 #ifdef PERL_IN_TOKE_C
 static bool
 S_is_opval_token(int type) {
 #ifdef PERL_IN_TOKE_C
 static bool
 S_is_opval_token(int type) {
@@ -243,8 +239,6 @@ S_is_opval_token(int type) {
 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
 typedef union YYSTYPE
 {
 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
 typedef union YYSTYPE
 {
-/* Line 2049 of yacc.c  */
-
     I32        ival; /* __DEFAULT__ (marker for regen_perly.pl;
                                must always be 1st union member) */
     char *pval;
     I32        ival; /* __DEFAULT__ (marker for regen_perly.pl;
                                must always be 1st union member) */
     char *pval;
@@ -260,32 +254,18 @@ typedef union YYSTYPE
 #ifdef PERL_MAD
     TOKEN* tkval;
 #endif
 #ifdef PERL_MAD
     TOKEN* tkval;
 #endif
-
-
-/* Line 2049 of yacc.c  */
-} YYSTYPE;
-# define YYSTYPE_IS_TRIVIAL 1
+}
+/* Line 1529 of yacc.c.  */
+       YYSTYPE;
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
 # define YYSTYPE_IS_DECLARED 1
+# define YYSTYPE_IS_TRIVIAL 1
 #endif
 
 
 #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:
 
 
 /* Generated from:
- * 28c2c7738eefc00762e227af0363c729186c992e9127e0c935684cccbf3a3b4f perly.y
+ * 9e20ffc538d3ca3c4dbd4bd0d0c82f329cb509a0e5b976490f105c62fcddec27 perly.y
  * 5c9d2a0262457fe9b70073fc8ad6c188f812f38ad57712b7e2f53daa01b297cc regen_perly.pl
  * ex: set ro: */
  * 5c9d2a0262457fe9b70073fc8ad6c188f812f38ad57712b7e2f53daa01b297cc regen_perly.pl
  * ex: set ro: */
index 5172cc2..88024ba 100644 (file)
--- a/perly.tab
+++ b/perly.tab
@@ -205,7 +205,7 @@ static const yytype_uint16 yyrline[] =
 };
 #endif
 
 };
 #endif
 
-#if YYDEBUG || YYERROR_VERBOSE || 0
+#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
 static const char *const yytname[] =
 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
 static const char *const yytname[] =
@@ -224,17 +224,17 @@ static const char *const yytname[] =
   "ANDOP", "NOTOP", "','", "ASSIGNOP", "'?'", "':'", "DORDOR", "OROR",
   "ANDAND", "BITOROP", "BITANDOP", "SHIFTOP", "MATCHOP", "'!'", "'~'",
   "REFGEN", "UMINUS", "POWOP", "POSTDEC", "POSTINC", "PREDEC", "PREINC",
   "ANDOP", "NOTOP", "','", "ASSIGNOP", "'?'", "':'", "DORDOR", "OROR",
   "ANDAND", "BITOROP", "BITANDOP", "SHIFTOP", "MATCHOP", "'!'", "'~'",
   "REFGEN", "UMINUS", "POWOP", "POSTDEC", "POSTINC", "PREDEC", "PREINC",
-  "ARROW", "')'", "'('", "PEG", "$accept", "grammar", "$@1", "$@2", "$@3",
-  "$@4", "$@5", "$@6", "block", "formblock", "remember", "mblock",
+  "ARROW", "')'", "'('", "PEG", "$accept", "grammar", "@1", "@2", "@3",
+  "@4", "@5", "@6", "block", "formblock", "remember", "mblock",
   "mremember", "stmtseq", "formstmtseq", "fullstmt", "labfullstmt",
   "mremember", "stmtseq", "formstmtseq", "fullstmt", "labfullstmt",
-  "barestmt", "$@7", "$@8", "$@9", "formline", "formarg", "sideff", "else",
+  "barestmt", "@7", "@8", "@9", "formline", "formarg", "sideff", "else",
   "cont", "mintro", "nexpr", "texpr", "iexpr", "mexpr", "mnexpr", "miexpr",
   "formname", "startsub", "startanonsub", "startformsub", "subname",
   "proto", "subattrlist", "myattrlist", "subbody", "expr", "listexpr",
   "listop", "@10", "method", "subscripted", "termbinop", "termunop",
   "anonymous", "termdo", "term", "@11", "myattrterm", "myterm",
   "optlistexpr", "optexpr", "my_scalar", "amper", "scalar", "ary", "hsh",
   "cont", "mintro", "nexpr", "texpr", "iexpr", "mexpr", "mnexpr", "miexpr",
   "formname", "startsub", "startanonsub", "startformsub", "subname",
   "proto", "subattrlist", "myattrlist", "subbody", "expr", "listexpr",
   "listop", "@10", "method", "subscripted", "termbinop", "termunop",
   "anonymous", "termdo", "term", "@11", "myattrterm", "myterm",
   "optlistexpr", "optexpr", "my_scalar", "amper", "scalar", "ary", "hsh",
-  "arylen", "star", "indirob", YY_NULL
+  "arylen", "star", "indirob", 0
 };
 #endif
 
 };
 #endif
 
@@ -313,8 +313,8 @@ static const yytype_uint8 yyr2[] =
        2,     2,     2,     1,     1,     1,     1
 };
 
        2,     2,     2,     1,     1,     1,     1
 };
 
-/* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
-   Performed when YYTABLE doesn't specify something else to do.  Zero
+/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
+   STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
    means the default is an error.  */
 static const yytype_uint8 yydefact[] =
 {
    means the default is an error.  */
 static const yytype_uint8 yydefact[] =
 {
@@ -445,7 +445,8 @@ static const yytype_int16 yypgoto[] =
 
 /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
    positive, shift that token.  If negative, reduce the rule which
 
 /* 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.  */
+   number is the opposite.  If zero, do what YYDEFACT says.
+   If YYTABLE_NINF, syntax error.  */
 #define YYTABLE_NINF -202
 static const yytype_int16 yytable[] =
 {
 #define YYTABLE_NINF -202
 static const yytype_int16 yytable[] =
 {
@@ -743,12 +744,6 @@ static const yytype_int16 yytable[] =
      184
 };
 
      184
 };
 
-#define yypact_value_is_default(yystate) \
-  ((yystate) == (-391))
-
-#define yytable_value_is_error(yytable_value) \
-  ((yytable_value) == (-202))
-
 static const yytype_int16 yycheck[] =
 {
       10,    11,    12,    15,     9,   291,   115,   126,    42,    15,
 static const yytype_int16 yycheck[] =
 {
       10,    11,    12,    15,     9,   291,   115,   126,    42,    15,
@@ -1132,6 +1127,6 @@ static const toketypes yy_type_tab[] =
 };
 
 /* Generated from:
 };
 
 /* Generated from:
- * 28c2c7738eefc00762e227af0363c729186c992e9127e0c935684cccbf3a3b4f perly.y
+ * 9e20ffc538d3ca3c4dbd4bd0d0c82f329cb509a0e5b976490f105c62fcddec27 perly.y
  * 5c9d2a0262457fe9b70073fc8ad6c188f812f38ad57712b7e2f53daa01b297cc regen_perly.pl
  * ex: set ro: */
  * 5c9d2a0262457fe9b70073fc8ad6c188f812f38ad57712b7e2f53daa01b297cc regen_perly.pl
  * ex: set ro: */
diff --git a/perly.y b/perly.y
index 91a7613..0f98f59 100644 (file)
--- a/perly.y
+++ b/perly.y
@@ -1219,12 +1219,12 @@ term    :       termbinop
                        { $$ = $1; }
        |       amper                                /* &foo; */
                        { $$ = newUNOP(OP_ENTERSUB, 0, scalar($1)); }
                        { $$ = $1; }
        |       amper                                /* &foo; */
                        { $$ = newUNOP(OP_ENTERSUB, 0, scalar($1)); }
-       |       amper '(' ')'                 /* &foo() */
+       |       amper '(' ')'                 /* &foo() or foo() */
                        { $$ = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar($1));
                          TOKEN_GETMAD($2,$$,'(');
                          TOKEN_GETMAD($3,$$,')');
                        }
                        { $$ = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar($1));
                          TOKEN_GETMAD($2,$$,'(');
                          TOKEN_GETMAD($3,$$,')');
                        }
-       |       amper '(' expr ')'            /* &foo(@args) */
+       |       amper '(' expr ')'          /* &foo(@args) or foo(@args) */
                        {
                          $$ = newUNOP(OP_ENTERSUB, OPf_STACKED,
                                op_append_elem(OP_LIST, $3, scalar($1)));
                        {
                          $$ = newUNOP(OP_ENTERSUB, OPf_STACKED,
                                op_append_elem(OP_LIST, $3, scalar($1)));
@@ -1237,7 +1237,7 @@ term      :       termbinop
                              token_getmad($4,op,')');
                          });
                        }
                              token_getmad($4,op,')');
                          });
                        }
-       |       NOAMP subname optlistexpr               /* foo(@args) */
+       |       NOAMP subname optlistexpr       /* foo @args (no parens) */
                        { $$ = newUNOP(OP_ENTERSUB, OPf_STACKED,
                            op_append_elem(OP_LIST, $3, scalar($2)));
                          TOKEN_GETMAD($1,$$,'o');
                        { $$ = newUNOP(OP_ENTERSUB, OPf_STACKED,
                            op_append_elem(OP_LIST, $3, scalar($2)));
                          TOKEN_GETMAD($1,$$,'o');