bootstrap-fix-include-next
authorLLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Sat, 7 Nov 2020 14:53:51 +0000 (14:53 +0000)
committerSylvestre Ledru <sylvestre@debian.org>
Sat, 7 Nov 2020 14:53:51 +0000 (14:53 +0000)
commit610b510bb1b5cc4fc5abfc66f8ce1ac8da7fbe0a
tree04795a38373888c53556502fe93a5e3a282f243c
parentcf0842a2e1fa85d69318b1ab6f9938f580bbcc9a
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