Make gv_IOadd accept a NULL argument
Rafael Garcia-Suarez [Thu, 6 Aug 2009 20:12:47 +0000 (22:12 +0200)]
This fixes bug #68182

embed.fnc
gv.c
proto.h

index deff9ad..54389d5 100644 (file)
--- a/embed.fnc
+++ b/embed.fnc
@@ -341,7 +341,7 @@ Ap  |void   |gp_free        |NULLOK GV* gv
 Ap     |GP*    |gp_ref         |NULLOK GP* gp
 Ap     |GV*    |gv_AVadd       |NN GV* gv
 Ap     |GV*    |gv_HVadd       |NN GV* gv
-Ap     |GV*    |gv_IOadd       |NN GV* gv
+Ap     |GV*    |gv_IOadd       |NULLOK GV* gv
 ApR    |GV*    |gv_autoload4   |NULLOK HV* stash|NN const char* name|STRLEN len|I32 method
 Ap     |void   |gv_check       |NN const HV* stash
 Ap     |void   |gv_efullname   |NN SV* sv|NN const GV* gv
diff --git a/gv.c b/gv.c
index f24a7f1..f16e0ac 100644 (file)
--- a/gv.c
+++ b/gv.c
@@ -84,8 +84,6 @@ Perl_gv_IOadd(pTHX_ register GV *gv)
 {
     dVAR;
 
-    PERL_ARGS_ASSERT_GV_IOADD;
-
     if (!gv || SvTYPE((const SV *)gv) != SVt_PVGV) {
 
         /*
diff --git a/proto.h b/proto.h
index 53c738e..8241132 100644 (file)
--- a/proto.h
+++ b/proto.h
@@ -842,11 +842,7 @@ PERL_CALLCONV GV*  Perl_gv_HVadd(pTHX_ GV* gv)
 #define PERL_ARGS_ASSERT_GV_HVADD      \
        assert(gv)
 
-PERL_CALLCONV GV*      Perl_gv_IOadd(pTHX_ GV* gv)
-                       __attribute__nonnull__(pTHX_1);
-#define PERL_ARGS_ASSERT_GV_IOADD      \
-       assert(gv)
-
+PERL_CALLCONV GV*      Perl_gv_IOadd(pTHX_ GV* gv);
 PERL_CALLCONV GV*      Perl_gv_autoload4(pTHX_ HV* stash, const char* name, STRLEN len, I32 method)
                        __attribute__warn_unused_result__
                        __attribute__nonnull__(pTHX_2);