From c8d9f05cec0421a0eb3476a664da7d5a0767284d Mon Sep 17 00:00:00 2001 From: David Sterba Date: Tue, 4 Oct 2016 22:14:12 +0200 Subject: [PATCH] btrfs-progs: kerncompat: add build-time assertion support Macro to verify compile-time conditions, like sie of structures or types. Signed-off-by: David Sterba --- kerncompat.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/kerncompat.h b/kerncompat.h index 0cd85dc6..ea04ef3a 100644 --- a/kerncompat.h +++ b/kerncompat.h @@ -68,6 +68,10 @@ #define ULONG_MAX (~0UL) #endif +#define __token_glue(a,b,c) ___token_glue(a,b,c) +#define ___token_glue(a,b,c) a ## b ## c +#define BUILD_ASSERT(x) extern int __token_glue(compile_time_assert_,__LINE__,__COUNTER__)[1-2*!(x)] __attribute__((unused)) + #ifndef BTRFS_DISABLE_BACKTRACE #define MAX_BACKTRACE 16 static inline void print_trace(void)