]> git.vpit.fr Git - perl/modules/Sub-Op.git/commitdiff
Remove lvalue uses of GvCV()
authorVincent Pit <vince@profvince.com>
Wed, 7 Aug 2013 16:47:16 +0000 (13:47 -0300)
committerVincent Pit <vince@profvince.com>
Wed, 7 Aug 2013 16:47:16 +0000 (13:47 -0300)
Op.xs

diff --git a/Op.xs b/Op.xs
index b5417de40a3b002e426f8a82019f17dcad661909..44e09161c202aa34779166e0536374faae26df79 100644 (file)
--- a/Op.xs
+++ b/Op.xs
 
 #define SO_HAS_PERL(R, V, S) (PERL_REVISION > (R) || (PERL_REVISION == (R) && (PERL_VERSION > (V) || (PERL_VERSION == (V) && (PERL_SUBVERSION >= (S))))))
 
+#ifndef GvCV_set
+# define GvCV_set(G, C) (GvCV(G) = (C))
+#endif
+
 /* ... Thread safety and multiplicity ...................................... */
 
 #ifndef SO_MULTIPLICITY
@@ -284,7 +288,7 @@ STATIC OP *so_ck_entersub(pTHX_ OP *o) {
 
    if (gv && SvTYPE(gv) >= SVt_PVGV && (cv = GvCV(gv)) == MY_CXT.placeholder) {
     SvREFCNT_dec(cv);
-    GvCV(gv) = NULL;
+    GvCV_set(gv, NULL);
    }
 
    if (c->call)
@@ -389,7 +393,7 @@ STATIC OP *so_ck_gelem(pTHX_ OP *o) {
 
    if (gv && SvTYPE(gv) >= SVt_PVGV && (cv = GvCV(gv)) == MY_CXT.placeholder) {
     SvREFCNT_dec(cv);
-    GvCV(gv) = NULL;
+    GvCV_set(gv, NULL);
    }
   }
  }