[PATCH 16/74] backports: define __is_constexpr() for older kernels
Johannes Berg <[email protected]> Fri, 24 May 2024 19:07:28 +0200
| Newsgroups | org.kernel.vger.backports |
|---|---|
| Message-ID | <20240524190906.1835c4614254.Ib82d1b3349ab6fc55b5f17dba1ada60601dcd742@changeid> |
From: Gregory Greenman <[email protected]> Signed-off-by: Gregory Greenman <[email protected]> Signed-off-by: Johannes Berg <[email protected]> --- backport/backport-include/linux/kernel.h | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 backport/backport-include/linux/kernel.h diff --git a/backport/backport-include/linux/kernel.h b/backport/backport-include/linux/kernel.h new file mode 100644 index 000000000000..b59971fbc1f0 --- /dev/null +++ b/backport/backport-include/linux/kernel.h @@ -0,0 +1,17 @@ +#ifndef __BACKPORT_KERNEL_H +#define __BACKPORT_KERNEL_H +#include_next <linux/kernel.h> +#include <linux/version.h> + +#if LINUX_VERSION_IS_LESS(4,17,0) +/* + * This returns a constant expression while determining if an argument is + * a constant expression, most importantly without evaluating the argument. + * Glory to Martin Uecker <[email protected]> + */ +#define __is_constexpr(x) \ + (sizeof(int) == sizeof(*(8 ? ((void *)((long)(x) * 0l)) : (int *)8))) + +#endif /* < 4.17.0 */ + +#endif /* __BACKPORT_KERNEL_H */ -- 2.45.1