This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Re: [PATCH] s/Null(gv|hv|sv)/NULL/g
[perl5.git] / sv.c
diff --git a/sv.c b/sv.c
index 029de83..0fc488d 100644 (file)
--- a/sv.c
+++ b/sv.c
@@ -242,7 +242,7 @@ S_more_sv(pTHX)
 
     if (PL_nice_chunk) {
        sv_add_arena(PL_nice_chunk, PL_nice_chunk_size, 0);
-       PL_nice_chunk = Nullch;
+       PL_nice_chunk = NULL;
         PL_nice_chunk_size = 0;
     }
     else {
@@ -573,13 +573,6 @@ heads and bodies within the arenas must already have been freed.
 
 =cut
 */
-#define free_arena(name)                                       \
-    STMT_START {                                               \
-       S_free_arena(aTHX_ (void**) PL_ ## name ## _arenaroot); \
-       PL_ ## name ## _arenaroot = 0;                          \
-       PL_ ## name ## _root = 0;                               \
-    } STMT_END
-
 void
 Perl_sv_free_arenas(pTHX)
 {
@@ -600,14 +593,13 @@ Perl_sv_free_arenas(pTHX)
            Safefree(sva);
     }
 
-    for (i=0; i<SVt_LAST; i++) {
-       S_free_arena(aTHX_ (void**) PL_body_arenaroots[i]);
-       PL_body_arenaroots[i] = 0;
+    S_free_arena(aTHX_ (void**) PL_body_arenas);
+
+    for (i=0; i<SVt_LAST; i++)
        PL_body_roots[i] = 0;
-    }
 
     Safefree(PL_nice_chunk);
-    PL_nice_chunk = Nullch;
+    PL_nice_chunk = NULL;
     PL_nice_chunk_size = 0;
     PL_sv_arenaroot = 0;
     PL_sv_root = 0;
@@ -652,15 +644,14 @@ STATIC void *
 S_more_bodies (pTHX_ size_t size, svtype sv_type)
 {
     dVAR;
-    void ** const arena_root   = &PL_body_arenaroots[sv_type];
-    void ** const root         = &PL_body_roots[sv_type];
+    void ** const root = &PL_body_roots[sv_type];
     char *start;
     const char *end;
     const size_t count = PERL_ARENA_SIZE / size;
 
     Newx(start, count*size, char);
-    *((void **) start) = *arena_root;
-    *arena_root = (void *)start;
+    *((void **) start) = PL_body_arenas;
+    PL_body_arenas = (void *)start;
 
     end = start + (count-1) * size;
 
@@ -2934,7 +2925,7 @@ S_glob_assign(pTHX_ SV *dstr, SV *sstr, const int dtype)
        /* don't upgrade SVt_PVLV: it can hold a glob */
        if (dtype != SVt_PVLV)
            sv_upgrade(dstr, SVt_PVGV);
-       sv_magic(dstr, dstr, PERL_MAGIC_glob, Nullch, 0);
+       sv_magic(dstr, dstr, PERL_MAGIC_glob, NULL, 0);
        GvSTASH(dstr) = GvSTASH(sstr);
        if (GvSTASH(dstr))
            Perl_sv_add_backref(aTHX_ (SV*)GvSTASH(dstr), dstr);
@@ -3011,7 +3002,7 @@ S_pvgv_assign(pTHX_ SV *dstr, SV *sstr) {
        if (intro) {
            if (GvCVGEN(dstr) && GvCV(dstr) != (CV*)sref) {
                SvREFCNT_dec(GvCV(dstr));
-               GvCV(dstr) = Nullcv;
+               GvCV(dstr) = NULL;
                GvCVGEN(dstr) = 0; /* Switch off cacheness. */
                PL_sub_generation++;
            }
@@ -3051,7 +3042,7 @@ S_pvgv_assign(pTHX_ SV *dstr, SV *sstr) {
                    }
                if (!intro)
                    cv_ckproto(cv, (GV*)dstr,
-                              SvPOK(sref) ? SvPVX_const(sref) : Nullch);
+                              SvPOK(sref) ? SvPVX_const(sref) : NULL);
            }
            GvCV(dstr) = (CV*)sref;
            GvCVGEN(dstr) = 0; /* Switch off cacheness. */
@@ -3272,18 +3263,11 @@ Perl_sv_setsv_flags(pTHX_ SV *dstr, register SV *sstr, I32 flags)
        }
        (void)SvOK_off(dstr);
        SvRV_set(dstr, SvREFCNT_inc(SvRV(sstr)));
-       SvFLAGS(dstr) |= sflags & (SVf_IOK|SVp_IOK|SVf_NOK|SVp_NOK|SVf_ROK
-                                  |SVf_AMAGIC);
-       if (sflags & SVp_NOK) {
-           SvNV_set(dstr, SvNVX(sstr));
-       }
-       if (sflags & SVp_IOK) {
-           /* Must do this otherwise some other overloaded use of 0x80000000
-              gets confused. Probably 0x80000000 */
-           if (sflags & SVf_IVisUV)
-               SvIsUV_on(dstr);
-           SvIV_set(dstr, SvIVX(sstr));
-       }
+       SvFLAGS(dstr) |= sflags & (SVf_ROK|SVf_AMAGIC);
+       assert(!(sflags & SVp_NOK));
+       assert(!(sflags & SVp_IOK));
+       assert(!(sflags & SVf_NOK));
+       assert(!(sflags & SVf_IOK));
     }
     else if (sflags & SVp_POK) {
         bool isSwipe = 0;
@@ -3696,7 +3680,7 @@ S_sv_release_COW(pTHX_ register SV *sv, const char *pvx, STRLEN len, SV *after)
 {
     if (len) { /* this SV was SvIsCOW_normal(sv) */
          /* we need to find the SV pointing to us.  */
-        SV * const current = SV_COW_NEXT_SV(after);
+        SV *current = SV_COW_NEXT_SV(after);
 
         if (current == sv) {
             /* The SV we point to points back to us (there were only two of us
@@ -3796,7 +3780,7 @@ Perl_sv_force_normal_flags(pTHX_ register SV *sv, U32 flags)
            const STRLEN len = SvCUR(sv);
            SvFAKE_off(sv);
            SvREADONLY_off(sv);
-           SvPV_set(sv, Nullch);
+           SvPV_set(sv, NULL);
            SvLEN_set(sv, 0);
            SvGROW(sv, len + 1);
            Move(pvx,SvPVX(sv),len,char);
@@ -4482,7 +4466,7 @@ S_sv_del_backref(pTHX_ SV *tsv, SV *sv)
                */
                svp[i] = svp[fill];
            }
-           svp[fill] = Nullsv;
+           svp[fill] = NULL;
            AvFILLp(av) = fill - 1;
        }
     }
@@ -4520,7 +4504,7 @@ Perl_sv_kill_backrefs(pTHX_ SV *sv, AV *av)
                               (UV)SvFLAGS(referrer));
                }
 
-               *svp = Nullsv;
+               *svp = NULL;
            }
            svp++;
        }
@@ -5432,8 +5416,8 @@ Perl_sv_eq(pTHX_ register SV *sv1, register SV *sv2)
     const char *pv2;
     STRLEN cur2;
     I32  eq     = 0;
-    char *tpv   = Nullch;
-    SV* svrecode = Nullsv;
+    char *tpv   = NULL;
+    SV* svrecode = NULL;
 
     if (!sv1) {
        pv1 = "";
@@ -5525,9 +5509,9 @@ Perl_sv_cmp(pTHX_ register SV *sv1, register SV *sv2)
     dVAR;
     STRLEN cur1, cur2;
     const char *pv1, *pv2;
-    char *tpv = Nullch;
+    char *tpv = NULL;
     I32  cmp;
-    SV *svrecode = Nullsv;
+    SV *svrecode = NULL;
 
     if (!sv1) {
        pv1 = "";
@@ -6069,7 +6053,7 @@ screamer2:
     }
 
 return_string_or_null:
-    return (SvCUR(sv) - append) ? SvPVX(sv) : Nullch;
+    return (SvCUR(sv) - append) ? SvPVX(sv) : NULL;
 }
 
 /*
@@ -6727,7 +6711,7 @@ Perl_newSVsv(pTHX_ register SV *old)
     if (SvTYPE(old) == SVTYPEMASK) {
         if (ckWARN_d(WARN_INTERNAL))
            Perl_warner(aTHX_ packWARN(WARN_INTERNAL), "semi-panic: attempt to dup freed string");
-       return Nullsv;
+       return NULL;
     }
     new_SV(sv);
     /* SV_GMAGIC is the default for sv_setv()
@@ -6807,7 +6791,7 @@ Perl_sv_reset(pTHX_ register const char *s, HV *stash)
                    SvOK_off(sv);
                    if (SvTYPE(sv) >= SVt_PV) {
                        SvCUR_set(sv, 0);
-                       if (SvPVX_const(sv) != Nullch)
+                       if (SvPVX_const(sv) != NULL)
                            *SvPVX(sv) = '\0';
                        SvTAINT(sv);
                    }
@@ -6888,21 +6872,21 @@ CV *
 Perl_sv_2cv(pTHX_ SV *sv, HV **st, GV **gvp, I32 lref)
 {
     dVAR;
-    GV *gv = Nullgv;
-    CV *cv = Nullcv;
+    GV *gv = NULL;
+    CV *cv = NULL;
 
     if (!sv)
-       return *st = NULL, *gvp = Nullgv, Nullcv;
+       return *st = NULL, *gvp = NULL, NULL;
     switch (SvTYPE(sv)) {
     case SVt_PVCV:
        *st = CvSTASH(sv);
-       *gvp = Nullgv;
+       *gvp = NULL;
        return (CV*)sv;
     case SVt_PVHV:
     case SVt_PVAV:
        *st = NULL;
-       *gvp = Nullgv;
-       return Nullcv;
+       *gvp = NULL;
+       return NULL;
     case SVt_PVGV:
        gv = (GV*)sv;
        *gvp = gv;
@@ -6918,7 +6902,7 @@ Perl_sv_2cv(pTHX_ SV *sv, HV **st, GV **gvp, I32 lref)
            sv = SvRV(sv);
            if (SvTYPE(sv) == SVt_PVCV) {
                cv = (CV*)sv;
-               *gvp = Nullgv;
+               *gvp = NULL;
                *st = CvSTASH(cv);
                return cv;
            }
@@ -6934,7 +6918,7 @@ Perl_sv_2cv(pTHX_ SV *sv, HV **st, GV **gvp, I32 lref)
        *gvp = gv;
        if (!gv) {
            *st = NULL;
-           return Nullcv;
+           return NULL;
        }
        /* Some flags to gv_fetchsv mean don't really create the GV  */
        if (SvTYPE(gv) != SVt_PVGV) {
@@ -6947,7 +6931,7 @@ Perl_sv_2cv(pTHX_ SV *sv, HV **st, GV **gvp, I32 lref)
            SV *tmpsv;
            ENTER;
            tmpsv = newSV(0);
-           gv_efullname3(tmpsv, gv, Nullch);
+           gv_efullname3(tmpsv, gv, NULL);
            /* XXX this is probably not what they think they're getting.
             * It has the same effect as "sub name;", i.e. just a forward
             * declaration! */
@@ -7262,7 +7246,7 @@ Copies a pointer into a new SV, optionally blessing the SV.  The C<rv>
 argument will be upgraded to an RV.  That RV will be modified to point to
 the new SV.  If the C<pv> argument is NULL then C<PL_sv_undef> will be placed
 into the SV.  The C<classname> argument indicates the package for the
-blessing.  Set C<classname> to C<Nullch> to avoid the blessing.  The new SV
+blessing.  Set C<classname> to C<NULL> to avoid the blessing.  The new SV
 will have a reference count of 1, and the RV will be returned.
 
 Do not use with other Perl types such as HV, AV, SV, CV, because those
@@ -7292,7 +7276,7 @@ Perl_sv_setref_pv(pTHX_ SV *rv, const char *classname, void *pv)
 Copies an integer into a new SV, optionally blessing the SV.  The C<rv>
 argument will be upgraded to an RV.  That RV will be modified to point to
 the new SV.  The C<classname> argument indicates the package for the
-blessing.  Set C<classname> to C<Nullch> to avoid the blessing.  The new SV
+blessing.  Set C<classname> to C<NULL> to avoid the blessing.  The new SV
 will have a reference count of 1, and the RV will be returned.
 
 =cut
@@ -7311,7 +7295,7 @@ Perl_sv_setref_iv(pTHX_ SV *rv, const char *classname, IV iv)
 Copies an unsigned integer into a new SV, optionally blessing the SV.  The C<rv>
 argument will be upgraded to an RV.  That RV will be modified to point to
 the new SV.  The C<classname> argument indicates the package for the
-blessing.  Set C<classname> to C<Nullch> to avoid the blessing.  The new SV
+blessing.  Set C<classname> to C<NULL> to avoid the blessing.  The new SV
 will have a reference count of 1, and the RV will be returned.
 
 =cut
@@ -7330,7 +7314,7 @@ Perl_sv_setref_uv(pTHX_ SV *rv, const char *classname, UV uv)
 Copies a double into a new SV, optionally blessing the SV.  The C<rv>
 argument will be upgraded to an RV.  That RV will be modified to point to
 the new SV.  The C<classname> argument indicates the package for the
-blessing.  Set C<classname> to C<Nullch> to avoid the blessing.  The new SV
+blessing.  Set C<classname> to C<NULL> to avoid the blessing.  The new SV
 will have a reference count of 1, and the RV will be returned.
 
 =cut
@@ -7350,7 +7334,7 @@ Copies a string into a new SV, optionally blessing the SV.  The length of the
 string must be specified with C<n>.  The C<rv> argument will be upgraded to
 an RV.  That RV will be modified to point to the new SV.  The C<classname>
 argument indicates the package for the blessing.  Set C<classname> to
-C<Nullch> to avoid the blessing.  The new SV will have a reference count
+C<NULL> to avoid the blessing.  The new SV will have a reference count
 of 1, and the RV will be returned.
 
 Note that C<sv_setref_pv> copies the pointer while this copies the string.
@@ -7816,7 +7800,7 @@ S_F0convert(NV nv, char *endbuf, STRLEN *len)
        *len = endbuf - p;
        return p;
     }
-    return Nullch;
+    return NULL;
 }
 
 
@@ -7851,10 +7835,10 @@ Perl_sv_vcatpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV
     STRLEN origlen;
     I32 svix = 0;
     static const char nullstr[] = "(null)";
-    SV *argsv = Nullsv;
+    SV *argsv = NULL;
     bool has_utf8 = DO_UTF8(sv);    /* has the result utf8? */
     const bool pat_utf8 = has_utf8; /* the pattern is in utf8? */
-    SV *nsv = Nullsv;
+    SV *nsv = NULL;
     /* Times 4: a decimal digit takes more than 3 binary digits.
      * NV_DIG: mantissa takes than many decimal digits.
      * Plus 32: Playing safe. */
@@ -7956,9 +7940,9 @@ Perl_sv_vcatpvfn(pTHX_ SV *sv, const char *pat, STRLEN patlen, va_list *args, SV
        U8 utf8buf[UTF8_MAXBYTES+1];
        STRLEN esignlen = 0;
 
-       const char *eptr = Nullch;
+       const char *eptr = NULL;
        STRLEN elen = 0;
-       SV *vecsv = Nullsv;
+       SV *vecsv = NULL;
        const U8 *vecstr = Null(U8*);
        STRLEN veclen = 0;
        char c = 0;
@@ -9046,9 +9030,9 @@ Perl_re_dup(pTHX_ const REGEXP *r, CLONE_PARAMS *param)
     if (RX_MATCH_COPIED(ret))
        ret->subbeg  = SAVEPVN(r->subbeg, r->sublen);
     else
-       ret->subbeg = Nullch;
+       ret->subbeg = NULL;
 #ifdef PERL_OLD_COPY_ON_WRITE
-    ret->saved_copy = Nullsv;
+    ret->saved_copy = NULL;
 #endif
 
     ptr_table_store(PL_ptr_table, r, ret);
@@ -9588,7 +9572,7 @@ Perl_sv_dup(pTHX_ const SV *sstr, CLONE_PARAMS* param)
                    }
                }
                else {
-                   SvPV_set(dstr, Nullch);
+                   SvPV_set(dstr, NULL);
                    AvALLOC((AV*)dstr)  = (SV**)NULL;
                }
                break;
@@ -9636,7 +9620,7 @@ Perl_sv_dup(pTHX_ const SV *sstr, CLONE_PARAMS* param)
                        }
                    }
                    else {
-                       SvPV_set(dstr, Nullch);
+                       SvPV_set(dstr, NULL);
                    }
                    /* Record stashes for possible cloning in Perl_clone(). */
                    if(hvname)
@@ -9658,7 +9642,7 @@ Perl_sv_dup(pTHX_ const SV *sstr, CLONE_PARAMS* param)
                /* don't dup if copying back - CvGV isn't refcounted, so the
                 * duped GV may never be freed. A bit of a hack! DAPM */
                CvGV(dstr)      = (param->flags & CLONEf_JOIN_IN) ?
-                   Nullgv : gv_dup(CvGV(dstr), param) ;
+                   NULL : gv_dup(CvGV(dstr), param) ;
                if (!(param->flags & CLONEf_COPY_STACKS)) {
                    CvDEPTH(dstr) = 0;
                }
@@ -10294,15 +10278,15 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
     param->flags = flags;
     param->proto_perl = proto_perl;
 
-    Zero(&PL_body_arenaroots, 1, PL_body_arenaroots);
+    PL_body_arenas = NULL;
     Zero(&PL_body_roots, 1, PL_body_roots);
     
     PL_nice_chunk      = NULL;
     PL_nice_chunk_size = 0;
     PL_sv_count                = 0;
     PL_sv_objcount     = 0;
-    PL_sv_root         = Nullsv;
-    PL_sv_arenaroot    = Nullsv;
+    PL_sv_root         = NULL;
+    PL_sv_arenaroot    = NULL;
 
     PL_debug           = proto_perl->Idebug;
 
@@ -10508,7 +10492,7 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
     if (proto_perl->Iop_mask)
        PL_op_mask      = SAVEPVN(proto_perl->Iop_mask, PL_maxo);
     else
-       PL_op_mask      = Nullch;
+       PL_op_mask      = NULL;
     /* PL_asserting        = proto_perl->Iasserting; */
 
     /* current interpreter roots */
@@ -10526,13 +10510,13 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
     PL_lastfd          = proto_perl->Ilastfd;
     PL_oldname         = proto_perl->Ioldname;         /* XXX not quite right */
     PL_Argv            = NULL;
-    PL_Cmd             = Nullch;
+    PL_Cmd             = NULL;
     PL_gensym          = proto_perl->Igensym;
     PL_preambled       = proto_perl->Ipreambled;
     PL_preambleav      = av_dup_inc(proto_perl->Ipreambleav, param);
     PL_laststatval     = proto_perl->Ilaststatval;
     PL_laststype       = proto_perl->Ilaststype;
-    PL_mess_sv         = Nullsv;
+    PL_mess_sv         = NULL;
 
     PL_ors_sv          = sv_dup_inc(proto_perl->Iors_sv, param);
 
@@ -10763,7 +10747,7 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
     PL_glob_index      = proto_perl->Iglob_index;
     PL_srand_called    = proto_perl->Isrand_called;
     PL_uudmap['M']     = 0;            /* reinits on demand */
-    PL_bitcount                = Nullch;       /* reinits on demand */
+    PL_bitcount                = NULL; /* reinits on demand */
 
     if (proto_perl->Ipsig_pend) {
        Newxz(PL_psig_pend, SIG_SIZE, int);
@@ -10860,7 +10844,7 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
 
     PL_op              = proto_perl->Top;
 
-    PL_Sv              = Nullsv;
+    PL_Sv              = NULL;
     PL_Xpv             = (XPV*)NULL;
     PL_na              = proto_perl->Tna;
 
@@ -10899,7 +10883,7 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
     PL_sortstash       = hv_dup(proto_perl->Tsortstash, param);
     PL_firstgv         = gv_dup(proto_perl->Tfirstgv, param);
     PL_secondgv                = gv_dup(proto_perl->Tsecondgv, param);
-    PL_efloatbuf       = Nullch;               /* reinits on demand */
+    PL_efloatbuf       = NULL;         /* reinits on demand */
     PL_efloatsize      = 0;                    /* reinits on demand */
 
     /* regex stuff */
@@ -10907,29 +10891,29 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
     PL_screamfirst     = NULL;
     PL_screamnext      = NULL;
     PL_maxscream       = -1;                   /* reinits on demand */
-    PL_lastscream      = Nullsv;
+    PL_lastscream      = NULL;
 
     PL_watchaddr       = NULL;
-    PL_watchok         = Nullch;
+    PL_watchok         = NULL;
 
     PL_regdummy                = proto_perl->Tregdummy;
-    PL_regprecomp      = Nullch;
+    PL_regprecomp      = NULL;
     PL_regnpar         = 0;
     PL_regsize         = 0;
     PL_colorset                = 0;            /* reinits PL_colors[] */
     /*PL_colors[6]     = {0,0,0,0,0,0};*/
-    PL_reginput                = Nullch;
-    PL_regbol          = Nullch;
-    PL_regeol          = Nullch;
+    PL_reginput                = NULL;
+    PL_regbol          = NULL;
+    PL_regeol          = NULL;
     PL_regstartp       = (I32*)NULL;
     PL_regendp         = (I32*)NULL;
     PL_reglastparen    = (U32*)NULL;
     PL_reglastcloseparen       = (U32*)NULL;
-    PL_regtill         = Nullch;
+    PL_regtill         = NULL;
     PL_reg_start_tmp   = (char**)NULL;
     PL_reg_start_tmpl  = 0;
     PL_regdata         = (struct reg_data*)NULL;
-    PL_bostr           = Nullch;
+    PL_bostr           = NULL;
     PL_reg_flags       = 0;
     PL_reg_eval_set    = 0;
     PL_regnarrate      = 0;
@@ -10938,21 +10922,21 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
     PL_regcc           = (CURCUR*)NULL;
     PL_reg_call_cc     = (struct re_cc_state*)NULL;
     PL_reg_re          = (regexp*)NULL;
-    PL_reg_ganch       = Nullch;
-    PL_reg_sv          = Nullsv;
+    PL_reg_ganch       = NULL;
+    PL_reg_sv          = NULL;
     PL_reg_match_utf8  = FALSE;
     PL_reg_magic       = (MAGIC*)NULL;
     PL_reg_oldpos      = 0;
     PL_reg_oldcurpm    = (PMOP*)NULL;
     PL_reg_curpm       = (PMOP*)NULL;
-    PL_reg_oldsaved    = Nullch;
+    PL_reg_oldsaved    = NULL;
     PL_reg_oldsavedlen = 0;
 #ifdef PERL_OLD_COPY_ON_WRITE
-    PL_nrs             = Nullsv;
+    PL_nrs             = NULL;
 #endif
     PL_reg_maxiter     = 0;
     PL_reg_leftiter    = 0;
-    PL_reg_poscache    = Nullch;
+    PL_reg_poscache    = NULL;
     PL_reg_poscache_size= 0;
 
     /* RE engine - function pointers */
@@ -11141,7 +11125,7 @@ S_find_hash_subscript(pTHX_ HV *hv, SV* val)
 
     if (!hv || SvMAGICAL(hv) || !HvARRAY(hv) ||
                        (HvTOTALKEYS(hv) > FUV_MAX_SEARCH_SIZE))
-       return Nullsv;
+       return NULL;
 
     array = HvARRAY(hv);
 
@@ -11154,13 +11138,13 @@ S_find_hash_subscript(pTHX_ HV *hv, SV* val)
                    HeVAL(entry) == &PL_sv_placeholder)
                continue;
            if (!HeKEY(entry))
-               return Nullsv;
+               return NULL;
            if (HeKLEN(entry) == HEf_SVKEY)
                return sv_mortalcopy(HeKEY_sv(entry));
            return sv_2mortal(newSVpvn(HeKEY(entry), HeKLEN(entry)));
        }
     }
-    return Nullsv;
+    return NULL;
 }
 
 /* Look for an entry in the array whose value has the same SV as val;
@@ -11226,7 +11210,7 @@ S_varname(pTHX_ GV *gv, const char gvtype, PADOFFSET targ,
        AV *av;
 
        if (!cv || !CvPADLIST(cv))
-           return Nullsv;
+           return NULL;
        av = (AV*)(*av_fetch(CvPADLIST(cv), 0, FALSE));
        sv = *av_fetch(av, targ, FALSE);
        /* SvLEN in a pad name is not to be trusted */
@@ -11282,7 +11266,7 @@ S_find_uninit_var(pTHX_ OP* obase, SV* uninit_sv, bool match)
 
     if (!obase || (match && (!uninit_sv || uninit_sv == &PL_sv_undef ||
                            uninit_sv == &PL_sv_placeholder)))
-       return Nullsv;
+       return NULL;
 
     switch (obase->op_type) {
 
@@ -11294,12 +11278,12 @@ S_find_uninit_var(pTHX_ OP* obase, SV* uninit_sv, bool match)
        const bool pad  = (obase->op_type == OP_PADAV || obase->op_type == OP_PADHV);
        const bool hash = (obase->op_type == OP_PADHV || obase->op_type == OP_RV2HV);
        I32 index = 0;
-       SV *keysv = Nullsv;
+       SV *keysv = NULL;
        int subscript_type = FUV_SUBSCRIPT_WITHIN;
 
        if (pad) { /* @lex, %lex */
            sv = PAD_SVl(obase->op_targ);
-           gv = Nullgv;
+           gv = NULL;
        }
        else {
            if (cUNOPx(obase)->op_first->op_type == OP_GV) {
@@ -11336,14 +11320,14 @@ S_find_uninit_var(pTHX_ OP* obase, SV* uninit_sv, bool match)
     case OP_PADSV:
        if (match && PAD_SVl(obase->op_targ) != uninit_sv)
            break;
-       return varname(Nullgv, '$', obase->op_targ,
-                                   Nullsv, 0, FUV_SUBSCRIPT_NONE);
+       return varname(NULL, '$', obase->op_targ,
+                                   NULL, 0, FUV_SUBSCRIPT_NONE);
 
     case OP_GVSV:
        gv = cGVOPx_gv(obase);
        if (!gv || (match && GvSV(gv) != uninit_sv))
            break;
-       return varname(gv, '$', 0, Nullsv, 0, FUV_SUBSCRIPT_NONE);
+       return varname(gv, '$', 0, NULL, 0, FUV_SUBSCRIPT_NONE);
 
     case OP_AELEMFAST:
        if (obase->op_flags & OPf_SPECIAL) { /* lexical array */
@@ -11356,8 +11340,8 @@ S_find_uninit_var(pTHX_ OP* obase, SV* uninit_sv, bool match)
                if (!svp || *svp != uninit_sv)
                    break;
            }
-           return varname(Nullgv, '$', obase->op_targ,
-                   Nullsv, (I32)obase->op_private, FUV_SUBSCRIPT_ARRAY);
+           return varname(NULL, '$', obase->op_targ,
+                   NULL, (I32)obase->op_private, FUV_SUBSCRIPT_ARRAY);
        }
        else {
            gv = cGVOPx_gv(obase);
@@ -11373,7 +11357,7 @@ S_find_uninit_var(pTHX_ OP* obase, SV* uninit_sv, bool match)
                    break;
            }
            return varname(gv, '$', 0,
-                   Nullsv, (I32)obase->op_private, FUV_SUBSCRIPT_ARRAY);
+                   NULL, (I32)obase->op_private, FUV_SUBSCRIPT_ARRAY);
        }
        break;
 
@@ -11390,12 +11374,12 @@ S_find_uninit_var(pTHX_ OP* obase, SV* uninit_sv, bool match)
            /* $a[uninit_expr] or $h{uninit_expr} */
            return find_uninit_var(cBINOPx(obase)->op_last, uninit_sv, match);
 
-       gv = Nullgv;
+       gv = NULL;
        o = cBINOPx(obase)->op_first;
        kid = cBINOPx(obase)->op_last;
 
        /* get the av or hv, and optionally the gv */
-       sv = Nullsv;
+       sv = NULL;
        if  (o->op_type == OP_PADAV || o->op_type == OP_PADHV) {
            sv = PAD_SV(o->op_targ);
        }
@@ -11430,7 +11414,7 @@ S_find_uninit_var(pTHX_ OP* obase, SV* uninit_sv, bool match)
                return varname(gv, '%', o->op_targ,
                            cSVOPx_sv(kid), 0, FUV_SUBSCRIPT_HASH);
            else
-               return varname(gv, '@', o->op_targ, Nullsv,
+               return varname(gv, '@', o->op_targ, NULL,
                            SvIV(cSVOPx_sv(kid)), FUV_SUBSCRIPT_ARRAY);
        }
        else  {
@@ -11446,14 +11430,14 @@ S_find_uninit_var(pTHX_ OP* obase, SV* uninit_sv, bool match)
                const I32 index = S_find_array_subscript(aTHX_ (AV*)sv, uninit_sv);
                if (index >= 0)
                    return varname(gv, '@', o->op_targ,
-                                       Nullsv, index, FUV_SUBSCRIPT_ARRAY);
+                                       NULL, index, FUV_SUBSCRIPT_ARRAY);
            }
            if (match)
                break;
            return varname(gv,
                (o->op_type == OP_PADAV || o->op_type == OP_RV2AV)
                ? '@' : '%',
-               o->op_targ, Nullsv, 0, FUV_SUBSCRIPT_WITHIN);
+               o->op_targ, NULL, 0, FUV_SUBSCRIPT_WITHIN);
        }
 
        break;
@@ -11475,7 +11459,7 @@ S_find_uninit_var(pTHX_ OP* obase, SV* uninit_sv, bool match)
                if (match && GvSV(gv) != uninit_sv)
                    break;
                return varname(gv, '$', 0,
-                           Nullsv, 0, FUV_SUBSCRIPT_NONE);
+                           NULL, 0, FUV_SUBSCRIPT_NONE);
            }
            /* other possibilities not handled are:
             * open $x; or open my $x;  should return '${*$x}'
@@ -11561,7 +11545,7 @@ S_find_uninit_var(pTHX_ OP* obase, SV* uninit_sv, bool match)
        }
        break;
     }
-    return Nullsv;
+    return NULL;
 }
 
 
@@ -11578,7 +11562,7 @@ Perl_report_uninit(pTHX_ SV* uninit_sv)
 {
     dVAR;
     if (PL_op) {
-       SV* varname = Nullsv;
+       SV* varname = NULL;
        if (uninit_sv) {
            varname = find_uninit_var(PL_op, uninit_sv,0);
            if (varname)