X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;ds=sidebyside;f=gdb%2Fgdb_assert.h;h=9cad74c9cbc81ff7736792d59fffe93fc6f5c04f;hb=d17d003345eb4816548ff9da5c97fb7a76df714e;hp=85e3deeda3b594a9046e6f31f259a2af141ade62;hpb=6751bfc9da025e55a956bf2cfc557ad7a3426210;p=deliverable%2Fbinutils-gdb.git diff --git a/gdb/gdb_assert.h b/gdb/gdb_assert.h index 85e3deeda3..9cad74c9cb 100644 --- a/gdb/gdb_assert.h +++ b/gdb/gdb_assert.h @@ -1,5 +1,5 @@ /* GDB-friendly replacement for . - Copyright 2000 Free Software Foundation, Inc. + Copyright 2000, 2001 Free Software Foundation, Inc. This file is part of GDB. @@ -21,6 +21,11 @@ #ifndef GDB_ASSERT_H #define GDB_ASSERT_H +/* PRAGMATICS: "gdb_assert.h":gdb_assert() is a lower case (rather + than upper case) macro since that provides the closest fit to the + existing lower case macro :assert() that it is + replacing. */ + #define gdb_assert(expr) \ ((void) ((expr) ? 0 : \ (gdb_assert_fail (#expr, __FILE__, __LINE__, ASSERT_FUNCTION), 0))) @@ -35,17 +40,19 @@ #else #if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L #define ASSERT_FUNCTION __func__ -#else -#define ASSERT_FUNCTION ((const char *) 0) #endif #endif /* This prints an "Assertion failed" message, aksing the user if they want to continue, dump core, or just exit. */ +#if defined (ASSERT_FUNCTION) #define gdb_assert_fail(assertion, file, line, function) \ - internal_error ("%s:%u: %s%sAssertion `%s' failed.", \ - file, line, \ - function ? function : "", function ? ": " : "", \ + internal_error (file, line, "%s: Assertion `%s' failed.", \ + function, assertion) +#else +#define gdb_assert_fail(assertion, file, line, function) \ + internal_error (file, line, "Assertion `%s' failed.", \ assertion) +#endif #endif /* gdb_assert.h */