Line 28:
Line 28:
#undef assert
#undef assert
−
#ifdef NDEBUG /* required by ANSI standard */
+
#ifdef NDEBUG /* required by ANSI standard */
# define assert(__e) ((void)0)
# define assert(__e) ((void)0)
#else
#else
# define assert(__e) ((__e) ? (void)0 : __assert_func (__FILE__, __LINE__, \
# define assert(__e) ((__e) ? (void)0 : __assert_func (__FILE__, __LINE__, \
−
__ASSERT_FUNC, #__e))
+
__ASSERT_FUNC, #__e))
# ifndef __ASSERT_FUNC
# ifndef __ASSERT_FUNC
/* Use g++'s demangled names in C++. */
/* Use g++'s demangled names in C++. */
−
# if defined __cplusplus && defined __GNUC__
+
# if defined __cplusplus && defined __GNUC__
−
# define __ASSERT_FUNC __PRETTY_FUNCTION__
+
# define __ASSERT_FUNC __PRETTY_FUNCTION__
/* C99 requires the use of __func__, gcc also supports it. */
/* C99 requires the use of __func__, gcc also supports it. */
−
# elif defined __GNUC__ || __STDC_VERSION__ >= 199901L
+
# elif defined __GNUC__ || __STDC_VERSION__ >= 199901L
−
# define __ASSERT_FUNC __func__
+
# define __ASSERT_FUNC __func__
/* failed to detect __func__ support. */
/* failed to detect __func__ support. */
−
# else
+
# else
−
# define __ASSERT_FUNC ((char *) 0)
+
# define __ASSERT_FUNC ((char *) 0)
−
# endif
+
# endif
# endif /* !__ASSERT_FUNC */
# endif /* !__ASSERT_FUNC */
#endif /* !NDEBUG */
#endif /* !NDEBUG */
void _EXFUN(__assert, (const char *, int, const char *)
void _EXFUN(__assert, (const char *, int, const char *)
−
_ATTRIBUTE ((__noreturn__)));
+
_ATTRIBUTE ((__noreturn__)));
void _EXFUN(__assert_func, (const char *, int, const char *, const char *)
void _EXFUN(__assert_func, (const char *, int, const char *, const char *)
−
_ATTRIBUTE ((__noreturn__)));
+
_ATTRIBUTE ((__noreturn__)));
#ifdef __cplusplus
#ifdef __cplusplus
Line 76:
Line 76:
This software is provided 'as-is', without any express or implied
This software is provided 'as-is', without any express or implied
−
warranty. In no event will the authors be held liable for any
+
warranty. In no event will the authors be held liable for any
damages arising from the use of this software.
damages arising from the use of this software.
Line 126:
Line 126:
This software is provided 'as-is', without any express or implied
This software is provided 'as-is', without any express or implied
−
warranty. In no event will the authors be held liable for any
+
warranty. In no event will the authors be held liable for any
damages arising from the use of this software.
damages arising from the use of this software.