/* faked up qw list? */
if (slot == '(' &&
tm->mad_type == MAD_SV &&
- SvPVX((const SV *)tm->mad_val)[0] == 'q')
+ SvPVX((SV *)tm->mad_val)[0] == 'q')
slot = 'x';
if (o) {
}
MADPROP *
-Perl_newMADPROP(pTHX_ char key, char type, const void* val, I32 vlen)
+Perl_newMADPROP(pTHX_ char key, char type, void* val, I32 vlen)
{
MADPROP *mp;
Newxz(mp, 1, MADPROP);
SAVECOPFILE(&PL_compiling);
SAVECOPLINE(&PL_compiling);
- DEBUG_B( dump_sub(gv) );
+ DEBUG_x( dump_sub(gv) );
Perl_av_create_and_push(aTHX_ &PL_beginav, MUTABLE_SV(cv));
GvCV(gv) = 0; /* cv has been hijacked */
call_list(oldscope, PL_beginav);
} else {
if (*name == 'E') {
if strEQ(name, "END") {
- DEBUG_B( dump_sub(gv) );
+ DEBUG_x( dump_sub(gv) );
Perl_av_create_and_unshift_one(aTHX_ &PL_endav, MUTABLE_SV(cv));
} else
return;
return;
} else
return;
- DEBUG_B( dump_sub(gv) );
+ DEBUG_x( dump_sub(gv) );
GvCV(gv) = 0; /* cv has been hijacked */
}
}
PERL_ARGS_ASSERT_CK_SHIFT;
if (!(o->op_flags & OPf_KIDS)) {
- OP *argop;
- /* FIXME - this can be refactored to reduce code in #ifdefs */
-#ifdef PERL_MAD
- OP * const oldo = o;
-#else
- op_free(o);
-#endif
- argop = newUNOP(OP_RV2AV, 0,
+ OP *argop = newUNOP(OP_RV2AV, 0,
scalar(newGVOP(OP_GV, 0, CvUNIQUE(PL_compcv) ? PL_argvgv : PL_defgv)));
#ifdef PERL_MAD
+ OP * const oldo = o;
o = newUNOP(type, 0, scalar(argop));
op_getmad(oldo,o,'O');
return o;
#else
+ op_free(o);
return newUNOP(type, 0, scalar(argop));
#endif
}