[PATCH linux-next] tools: compiler-gcc.h::Keep compatible with non-clang compilers.

From: cgel . zte
Date: Fri Dec 31 2021 - 05:08:49 EST


From: xu xin <xu.xin16@xxxxxxxxxx>

When HOSTC = gcc (GCC) 4.8.5, there is an error occurring as follows:
error: Undefined __has_attribute.

This problem is introduced by commit d0ee23f9d78be ("tools:
compiler-gcc.h: Guard error attribute use with __has_attribute").

To solve it, this patch is given to keep the comatibility.

Reported-by: Zeal Robot <zealci@xxxxxxxxxx>
Co-developed-by: wangyong <wang.yong12@xxxxxxxxxx>
Signed-off-by: xu xin <xu.xin16@xxxxxxxxxx>
---
tools/include/linux/compiler-gcc.h | 5 +++++
1 file changed, 5 insertions(+)

diff --git a/tools/include/linux/compiler-gcc.h b/tools/include/linux/compiler-gcc.h
index 8816f06fc6c7..7da593d3cb91 100644
--- a/tools/include/linux/compiler-gcc.h
+++ b/tools/include/linux/compiler-gcc.h
@@ -16,6 +16,11 @@
# define __fallthrough __attribute__ ((fallthrough))
#endif

+
+#ifndef __has_attribute
+# define __has_attribute(x) 0 /* Compatibility with non-clang compilers. */
+#endif
+
#if __has_attribute(__error__)
# define __compiletime_error(message) __attribute__((error(message)))
#endif
--
2.25.1