linux: build faulure: error: "__has_attribute" is not defined

From: Tetsuo Handa
Date: Tue Sep 14 2021 - 09:42:30 EST


Hello.

With gcc (GCC) 8.3.1 20190311 (Red Hat 8.3.1-3) on d0ee23f9d78be553 ("tools:
compiler-gcc.h: Guard error attribute use with __has_attribute"), I get

CC /usr/src/linux/tools/objtool/exec-cmd.o
In file included from /usr/src/linux/tools/include/linux/compiler_types.h:36:0,
from /usr/src/linux/tools/include/linux/compiler.h:5,
from exec-cmd.c:2:
/usr/src/linux/tools/include/linux/compiler-gcc.h:19:5: error: "__has_attribute" is not defined [-Werror=undef]
#if __has_attribute(__error__)
^
/usr/src/linux/tools/include/linux/compiler-gcc.h:19:20: error: missing binary operator before token "("
#if __has_attribute(__error__)
^
cc1: all warnings being treated as errors
make[5]: *** [/usr/src/linux/tools/objtool/exec-cmd.o] Error 1
make[4]: *** [/usr/src/linux/tools/objtool/libsubcmd-in.o] Error 2
make[3]: *** [/usr/src/linux/tools/objtool/libsubcmd.a] Error 2
make[2]: *** [objtool] Error 2
make[1]: *** [tools/objtool] Error 2
make: *** [__sub-make] Error 2


On 2021/09/14 15:22, Stephen Rothwell wrote:
> This is known and being addressed.

Can you tell me the commit ?