1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
#include <features.h> #undef assert #ifdef NDEBUG #define assert(x) (void)0 #else #define assert(x) ((void)((x) || (__assert_fail(#x, __FILE__, __LINE__, __func__),0))) #endif #ifdef __cplusplus extern "C" { #endif _Noreturn void __assert_fail (const char *, const char *, int, const char *); #ifdef __cplusplus } #endif