Use Perl_croak() rather than DIE() in S_doeval() because "DIE()"
authorSteve Hay <SteveHay@planit.com>
Wed, 11 Jul 2007 09:00:49 +0000 (09:00 +0000)
committerSteve Hay <SteveHay@planit.com>
Wed, 11 Jul 2007 09:00:49 +0000 (09:00 +0000)
becomes "return Perl_die()" and Perl_die() returns an OP*, which
isn't appropriate to return from S_doeval.

p4raw-id: //depot/perl@31586

pp_ctl.c

index b16d97e..9bbccd6 100644 (file)
--- a/pp_ctl.c
+++ b/pp_ctl.c
@@ -2950,8 +2950,8 @@ S_doeval(pTHX_ int gimme, OP** startop, CV* outside, U32 seq)
            const SV * const nsv = cx->blk_eval.old_namesv;
            (void)hv_store(GvHVn(PL_incgv), SvPVX_const(nsv), SvCUR(nsv),
                           &PL_sv_undef, 0);
-           DIE(aTHX_ "%sCompilation failed in require",
-               *msg ? msg : "Unknown error\n");
+           Perl_croak(aTHX_ "%sCompilation failed in require",
+                      *msg ? msg : "Unknown error\n");
        }
        else if (startop) {
            POPBLOCK(cx,PL_curpm);