This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
The "constant sub redefined" warning can't be disabled.
[perl5.git] / vms / perly_c.vms
index 634dba9..2b99328 100644 (file)
@@ -7,7 +7,7 @@
 #include "EXTERN.h"
 #define PERL_IN_PERLY_C
 #include "perl.h"
-#if defined(EBCDIC) || defined(VMS)
+#ifdef EBCDIC
 #undef YYDEBUG
 #endif
 #define dep() deprecate_old("\"do\" to call subroutines")
@@ -1438,13 +1438,21 @@ yyparse()
     ysave->oldyylval   = yylval;
 
 #if YYDEBUG
+  {
+    register int saved_errno = errno;
+#ifdef VMS
+    register int saved_vaxc_errno = vaxc$errno;
+#else
+    register int saved_vaxc_errno = 0;
+#endif
     if ((yys = getenv("YYDEBUG")))
     {
         yyn = *yys;
         if (yyn >= '0' && yyn <= '9')
             yydebug = yyn - '0';
     }
-       else SETERRNO(0,SS$_NORMAL);
+    else SETERRNO(saved_errno,saved_vaxc_errno);
+  }
 #endif
 
     yynerrs = 0;
@@ -1608,7 +1616,7 @@ break;
 case 2:
 #line 136 "perly.y"
 { if (PL_copline > (line_t)yyvsp[-3].ival)
-                             PL_copline = yyvsp[-3].ival;
+                             PL_copline = (line_t)yyvsp[-3].ival;
                          yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
 break;
 case 3:
@@ -1627,7 +1635,7 @@ break;
 case 5:
 #line 156 "perly.y"
 { if (PL_copline > (line_t)yyvsp[-3].ival)
-                             PL_copline = yyvsp[-3].ival;
+                             PL_copline = (line_t)yyvsp[-3].ival;
                          yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
 break;
 case 6:
@@ -1695,7 +1703,7 @@ case 19:
 break;
 case 20:
 #line 209 "perly.y"
-{ yyval.opval = newFOROP(0, Nullch, yyvsp[-1].ival,
+{ yyval.opval = newFOROP(0, Nullch, (line_t)yyvsp[-1].ival,
                                        Nullop, yyvsp[0].opval, yyvsp[-2].opval, Nullop); }
 break;
 case 21:
@@ -1708,19 +1716,19 @@ case 22:
 break;
 case 23:
 #line 219 "perly.y"
-{ PL_copline = yyvsp[-5].ival;
+{ PL_copline = (line_t)yyvsp[-5].ival;
                            yyval.opval = newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval);
                            PL_hints |= HINT_BLOCK_SCOPE; }
 break;
 case 24:
 #line 226 "perly.y"
-{ PL_copline = yyvsp[-6].ival;
+{ PL_copline = (line_t)yyvsp[-6].ival;
                            yyval.opval = block_end(yyvsp[-4].ival,
                                   newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
 break;
 case 25:
 #line 230 "perly.y"
-{ PL_copline = yyvsp[-6].ival;
+{ PL_copline = (line_t)yyvsp[-6].ival;
                            yyval.opval = block_end(yyvsp[-4].ival,
                                   newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
 break;
@@ -1734,7 +1742,7 @@ case 27:
 break;
 case 28:
 #line 244 "perly.y"
-{ PL_copline = yyvsp[-6].ival;
+{ PL_copline = (line_t)yyvsp[-6].ival;
                            yyval.opval = block_end(yyvsp[-4].ival,
                                   newSTATEOP(0, yyvsp[-7].pval,
                                     newWHILEOP(0, 1, (LOOP*)Nullop,
@@ -1742,7 +1750,7 @@ case 28:
 break;
 case 29:
 #line 250 "perly.y"
-{ PL_copline = yyvsp[-6].ival;
+{ PL_copline = (line_t)yyvsp[-6].ival;
                            yyval.opval = block_end(yyvsp[-4].ival,
                                   newSTATEOP(0, yyvsp[-7].pval,
                                     newWHILEOP(0, 1, (LOOP*)Nullop,
@@ -1751,23 +1759,23 @@ break;
 case 30:
 #line 256 "perly.y"
 { yyval.opval = block_end(yyvsp[-6].ival,
-                                newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
+                                newFOROP(0, yyvsp[-9].pval, (line_t)yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
 break;
 case 31:
 #line 259 "perly.y"
 { yyval.opval = block_end(yyvsp[-4].ival,
-                                newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
+                                newFOROP(0, yyvsp[-8].pval, (line_t)yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
                                          yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
 break;
 case 32:
 #line 263 "perly.y"
 { yyval.opval = block_end(yyvsp[-4].ival,
-                                newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
+                                newFOROP(0, yyvsp[-7].pval, (line_t)yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
 break;
 case 33:
 #line 267 "perly.y"
 { OP *forop;
-                         PL_copline = yyvsp[-9].ival;
+                         PL_copline = (line_t)yyvsp[-9].ival;
                          forop = newSTATEOP(0, yyvsp[-10].pval,
                                            newWHILEOP(0, 1, (LOOP*)Nullop,
                                                yyvsp[-9].ival, scalar(yyvsp[-4].opval),