Symbol management in header files

Carlos O'Donell carlos@redhat.com
Tue Oct 18 16:00:00 GMT 2016


On 10/18/2016 11:57 AM, Joseph Myers wrote:
> On Tue, 18 Oct 2016, Florian Weimer wrote:
> 
>> However, TS 18661-1 added “iszero” to <math.h>, and this causes some build
>> failures.  Apparently, the main problem here is that it is a macro, which
>> means it is not subject to scoping (which helps C++ in particular to cope with
>> definitions of nextup/nextdown/fsub/canonincalize).
> 
> I think some build failures are inevitable with new features in headers; 
> applications that use _GNU_SOURCE simply need to be updated, just as 
> applications that defined their own getline function but didn't define 
> _GNU_SOURCE needed updating when getline was added to POSIX and so to the 
> default glibc API, and just as applications routinely need updating when 
> new GCC versions add new diagnostics or increase the default C and C++ 
> standards used.

Is _GNU_SOURCE too big of a feature macro to be useful anymore?

-- 
Cheers,
Carlos.



More information about the Libc-alpha mailing list