24 lines
442 B
24 lines
442 B
#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
|
|
|
|
#if __STDC_VERSION__ >= 201112L && !defined(__cplusplus) && !defined(static_assert)
|
|
#define static_assert _Static_assert
|
|
#endif
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
void __assert_fail(const char*, const char*, int, const char*);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|