This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] riscv: Do not use __has_include__
* Yann Droneaud:
> Hi,
>
> Le mercredi 05 juin 2019 à 15:42 +0200, Florian Weimer a écrit :
>> The user-visible preprocessor construct is called __has_include.
>>
>> 2019-06-05 Florian Weimer <fweimer@redhat.com>
>>
>> * sysdeps/unix/sysv/linux/riscv/flush-icache.c: Do not use
>> internal GCC preprocessor identifier __has_include__.
>>
>> diff --git a/sysdeps/unix/sysv/linux/riscv/flush-icache.c
>> b/sysdeps/unix/sysv/linux/riscv/flush-icache.c
>> index cd5c400977..f2dfcc50d0 100644
>> --- a/sysdeps/unix/sysv/linux/riscv/flush-icache.c
>> +++ b/sysdeps/unix/sysv/linux/riscv/flush-icache.c
>> @@ -21,7 +21,7 @@
>> #include <stdlib.h>
>> #include <atomic.h>
>> #include <sys/cachectl.h>
>> -#if __has_include__ (<asm/syscalls.h>)
>> +#if __has_include (<asm/syscalls.h>)
>
> Candidate for __glibc_has_include() ?
That patch hasn't been reviewed it.
Furthermore, we only need to use __glibc_has_include in public header
files. Inside glibc itself, we can use __has_include directly because
GCC 5 has it. I prefer to avoid unconditionally available GCC features
directly, without abstracing macros, because it reduces cognitive
overhead for the reader.
Thanks,
Florian