Re: [PATCH RESEND] sane-ctype: fix compiler error on Amazon Linux 2
- From
Patrick Steinhardt <ps@pks.im>
- Date
- Jul 11, 2025, 07:56 UTC
- Message-ID
- <aHDDnKx9sK1ctzIR@pks.im>
- In-Reply-To
- <xmqqtt3j69r8.fsf@gitster.g>
On Thu, Jul 10, 2025 at 02:01:15PM -0700, Junio C Hamano wrote:
Show 15 quoted lines
> Patrick Steinhardt <ps@pks.im> writes: > > >> > This error bisect back to 75a044f748 (git-compat-util.h: split out > >> > POSIX-emulating bits, 2025-02-18), where lots of bits got split out of > >> > "git-compat-util.h" into a new "compat/posix.h" header. > > So there was a subtle change in the inclusion order or something, > i.e. we used to include <sane-ctype.h> a lot earlier as part of the > <git-compat-util.h> that tightly controls inclusion order exactly to > avoid this kind of problems, but that has eroded recently? > > In any case, it means that our definitions in <sane-ctype.h> will be > overwritten if we allow system-supplied <ctype.h> included, and this > is an obvious workaround, likely to remain correct as long as their > <ctype.h> is not so broken to allow multiple inclusion.
Yup, exactly. Toon figured out that this is actually neither glibc nor GCC that causes this -- it's OpenSSL that transitively pulls in <ctype.h>. Later versions of OpenSSL seem to not do that anymore.
I can reroll and update the commit message, but am a bit hesitant given that I wasn't able to send out this mail in the first place due to whatever reason :/
Patrick