Add windows pragma to slience warning in runtime assert

This commit is contained in:
2025-12-15 19:54:04 +00:00
parent 04858b76c0
commit c6560ab7f5

View File

@@ -27,16 +27,31 @@ BEGIN_C_LINKAGE
#define wapp_debug_assert(EXPR, MSG) #define wapp_debug_assert(EXPR, MSG)
#endif #endif
#define __wapp_runtime_assert(EXPR, MSG) do { \ #ifdef WAPP_PLATFORM_WINDOWS
if (!(EXPR)) { \ #define __wapp_runtime_assert(EXPR, MSG) do { \
fprintf( \ __pragma(warning(push)) \
stderr, \ __pragma(warning(disable:4127)) \
"%s:%d (In function `%s`): Assertion failed (%" PRIu32 ")\nDiagnostic: %s\n\n", \ if (!(EXPR)) { \
__FILE__, __LINE__, __func__, \ __pragma(warning(pop)) \
EXPR, MSG \ __runtime_assert_failed(EXPR, MSG); \
); \ } \
abort(); \ } while(false)
} \ #else
#define __wapp_runtime_assert(EXPR, MSG) do { \
if (!(EXPR)) { \
__runtime_assert_failed(EXPR, MSG); \
} \
} while(false)
#endif // !WAPP_PLATFORM_WINDOWS
#define __runtime_assert_failed(EXPR, MSG) do { \
fprintf( \
stderr, \
"%s:%d (In function `%s`): Assertion failed (%" PRIu32 ")\nDiagnostic: %s\n\n", \
__FILE__, __LINE__, __func__, \
EXPR, MSG \
); \
abort(); \
} while(false) } while(false)
#ifdef WAPP_PLATFORM_CPP #ifdef WAPP_PLATFORM_CPP