|
From: | Paul Eggert |
Subject: | Re: glibc and cdefs.h |
Date: | Sun, 24 Jun 2018 08:57:16 -0700 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 |
Bruno Haible wrote:
IMO the only way to reliably use <libc-config.h> would be that after including it, you don't include any system headers any more.
Thanks for checking the port to FreeBSD 11. It appears that the problem is planned to go away in FreeBSD 12 (they've removed the cdefs.h __inline #define in their development version), so I hope this sort of thing is a one-off.
I guess you're suggesting two include files? config.h has to come first, so there'd be another include file (let's say, configlast.h) that would come last. I think something like that would work, though it would complicate the shared-with-glibc files a bit more, and even then it wouldn't be 100% reliable because system include files could define macros that are expanded after configlast.h is included.
If this is the only such problem we run into I'm not sure it's worth the hassle of having multiple includes. If we run into more such problems, we can keep this idea in reserve, though.
In the meantime this change got me to looking, and glibc has updated cdefs.h: it's fixed one portability bug that can let us simplify libc-config.h, has partially fixed another (not good enough, if you ask me), and added another macro. I would like to keep Gnulib cdefs.h in sync with glibc as much as possible, and installed the attached.
0001-libc-config-merge-from-glibc.txt
Description: Text document
[Prev in Thread] | Current Thread | [Next in Thread] |