From: Nicholas Clark Date: Sat, 22 Dec 2007 19:22:48 +0000 (+0000) Subject: Replace our assert-which-can-be-caught-by-eval with the real deal from X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=de84dc04df54774a9a36117a3e6233130e44a9a3;p=p5sagit%2Fp5-mst-13.2.git Replace our assert-which-can-be-caught-by-eval with the real deal from the standard C library. Make ours available as Perl_assert(), if you really want that. assert() is only #include'd if you compile with -DDEBUGGING. p4raw-id: //depot/perl@32708 --- diff --git a/perl.h b/perl.h index bf4db24..79259ce 100644 --- a/perl.h +++ b/perl.h @@ -3760,13 +3760,21 @@ Gid_t getegid (void); #define PERL_MAGIC_arylen_p '@' /* to move arylen out of XPVAV */ #define PERL_MAGIC_ext '~' /* Available for use by extensions */ +#if defined(DEBUGGING) && defined(I_ASSERT) +# include +#endif + +/* Keep the old croak based assert for those who want it, and as a fallback if + the platform is so hertically non-ANSI that it can't assert. */ -#ifndef assert /* might have been included somehow */ -#define assert(what) PERL_DEB( \ +#define Perl_assert(what) PERL_DEB( \ ((what) ? ((void) 0) : \ (Perl_croak_nocontext("Assertion %s failed: file \"" __FILE__ \ "\", line %d", STRINGIFY(what), __LINE__), \ (void) 0))) + +#ifndef assert +# define assert(what) Perl_assert(what) #endif struct ufuncs {