On 10/13/2016 01:23 PM, Paul Eggert wrote:
On 10/13/2016 06:36 AM, Eric Blake wrote:
> That's a bug in s390's system headers. Gnulib should be taught to work
> around it.
Although this bug was reported fixed in glibc 2.20; see
https://sourceware.org/bugzilla/show_bug.cgi?id=16712
the Gnulib manual says the bug is still in glibc 2.24; see
gnulib/doc/posix-headers/stdint.texi. Is the Gnulib manual correct? If
so, why didn't the earlier glibc patch fix the bug?
Anyway, I installed into Gnulib the attached patch, which I hope works
around the bug. I can't easily test this, so please give it a try. And
if you can think of a way to test whether SIZE_MAX has the correct type
on pre-C11 compilers that lack __typeof__, please let me know.
With gcc, -Werror=format flags a mismatch on printf("%zu",SIZE_MAX).
With C++, you can check whether a correct overloaded function is called.
But I don't have any off-hand way of testing it without using compiler
extensions or a different language.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org