diff options
author | Nicholas Clark <nick@ccl4.org> | 2006-03-08 22:36:30 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2006-03-08 22:36:30 +0000 |
commit | 81d867050a6cadfec251cfdfd6a537281c0f3eac (patch) | |
tree | 65dafb52ba178f1bc107d808ab949063c07391da /scope.c | |
parent | e49e380eaec0ac30de05f118388e614b3b7bbed9 (diff) | |
download | perl-81d867050a6cadfec251cfdfd6a537281c0f3eac.tar.gz |
Further MAD changes.
p4raw-id: //depot/perl@27428
Diffstat (limited to 'scope.c')
-rw-r--r-- | scope.c | 22 |
1 files changed, 22 insertions, 0 deletions
@@ -165,6 +165,11 @@ S_save_scalar_at(pTHX_ SV **sptr) SV * const osv = *sptr; register SV * const sv = *sptr = newSV(0); +#ifdef PERL_MAD + if (PL_formfeed && sv == PL_formfeed) + abort(); +#endif + if (SvTYPE(osv) >= SVt_PVMG && SvMAGIC(osv) && SvTYPE(osv) != SVt_PVGV) { if (SvGMAGICAL(osv)) { const bool oldtainted = PL_tainted; @@ -182,6 +187,10 @@ Perl_save_scalar(pTHX_ GV *gv) { dVAR; SV ** const sptr = &GvSVn(gv); +#ifdef PERL_MAD + if (PL_formfeed && *sptr == PL_formfeed) + abort(); +#endif PL_localizing = 1; SvGETMAGIC(*sptr); PL_localizing = 0; @@ -198,6 +207,10 @@ void Perl_save_generic_svref(pTHX_ SV **sptr) { dVAR; +#ifdef PERL_MAD + if (PL_formfeed && *sptr == PL_formfeed) + abort(); +#endif SSCHECK(3); SSPUSHPTR(sptr); SSPUSHPTR(SvREFCNT_inc(*sptr)); @@ -324,6 +337,11 @@ Perl_save_item(pTHX_ register SV *item) dVAR; register SV * const sv = newSVsv(item); +#ifdef PERL_MAD + if (PL_formfeed && item == PL_formfeed) + abort(); +#endif + SSCHECK(3); SSPUSHPTR(item); /* remember the pointer */ SSPUSHPTR(sv); /* remember the value */ @@ -542,6 +560,10 @@ SV* Perl_save_svref(pTHX_ SV **sptr) { dVAR; +#ifdef PERL_MAD + if (PL_formfeed && *sptr == PL_formfeed) + abort(); +#endif SvGETMAGIC(*sptr); SSCHECK(3); SSPUSHPTR(sptr); |