From 185986c61d4f84efcc02cc5766c77e876654a0a9 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 22 Apr 2010 03:51:26 +0200 Subject: assert: store away assert msg before aborting, akin to glibc's __abort_msg --- macro.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'macro.h') diff --git a/macro.h b/macro.h index d56585dc34..2379ee2de3 100644 --- a/macro.h +++ b/macro.h @@ -35,6 +35,7 @@ #define _deprecated __attribute__ ((deprecated)) #define _packed __attribute__ ((packed)) #define _malloc __attribute__ ((malloc)) +#define _weak __attribute__ ((weak)) #define _likely(x) (__builtin_expect(!!(x),1)) #define _unlikely(x) (__builtin_expect(!!(x),0)) @@ -69,11 +70,10 @@ static inline size_t ALIGN(size_t l) { #define assert_se(expr) \ do { \ - if (_unlikely(!(expr))) { \ - log_error("Assertion '%s' failed at %s:%u, function %s(). Aborting.", \ - #expr , __FILE__, __LINE__, __PRETTY_FUNCTION__); \ - abort(); \ - } \ + if (_unlikely(!(expr))) \ + log_assert(__FILE__, __LINE__, __PRETTY_FUNCTION__, \ + "Assertion '%s' failed at %s:%u, function %s(). Aborting.", \ + #expr , __FILE__, __LINE__, __PRETTY_FUNCTION__); \ } while (false) \ /* We override the glibc assert() here. */ @@ -86,9 +86,9 @@ static inline size_t ALIGN(size_t l) { #define assert_not_reached(t) \ do { \ - log_error("Code should not be reached '%s' at %s:%u, function %s(). Aborting.", \ - t, __FILE__, __LINE__, __PRETTY_FUNCTION__); \ - abort(); \ + log_assert(__FILE__, __LINE__, __PRETTY_FUNCTION__, \ + "Code should not be reached '%s' at %s:%u, function %s(). Aborting.", \ + t, __FILE__, __LINE__, __PRETTY_FUNCTION__); \ } while (false) #define assert_cc(expr) \ -- cgit v1.2.3-54-g00ecf