From: Nicholas Clark Date: Sat, 25 Feb 2006 17:16:24 +0000 (+0000) Subject: GvFLAGS can be overlaid with SvCUR. X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=5526b5b35ef97d80c7bc2904d09cdc868f6a3c5a;p=p5sagit%2Fp5-mst-13.2.git GvFLAGS can be overlaid with SvCUR. p4raw-id: //depot/perl@27330 --- diff --git a/gv.h b/gv.h index 27bef6c..67218d8 100644 --- a/gv.h +++ b/gv.h @@ -36,7 +36,7 @@ struct gp { (*({GV *const yaah = (GV *) gv; \ assert(SvTYPE(yaah) == SVt_PVGV || SvTYPE(yaah) == SVt_PVLV); \ assert(isGV_with_GP(yaah)); \ - &(GvXPVGV(yaah)->xgv_flags);})) + &(GvXPVGV(yaah)->xpv_cur);})) # define GvSTASH(gv) \ (*({ GV *_gv = (GV *) gv; \ assert(isGV_with_GP(_gv)); \ @@ -57,7 +57,7 @@ struct gp { })) #else # define GvGP(gv) ((gv)->sv_u.svu_gp) -# define GvFLAGS(gv) (GvXPVGV(gv)->xgv_flags) +# define GvFLAGS(gv) (GvXPVGV(gv)->xpv_cur) # define GvSTASH(gv) (GvXPVGV(gv)->xnv_u.xgv_stash) # define GvNAME(gv) (GvXPVGV(gv)->xgv_name) # define GvNAMELEN(gv) (GvXPVGV(gv)->xgv_namelen) diff --git a/sv.h b/sv.h index 7445c76..e5fb2d3 100644 --- a/sv.h +++ b/sv.h @@ -424,7 +424,6 @@ struct xpvlv { /* a full glob fits into this */ char* xgv_name; STRLEN xgv_namelen; - U8 xgv_flags; STRLEN xlv_targoff; STRLEN xlv_targlen; @@ -438,8 +437,8 @@ struct xpvgv { NV xnv_nv; HV * xgv_stash; /* The stash of this GV */ } xnv_u; - STRLEN xpv_cur; /* length of svu_pv as a C string */ - STRLEN xpv_len; /* allocated size */ + STRLEN xpv_cur; /* xgv_flags */ + STRLEN xpv_len; /* 0 */ union { IV xivu_iv; /* integer value or pv offset */ UV xivu_uv; @@ -454,7 +453,6 @@ struct xpvgv { char* xgv_name; STRLEN xgv_namelen; - U8 xgv_flags; }; struct xpvbm {