1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-07 06:43:00 +03:00

Add local assert function to avoid problems with memory allocation in

the real one.
This commit is contained in:
Ulrich Drepper
2009-08-31 04:55:10 -07:00
parent 7812c65b90
commit 72f9026327

View File

@@ -329,7 +329,29 @@ extern "C" {
or other mallocs available that do this.
*/
#include <assert.h>
#ifdef NDEBUG
# define assert(expr) ((void) 0)
#else
# define assert(expr) \
((expr) \
? ((void) 0) \
: __malloc_assert (__STRING (expr), __FILE__, __LINE__, __func__))
extern const char *__progname;
static void
__malloc_assert (const char *assertion, const char *file, unsigned int line,
const char *function)
{
(void) __fxprintf (NULL, "%s%s%s:%u: %s%sAssertion `%s' failed.\n",
__progname, __progname[0] ? ": " : "",
file, line,
function ? function : "", function ? ": " : "",
assertion);
fflush (stderr);
abort ();
}
#endif
/*