bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Fri, 7 Feb 2025 09:17:16 +0000 (10:17 +0100)
committerMatthias Klose <doko@debian.org>
Fri, 7 Feb 2025 09:17:16 +0000 (10:17 +0100)
commitc25c73aac13d9c92fab9a4f880d2d0c26c1ac8f8
treed8b9c2ac430a538cf3d7a4e944ca4c07d023eda0
parent747ebc3958d94540a68e96aa6e4c00cb32a1795e
bootstrap-fix-include-next

When doing a bootstrap, we use a newly built clang.
When this one is used, if already installed on the system,
we have clang header in two places:
llvm-toolchain-7-7/build-llvm/lib/clang/7.0.0/include/inttypes.h
and
/usr/include/clang/7.0.0/include/inttypes.h

Because clang expects only one of his headers to be available, it uses
include_next to get the glibc (libc6-dev package) header.

However, in the previous example, because we have inttypes.h twice in the
include search path, clang's header will call itself without any effect.
Therefore, it will do include_next until the define from the libc is existing (ex: _INTTYPES_H)

Gbp-Pq: Name bootstrap-fix-include-next.diff
clang/lib/Headers/inttypes.h
clang/lib/Headers/limits.h