SvLEN_set(gv, 0);
SvPOK_off(gv);
} else
- Safefree(SvPVX_const(gv));
+ Safefree(SvPVX_mutable(gv));
}
Newz(602, gp, 1, GP);
GvGP(gv) = gp_ref(gp);
GvCVGEN(gv) = 0;
GvEGV(gv) = gv;
sv_magic((SV*)gv, (SV*)gv, PERL_MAGIC_glob, Nullch, 0);
- GvSTASH(gv) = (HV*)SvREFCNT_inc(stash);
+ GvSTASH(gv) = stash;
+ if (stash)
+ Perl_sv_add_backref(aTHX_ (SV*)stash, (SV*)gv);
GvNAME(gv) = savepvn(name, len);
GvNAMELEN(gv) = len;
if (multi || doproto) /* doproto means it _was_ mentioned */