This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: clang copy of limits.h misses NAME_MAX
- From: Hans-Bernhard BrÃker <HBBroeker at t-online dot de>
- To: cygwin at cygwin dot com
- Date: Fri, 18 Mar 2016 00:49:15 +0100
- Subject: Re: clang copy of limits.h misses NAME_MAX
- Authentication-results: sourceware.org; auth=none
- References: <56EAAD1B dot 4030107 at t-online dot de> <CAFo71_5=CPzstQq8Vd3sDa6yGVDArp9oE2p1eeu-hqQbt95+nA at mail dot gmail dot com> <56EAB2A8 dot 4010400 at gmail dot com> <CAFo71_4e7+aUBduQHYYrrh-FipwJBq7eHkuK57OLDzP9Em1WRA at mail dot gmail dot com> <56EAB8E7 dot 9030507 at t-online dot de>
Am 17.03.2016 um 15:02 schrieb Hans-Bernhard BrÃker:
Am 17.03.2016 um 14:42 schrieb Ismail Donmez:
I am looking at clang 3.7 headers on Linux so this might be not 100%
same on Cygwin but, clang's limits.h has this on top:
Forgot to say this earlier: the cygwin version is the same in this respect.
The actual system <limits.h> would have been
#include_next'ed in turn (line 168 of /usr/lib/gcc/.../limits.h), but
that was disabled by the above hack.
FWIW, I commented out that hack in my local copy, and it works again.
See the relevant part of preprocessor output (manually indented for
clarity):
# 1 "/usr/bin/../lib/clang/3.7.1/include/limits.h" 1 3 4
# 39 "/usr/bin/../lib/clang/3.7.1/include/limits.h" 3 4
# 1 "/usr/lib/gcc/i686-pc-cygwin/5.3.0/include/limits.h" 1 3 4
# 34 "/usr/lib/gcc/i686-pc-cygwin/5.3.0/include/limits.h" 3 4
# 1 "/usr/lib/gcc/i686-pc-cygwin/5.3.0/include/syslimits.h" 1 3 4
# 1 "/usr/include/limits.h" 1 3 4
# 14 "/usr/include/limits.h" 3 4
# 1 "/usr/include/features.h" 1 3 4
# 15 "/usr/include/limits.h" 2 3 4
# 8 "/usr/lib/gcc/i686-pc-cygwin/5.3.0/include/syslimits.h" 2 3 4
# 35 "/usr/lib/gcc/i686-pc-cygwin/5.3.0/include/limits.h" 2 3 4
# 40 "/usr/bin/../lib/clang/3.7.1/include/limits.h" 2 3 4
# 17 "/usr/include/sys/dirent.h" 2 3 4
So that #define _GCC_LIMITS_H_ effectively broke a working GCC limits.h,
causing all the things it defines to be missing. That would be fine if
clang's own version contained replacements for _all_ the system header's
contents. But it doesn't.
To me this looks like whatever the actual problem might have been, that
hack in clang's limits.h was the wrong answer to it.
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple