*** empty log message ***
[deliverable/binutils-gdb.git] / gdb / gdb_assert.h
index c9979dbddf52b6c68e0e051fea1bb4f7988af20f..9cad74c9cbc81ff7736792d59fffe93fc6f5c04f 100644 (file)
 #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.h>:assert() that it is
+   replacing. */
+
 #define gdb_assert(expr)                                                      \
   ((void) ((expr) ? 0 :                                                       \
           (gdb_assert_fail (#expr, __FILE__, __LINE__, ASSERT_FUNCTION), 0)))
 #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 (file, line, "%s%sAssertion `%s' failed.",                   \
-                 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 */
This page took 0.04303 seconds and 4 git commands to generate.