Fix breakages that prevended -DPERL_POISON from compiling.
[p5sagit/p5-mst-13.2.git] / gv.h
diff --git a/gv.h b/gv.h
index 9034e59..d9a5b51 100644 (file)
--- a/gv.h
+++ b/gv.h
@@ -42,9 +42,9 @@ Return the SV from the GV.
 
 #define GvSV(gv)       (GvGP(gv)->gp_sv)
 #ifdef PERL_DONT_CREATE_GVSV
-#define GvSVn(gv)      (GvGP(gv)->gp_sv ? \
-                        GvGP(gv)->gp_sv : \
-                        GvGP(gv_SVadd(gv))->gp_sv)
+#define GvSVn(gv)      (*(GvGP(gv)->gp_sv ? \
+                        &(GvGP(gv)->gp_sv) : \
+                        &(GvGP(gv_SVadd(gv))->gp_sv)))
 #else
 #define GvSVn(gv)      GvSV(gv)
 #endif
@@ -128,8 +128,8 @@ Return the SV from the GV.
 #define GvIN_PAD_off(gv)       (GvFLAGS(gv) &= ~GVf_IN_PAD)
 
 #define GvUNIQUE(gv)            0
-#define GvUNIQUE_on(gv)         0
-#define GvUNIQUE_off(gv)        0
+#define GvUNIQUE_on(gv)
+#define GvUNIQUE_off(gv)
 
 #ifdef USE_ITHREADS
 #define GV_UNIQUE_CHECK
@@ -160,3 +160,4 @@ Return the SV from the GV.
 */
 #define gv_fullname3(sv,gv,prefix) gv_fullname4(sv,gv,prefix,TRUE)
 #define gv_efullname3(sv,gv,prefix) gv_efullname4(sv,gv,prefix,TRUE)
+#define gv_fetchmethod(stash, name) gv_fetchmethod_autoload(stash, name, TRUE)