Re: [PATCH] include/linux/compiler*.h: make compiler-*.h mutually exclusive

From: Miguel Ojeda
Date: Sun Aug 26 2018 - 13:37:53 EST


Hi all,

On Fri, Aug 24, 2018 at 1:31 AM, Joe Perches <joe@xxxxxxxxxxx> wrote:
> On Thu, 2018-08-23 at 16:12 -0700, Nick Desaulniers wrote:
>> On Thu, Aug 23, 2018 at 2:19 PM Joe Perches <joe@xxxxxxxxxxx> wrote:
>> >
>> > On Thu, 2018-08-23 at 14:03 -0700, Nick Desaulniers wrote:
>> > > Not this case; it's how we get gnu89 semantics for `extern inline` is
>> > > not compiler specific (therefor should not go in a compiler specific
>> > > header).
>> >
>> > It's not possible to know that compilers support what
>> > __attribute__((<foo>)) and at what version that support
>> > exists unless it is specified somewhere.
>>
>> __has_attribute:
>> https://clang.llvm.org/docs/LanguageExtensions.html#has-attribute
>>
>> The release notes of GCC-5 mention __has_attribute.
>> https://gcc.gnu.org/gcc-5/changes.html
>
> So not available in the now minimum supported gcc 4.6?
>

We can workaround that until we have 5 as the minimum. I have tried
and the result is quite nice.

Sending the patch in a few moments -- compile-testing for a while
allmodconfig on both 4.6 and 8.2...

Cheers,
Miguel