Output the (apparent) version of gcc, as suggested by
[p5sagit/p5-mst-13.2.git] / perly.c
diff --git a/perly.c b/perly.c
index 64ad3b5..2b5108f 100644 (file)
--- a/perly.c
+++ b/perly.c
@@ -1386,6 +1386,9 @@ yyparse()
 #endif
 
     struct ysv *ysave;
+#ifdef USE_ITHREADS
+    ENTER;                     /* force yydestruct() before we return */
+#endif
     New(73, ysave, 1, struct ysv);
     SAVEDESTRUCTOR_X(yydestruct, ysave);
     ysave->oldyydebug  = yydebug;
@@ -1744,7 +1747,7 @@ case 35:
 break;
 case 37:
 #line 269 "perly.y"
-{ (void)scan_num("1"); yyval.opval = yylval.opval; }
+{ (void)scan_num("1", &yylval); yyval.opval = yylval.opval; }
 break;
 case 39:
 #line 274 "perly.y"
@@ -1826,7 +1829,7 @@ case 59:
 #line 338 "perly.y"
 { STRLEN n_a; char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv,n_a);
                          if (strEQ(name, "BEGIN") || strEQ(name, "END")
-                             || strEQ(name, "INIT"))
+                             || strEQ(name, "INIT") || strEQ(name, "CHECK"))
                              CvSPECIAL_on(PL_compcv);
                          yyval.opval = yyvsp[0].opval; }
 break;
@@ -2477,11 +2480,13 @@ yyoverflow:
 yyabort:
     retval = 1;
 yyaccept:
+#ifdef USE_ITHREADS
+    LEAVE;                     /* force yydestruct() before we return */
+#endif
     return retval;
 }
 
 #ifdef PERL_OBJECT
-#define NO_XSLOCKS
 #include "XSUB.h"
 #endif