From: Maria Matejka Date: Thu, 1 Aug 2019 12:25:01 +0000 (+0200) Subject: More assertion categories X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b08ca3d958e1e8474d943260d3b66769dc4e50a6;p=thirdparty%2Fbird.git More assertion categories --- diff --git a/lib/birdlib.h b/lib/birdlib.h index 779d2f89a..b6b7f6bd1 100644 --- a/lib/birdlib.h +++ b/lib/birdlib.h @@ -159,12 +159,17 @@ void debug(const char *msg, ...); /* Printf to debug output */ #define DBG(x, y...) do { } while(0) #endif +#define ASSERT_DIE(x) do { if (!(x)) bug("Assertion '%s' failed at %s:%d", #x, __FILE__, __LINE__); } while(0) + #ifdef DEBUGGING -#define ASSERT(x) do { if (!(x)) bug("Assertion '%s' failed at %s:%d", #x, __FILE__, __LINE__); } while(0) +#define ASSERT(x) ASSERT_DIE(x) +#define ASSUME(x) ASSERT_DIE(x) #else #define ASSERT(x) do { if (!(x)) log(L_BUG "Assertion '%s' failed at %s:%d", #x, __FILE__, __LINE__); } while(0) +#define ASSUME(x) /* intentionally left blank */ #endif + /* Pseudorandom numbers */ u32 random_u32(void);