POD nits
[p5sagit/p5-mst-13.2.git] / scope.c
diff --git a/scope.c b/scope.c
index 50258df..1602af6 100644 (file)
--- a/scope.c
+++ b/scope.c
@@ -139,7 +139,7 @@ Perl_free_tmps(pTHX)
     /* XXX should tmps_floor live in cxstack? */
     const I32 myfloor = PL_tmps_floor;
     while (PL_tmps_ix > myfloor) {      /* clean up after last statement */
-       SV* sv = PL_tmps_stack[PL_tmps_ix];
+       SV* const sv = PL_tmps_stack[PL_tmps_ix];
        PL_tmps_stack[PL_tmps_ix--] = Nullsv;
        if (sv && sv != &PL_sv_undef) {
            SvTEMP_off(sv);
@@ -151,10 +151,9 @@ Perl_free_tmps(pTHX)
 STATIC SV *
 S_save_scalar_at(pTHX_ SV **sptr)
 {
-    register SV *sv;
-    SV *osv = *sptr;
+    SV * const osv = *sptr;
+    register SV * const sv = *sptr = NEWSV(0,0);
 
-    sv = *sptr = NEWSV(0,0);
     if (SvTYPE(osv) >= SVt_PVMG && SvMAGIC(osv) && SvTYPE(osv) != SVt_PVGV) {
        MAGIC *mg;
        sv_upgrade(sv, SvTYPE(osv));
@@ -267,7 +266,7 @@ Perl_save_gp(pTHX_ GV *gv, I32 empty)
     SSPUSHIV((IV)SvLEN(gv));
     SvLEN_set(gv, 0); /* forget that anything was allocated here */
     SSPUSHIV((IV)SvCUR(gv));
-    SSPUSHPTR(SvPVX(gv));
+    SSPUSHPTR(SvPVX_const(gv));
     SvPOK_off(gv);
     SSPUSHPTR(SvREFCNT_inc(gv));
     SSPUSHPTR(GvGP(gv));
@@ -301,7 +300,7 @@ Perl_save_gp(pTHX_ GV *gv, I32 empty)
 AV *
 Perl_save_ary(pTHX_ GV *gv)
 {
-    AV *oav = GvAVn(gv);
+    AV * const oav = GvAVn(gv);
     AV *av;
 
     if (!AvREAL(oav) && AvREIFY(oav))
@@ -352,7 +351,7 @@ Perl_save_hash(pTHX_ GV *gv)
 void
 Perl_save_item(pTHX_ register SV *item)
 {
-    register SV *sv = newSVsv(item);
+    register SV * const sv = newSVsv(item);
 
     SSCHECK(3);
     SSPUSHPTR(item);           /* remember the pointer */
@@ -553,11 +552,10 @@ Perl_save_delete(pTHX_ HV *hv, char *key, I32 klen)
 void
 Perl_save_list(pTHX_ register SV **sarg, I32 maxsarg)
 {
-    register SV *sv;
     register I32 i;
 
     for (i = 1; i <= maxsarg; i++) {
-       sv = NEWSV(0,0);
+       register SV * const sv = NEWSV(0,0);
        sv_setsv(sv,sarg[i]);
        SSCHECK(3);
        SSPUSHPTR(sarg[i]);             /* remember the pointer */
@@ -720,7 +718,7 @@ Perl_leave_scope(pTHX_ I32 base)
            if (SvTYPE(sv) >= SVt_PVMG && SvMAGIC(sv) &&
                SvTYPE(sv) != SVt_PVGV)
            {
-               (void)SvUPGRADE(value, SvTYPE(sv));
+               SvUPGRADE(value, SvTYPE(sv));
                SvMAGIC_set(value, SvMAGIC(sv));
                SvFLAGS(value) |= SvMAGICAL(sv);
                SvMAGICAL_off(sv);
@@ -755,6 +753,9 @@ Perl_leave_scope(pTHX_ I32 base)
            gv = (GV*)SSPOPPTR;
            if (GvAV(gv)) {
                AV * const goner = GvAV(gv);
+               /* FIXME - this is a temporary hack until we work out what
+                  the correct behaviour for magic should be.  */
+               sv_unmagic((SV*)goner, PERL_MAGIC_arylen_p);
                SvMAGIC_set(av, SvMAGIC(goner));
                SvFLAGS((SV*)av) |= SvMAGICAL(goner);
                SvMAGICAL_off(goner);
@@ -838,8 +839,8 @@ Perl_leave_scope(pTHX_ I32 base)
        case SAVEt_GP:                          /* scalar reference */
            ptr = SSPOPPTR;
            gv = (GV*)SSPOPPTR;
-           if (SvPVX(gv) && SvLEN(gv) > 0) {
-               Safefree(SvPVX(gv));
+           if (SvPVX_const(gv) && SvLEN(gv) > 0) {
+               Safefree(SvPVX_const(gv));
            }
            SvPV_set(gv, (char *)SSPOPPTR);
            SvCUR_set(gv, (STRLEN)SSPOPIV);
@@ -865,7 +866,7 @@ Perl_leave_scope(pTHX_ I32 base)
            break;
        case SAVEt_FREEPV:
            ptr = SSPOPPTR;
-           Safefree((char*)ptr);
+           Safefree(ptr);
            break;
        case SAVEt_CLEARSV:
            ptr = (void*)&PL_curpad[SSPOPLONG];
@@ -1091,7 +1092,7 @@ Perl_cx_dump(pTHX_ PERL_CONTEXT *cx)
                PL_op_desc[cx->blk_eval.old_op_type]);
        if (cx->blk_eval.old_namesv)
            PerlIO_printf(Perl_debug_log, "BLK_EVAL.OLD_NAME = %s\n",
-                         SvPVX(cx->blk_eval.old_namesv));
+                         SvPVX_const(cx->blk_eval.old_namesv));
        PerlIO_printf(Perl_debug_log, "BLK_EVAL.OLD_EVAL_ROOT = 0x%"UVxf"\n",
                PTR2UV(cx->blk_eval.old_eval_root));
        PerlIO_printf(Perl_debug_log, "BLK_EVAL.RETOP = 0x%"UVxf"\n",