diff --git a/libobs/util/base.c b/libobs/util/base.c index a198ef0f3..8d1f15c60 100644 --- a/libobs/util/base.c +++ b/libobs/util/base.c @@ -62,14 +62,8 @@ static void def_log_handler(int log_level, const char *format, va_list args, UNUSED_PARAMETER(param); } -#ifdef _MSC_VER -#define NORETURN __declspec(noreturn) -#else -#define NORETURN __attribute__((noreturn)) -#endif - -NORETURN static void def_crash_handler(const char *format, va_list args, - void *param) +OBS_NORETURN static void def_crash_handler(const char *format, va_list args, + void *param) { vfprintf(stderr, format, args); exit(0); @@ -104,7 +98,7 @@ void base_set_crash_handler(void (*handler)(const char *, va_list, void *), crash_handler = handler; } -void bcrash(const char *format, ...) +OBS_NORETURN void bcrash(const char *format, ...) { va_list args; diff --git a/libobs/util/base.h b/libobs/util/base.h index 61875a1bc..ee9a27fab 100644 --- a/libobs/util/base.h +++ b/libobs/util/base.h @@ -85,7 +85,7 @@ EXPORT void blogva(int log_level, const char *format, va_list args); PRINTFATTR(2, 3) EXPORT void blog(int log_level, const char *format, ...); PRINTFATTR(1, 2) -EXPORT void bcrash(const char *format, ...); +OBS_NORETURN EXPORT void bcrash(const char *format, ...); #undef PRINTFATTR diff --git a/libobs/util/c99defs.h b/libobs/util/c99defs.h index f84432aa3..e2cf89158 100644 --- a/libobs/util/c99defs.h +++ b/libobs/util/c99defs.h @@ -25,9 +25,11 @@ #ifdef _MSC_VER #define OBS_DEPRECATED __declspec(deprecated) +#define OBS_NORETURN __declspec(noreturn) #define FORCE_INLINE __forceinline #else #define OBS_DEPRECATED __attribute__((deprecated)) +#define OBS_NORETURN __attribute__((noreturn)) #define FORCE_INLINE inline __attribute__((always_inline)) #endif