| /* |
| * assert.h |
| * This file has no copyright assigned and is placed in the Public Domain. |
| * This file is a part of the mingw-runtime package. |
| * No warranty is given; refer to the file DISCLAIMER within the package. |
| * |
| * Define the assert macro for debug output. |
| * |
| */ |
| |
| /* We should be able to include this file multiple times to allow the assert |
| macro to be enabled/disabled for different parts of code. So don't add a |
| header guard. */ |
| |
| #ifndef RC_INVOKED |
| |
| /* All the headers include this file. */ |
| #include <_mingw.h> |
| |
| #undef assert |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #ifdef NDEBUG |
| /* |
| * If not debugging, assert does nothing. |
| */ |
| #define assert(x) ((void)0) |
| |
| #else /* debugging enabled */ |
| |
| /* |
| * CRTDLL nicely supplies a function which does the actual output and |
| * call to abort. |
| */ |
| _CRTIMP void __cdecl __MINGW_NOTHROW _assert (const char*, const char*, int) __MINGW_ATTRIB_NORETURN; |
| |
| /* |
| * Definition of the assert macro. |
| */ |
| #define assert(e) ((e) ? (void)0 : _assert(#e, __FILE__, __LINE__)) |
| |
| #endif /* NDEBUG */ |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif /* Not RC_INVOKED */ |