bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Tue, 8 Feb 2022 20:39:18 +0000 (20:39 +0000)
committerSylvestre Ledru <sylvestre@debian.org>
Tue, 8 Feb 2022 20:39:18 +0000 (20:39 +0000)
commit2d6fe6c563c778f0a858167bace1236089b2a4ff
tree78e78d6141d1ba2488977f8d47602e1e535ce307
parentd6dd0d3679a6c4ee21bb2ac9ce735f2d6c1cecfa
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