mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-18 12:33:17 +01:00
Refactored openrct2_assert to not rely on inlining. (#6061)
This commit is contained in:
@@ -34,11 +34,13 @@
|
||||
|
||||
extern "C"
|
||||
{
|
||||
void openrct2_assert_va(bool expression, const char * message, va_list va)
|
||||
void openrct2_assert_fwd(bool expression, const char * message, ...)
|
||||
{
|
||||
va_list va;
|
||||
va_start(va, message);
|
||||
Guard::Assert_VA(expression, message, va);
|
||||
va_end(va);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
namespace Guard
|
||||
|
||||
@@ -22,15 +22,9 @@
|
||||
extern "C" {
|
||||
#endif // __cplusplus
|
||||
|
||||
void openrct2_assert_va(bool expression, const char * message, va_list va);
|
||||
static inline void openrct2_assert(bool expression, const char * message, ...)
|
||||
{
|
||||
if (!expression) return;
|
||||
va_list va;
|
||||
va_start(va, message);
|
||||
openrct2_assert_va(expression, message, va);
|
||||
va_end(va);
|
||||
}
|
||||
void openrct2_assert_fwd(bool expression, const char * message, ...);
|
||||
|
||||
#define openrct2_assert(expr, msg, ...) if(!(expr)) { openrct2_assert_fwd((expr), msg, ##__VA_ARGS__); }
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user