Perl_die_nocontext() is also called with NULL from XS extensions that want to set...
Vincent Pit [Thu, 13 Aug 2009 11:34:48 +0000 (13:34 +0200)]
This commit goes with 52a5bfab8876f302d269f1bfa46eae1998f0d3ca.

embed.fnc
proto.h
util.c

index 0f554e5..67a79f5 100644 (file)
--- a/embed.fnc
+++ b/embed.fnc
@@ -165,7 +165,7 @@ Aprd        |void   |croak_xs_usage |NN const CV *const cv \
 
 #if defined(PERL_IMPLICIT_CONTEXT)
 Afnrp  |void   |croak_nocontext|NULLOK const char* pat|...
-Afnp   |OP*    |die_nocontext  |NN const char* pat|...
+Afnp   |OP*    |die_nocontext  |NULLOK const char* pat|...
 Afnp   |void   |deb_nocontext  |NN const char* pat|...
 Afnp   |char*  |form_nocontext |NN const char* pat|...
 Anp    |void   |load_module_nocontext|U32 flags|NN SV* name|NULLOK SV* ver|...
diff --git a/proto.h b/proto.h
index 4e47b8c..1b93673 100644 (file)
--- a/proto.h
+++ b/proto.h
@@ -335,10 +335,7 @@ PERL_CALLCONV void Perl_croak_nocontext(const char* pat, ...)
                        __attribute__format__null_ok__(__printf__,1,2);
 
 PERL_CALLCONV OP*      Perl_die_nocontext(const char* pat, ...)
-                       __attribute__format__(__printf__,1,2)
-                       __attribute__nonnull__(1);
-#define PERL_ARGS_ASSERT_DIE_NOCONTEXT \
-       assert(pat)
+                       __attribute__format__null_ok__(__printf__,1,2);
 
 PERL_CALLCONV void     Perl_deb_nocontext(const char* pat, ...)
                        __attribute__format__(__printf__,1,2)
diff --git a/util.c b/util.c
index ab9e0fe..95bdd37 100644 (file)
--- a/util.c
+++ b/util.c
@@ -1387,7 +1387,6 @@ Perl_die_nocontext(const char* pat, ...)
     dTHX;
     OP *o;
     va_list args;
-    PERL_ARGS_ASSERT_DIE_NOCONTEXT;
     va_start(args, pat);
     o = vdie(pat, &args);
     va_end(args);