summaryrefslogtreecommitdiff
path: root/sv.h
diff options
context:
space:
mode:
Diffstat (limited to 'sv.h')
-rw-r--r--sv.h13
1 files changed, 2 insertions, 11 deletions
diff --git a/sv.h b/sv.h
index 194abd18b6..4e5592dd4e 100644
--- a/sv.h
+++ b/sv.h
@@ -129,12 +129,6 @@ struct io {
#define SVpbm_CASEFOLD 0x40000000
#define SVpbm_TAIL 0x20000000
-#define SVpgv_MULTI 0x80000000
-
-#define SVpcv_CLONE 0x80000000 /* anon CV uses external lexicals */
-#define SVpcv_CLONED 0x40000000 /* a clone of one of those */
-#define SVpcv_ANON 0x20000000 /* CvGV() can't be trusted */
-
#ifdef OVERLOAD
#define SVpgv_AM 0x40000000
/* #define SVpgv_badAM 0x20000000 */
@@ -203,6 +197,7 @@ struct xpvgv {
char* xgv_name;
STRLEN xgv_namelen;
HV* xgv_stash;
+ U8 xgv_flags;
};
struct xpvbm {
@@ -301,7 +296,7 @@ struct xpvio {
#define SvIOK_on(sv) (SvOOK_off(sv), \
SvFLAGS(sv) |= (SVf_IOK|SVp_IOK))
#define SvIOK_off(sv) (SvFLAGS(sv) &= ~(SVf_IOK|SVp_IOK))
-#define SvIOK_only(sv) (SvOK_off(sv), \
+#define SvIOK_only(sv) (SvOOK_off(sv), SvOK_off(sv), \
SvFLAGS(sv) |= (SVf_IOK|SVp_IOK))
#define SvNOK(sv) (SvFLAGS(sv) & SVf_NOK)
@@ -411,10 +406,6 @@ struct xpvio {
#define SvVALID_on(sv) (SvFLAGS(sv) |= SVpbm_VALID)
#define SvVALID_off(sv) (SvFLAGS(sv) &= ~SVpbm_VALID)
-#define SvMULTI(sv) (SvFLAGS(sv) & SVpgv_MULTI)
-#define SvMULTI_on(sv) (SvFLAGS(sv) |= SVpgv_MULTI)
-#define SvMULTI_off(sv) (SvFLAGS(sv) &= ~SVpgv_MULTI)
-
#define SvRV(sv) ((XRV*) SvANY(sv))->xrv_rv
#define SvRVx(sv) SvRV(sv)