Regression test for [perl #67912]
[p5sagit/p5-mst-13.2.git] / pp_ctl.c
index 75d98dd..a8b8b6d 100644 (file)
--- a/pp_ctl.c
+++ b/pp_ctl.c
@@ -2624,6 +2624,8 @@ PP(pp_goto)
            case CXt_LOOP_LAZYSV:
            case CXt_LOOP_FOR:
            case CXt_LOOP_PLAIN:
+           case CXt_GIVEN:
+           case CXt_WHEN:
                gotoprobe = cx->blk_oldcop->op_sibling;
                break;
            case CXt_SUBST:
@@ -3258,12 +3260,9 @@ PP(pp_require)
        /* If a version >= 5.11.0 is requested, strictures are on by default! */
        if (PL_compcv &&
                vcmp(sv, sv_2mortal(upg_version(newSVnv(5.011000), FALSE))) >= 0) {
-           ENTER;
-           Perl_load_module(aTHX_ 0, newSVpvs("strict"), NULL, NULL, NULL);
-           LEAVE;
+           PL_hints |= (HINT_STRICT_REFS | HINT_STRICT_SUBS | HINT_STRICT_VARS);
        }
 
-
        RETPUSHYES;
     }
     name = SvPV_const(sv, len);
@@ -3914,13 +3913,7 @@ PP(pp_entergiven)
     ENTER;
     SAVETMPS;
 
-    if (PL_op->op_targ == 0) {
-       SV ** const defsv_p = &GvSV(PL_defgv);
-       *defsv_p = newSVsv(POPs);
-       SAVECLEARSV(*defsv_p);
-    }
-    else
-       sv_setsv(PAD_SV(PL_op->op_targ), POPs);
+    sv_setsv(PAD_SV(PL_op->op_targ), POPs);
 
     PUSHBLOCK(cx, CXt_GIVEN, SP);
     PUSHGIVEN(cx);