Change 32708 by [EMAIL PROTECTED] on 2007/12/22 19:22:48

        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.

Affected files ...

... //depot/perl/perl.h#809 edit

Differences ...

==== //depot/perl/perl.h#809 (text) ====
Index: perl/perl.h
--- perl/perl.h#808~32707~      2007-12-22 10:26:21.000000000 -0800
+++ perl/perl.h 2007-12-22 11:22:48.000000000 -0800
@@ -3760,13 +3760,21 @@
 #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 <assert.h>
+#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  /* <assert.h> 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 {
End of Patch.

Reply via email to