X-Git-Url: http://git.lttng.org/?a=blobdiff_plain;f=include%2Fwrapper%2Fcompiler.h;h=ade06fe702de4e4133868fb7ece4509b4c0369de;hb=a30e08c8f7bfcce6101c552e7af19dd516acea9a;hp=e0bd33f4ee860c52b5ba10a8eedcabb0eea3ae4e;hpb=be06402dbdbea2f3394e60ec15c5d3356e2be416;p=lttng-modules.git diff --git a/include/wrapper/compiler.h b/include/wrapper/compiler.h index e0bd33f4..ade06fe7 100644 --- a/include/wrapper/compiler.h +++ b/include/wrapper/compiler.h @@ -9,7 +9,7 @@ #define _LTTNG_WRAPPER_COMPILER_H #include -#include +#include /* * Don't allow compiling with buggy compiler. @@ -56,7 +56,7 @@ * and remove calls to smp_read_barrier_depends which was dropped * in v5.9. */ -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,15,0)) +#if (LTTNG_LINUX_VERSION_CODE >= LTTNG_KERNEL_VERSION(4,15,0)) #define LTTNG_READ_ONCE(x) READ_ONCE(x) #else #define LTTNG_READ_ONCE(x) \ @@ -69,4 +69,16 @@ #define __LTTNG_COMPOUND_LITERAL(type, ...) (type[]) { __VA_ARGS__ } +/* + * The static_assert macro was defined by the kernel in v5.1. + * If the macro is not defined, we define it. + * (kernel source: include/linux/build_bug.h) + */ +#ifndef static_assert + +# define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr) +# define __static_assert(expr, msg, ...) _Static_assert(expr, msg) + +#endif + #endif /* _LTTNG_WRAPPER_COMPILER_H */