#include #include #include "third_party/debugbreak.h" #undef assert #ifdef NDEBUG #define assert(_Expression) ((void)0) #else /* !defined (NDEBUG) */ #ifdef BOOST_OS_WINDOWS_AVAILABLE #if defined(_UNICODE) || defined(UNICODE) #define assert(_Expression) \ (void) \ ((!!(_Expression)) || \ (debug_break(),_wassert(_CRT_WIDE(#_Expression),_CRT_WIDE(__FILE__),__LINE__),0)) #else /* not unicode */ #define assert(_Expression) \ (void) \ ((!!(_Expression)) || \ (debug_break(),_assert(#_Expression,__FILE__,__LINE__),0)) #endif /* _UNICODE||UNICODE */ #else /* BOOST_OS_WINDOWS_AVAILABLE */ #define assert(_Expression) \ (void) \ ((!!(_Expression)) || \ (debug_break(),__assert(#_Expression,__FILE__,__LINE__),0)) #endif /* BOOST_OS_WINDOWS_AVAILABLE */ #endif /* !defined (NDEBUG) */