summaryrefslogtreecommitdiff
path: root/scope.c
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2006-03-08 22:36:30 +0000
committerNicholas Clark <nick@ccl4.org>2006-03-08 22:36:30 +0000
commit81d867050a6cadfec251cfdfd6a537281c0f3eac (patch)
tree65dafb52ba178f1bc107d808ab949063c07391da /scope.c
parente49e380eaec0ac30de05f118388e614b3b7bbed9 (diff)
downloadperl-81d867050a6cadfec251cfdfd6a537281c0f3eac.tar.gz
Further MAD changes.
p4raw-id: //depot/perl@27428
Diffstat (limited to 'scope.c')
-rw-r--r--scope.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/scope.c b/scope.c
index 234dd9f8fe..2c61424240 100644
--- a/scope.c
+++ b/scope.c
@@ -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);