NULL is a legal value for newXS()'s name parameter.
Marcus Holland-Moritz [Sun, 4 Dec 2005 19:37:58 +0000 (19:37 +0000)]
(This caused strange build failures with gcc4 -O3)

p4raw-id: //depot/perl@26253

embed.fnc
proto.h

index ba2994d..e92201d 100644 (file)
--- a/embed.fnc
+++ b/embed.fnc
@@ -519,7 +519,7 @@ Apa |OP*    |newRANGE       |I32 flags|NN OP* left|NN OP* right
 Apa    |OP*    |newSLICEOP     |I32 flags|NULLOK OP* subscript|NULLOK OP* listop
 Apa    |OP*    |newSTATEOP     |I32 flags|NULLOK char* label|NULLOK OP* o
 Ap     |CV*    |newSUB         |I32 floor|NULLOK OP* o|NULLOK OP* proto|NULLOK OP* block
-Apd    |CV*    |newXS          |NN const char* name|NN XSUBADDR_t f|NN const char* filename
+Apd    |CV*    |newXS          |NULLOK const char* name|NN XSUBADDR_t f|NN const char* filename
 Apda   |AV*    |newAV
 Apa    |OP*    |newAVREF       |NN OP* o
 Apa    |OP*    |newBINOP       |I32 type|I32 flags|NULLOK OP* first|NULLOK OP* last
diff --git a/proto.h b/proto.h
index 71be05a..f46b045 100644 (file)
--- a/proto.h
+++ b/proto.h
@@ -1425,7 +1425,6 @@ PERL_CALLCONV OP* Perl_newSTATEOP(pTHX_ I32 flags, char* label, OP* o)
 
 PERL_CALLCONV CV*      Perl_newSUB(pTHX_ I32 floor, OP* o, OP* proto, OP* block);
 PERL_CALLCONV CV*      Perl_newXS(pTHX_ const char* name, XSUBADDR_t f, const char* filename)
-                       __attribute__nonnull__(pTHX_1)
                        __attribute__nonnull__(pTHX_2)
                        __attribute__nonnull__(pTHX_3);