Clear the pointed to pad value on scope exit. (i.e. the runtime action of 'my')
=for apidoc m|void|SAVECOMPPAD
-Save PL_comppad_name, PL_comppad and PL_curpad.
+save PL_comppad and PL_curpad
=for apidoc Amx|PAD **|PadlistARRAY|PADLIST padlist
#define PAD_SET_CUR_NOSAVE(padlist,nth) \
- PL_comppad_name = PadlistNAMES(padlist); \
PL_comppad = (PAD*) (PadlistARRAY(padlist)[nth]); \
PL_curpad = AvARRAY(PL_comppad); \
DEBUG_Xv(PerlIO_printf(Perl_debug_log, \
PL_curpad = AvARRAY(PL_comppad);
else
PL_curpad = NULL;
- PL_comppad_name = (PADNAMELIST*)SSPOPPTR;
break;
case SAVEt_PADSV_AND_MORTALIZE:
{
#define SAVEHINTS() save_hints()
-#define SAVECOMPPAD() save_pushptrptr(MUTABLE_SV(PL_comppad_name), \
- MUTABLE_SV(PL_comppad), SAVEt_COMPPAD)
+#define SAVECOMPPAD() save_pushptr(MUTABLE_SV(PL_comppad), SAVEt_COMPPAD)
#define SAVESWITCHSTACK(f,t) \
STMT_START { \
TOPPTR(nss,ix) = sv_dup_inc(sv, param);
/* fall through */
case SAVEt_COMPPAD:
- sv = (const SV *) POPPTR(ss,ix);
- TOPPTR(nss,ix) = sv_dup(sv, param);
case SAVEt_NSTAB:
sv = (const SV *) POPPTR(ss,ix);
TOPPTR(nss,ix) = sv_dup(sv, param);