Hi, Ludovic Courtès <ludovic.cour...@inria.fr> skribis:
> ‘clangd’ fails to find <stddef.h>, as shown here: > > $ printf '#include <stdlib.h>\nint foo (int x) {return x+2; }' > t.c > $ guix shell -C -D hello --with-c-toolchain=hello=clang-toolchain clang:extra > strace > guix shell: warning: transformation 'with-c-toolchain' had no effect on > strace@5.8 > guix shell: warning: transformation 'with-c-toolchain' had no effect on > clang@12.0.1 > [env]$ clang -c t.c > [env]$ clangd --check=t.c > I[10:02:40.349] clangd version 12.0.1 > I[10:02:40.349] PID: 3 > I[10:02:40.349] Working directory: /home/ludo/tmp/clangd-bug > I[10:02:40.349] argv[0]: clangd > I[10:02:40.349] argv[1]: --check=t.c > I[10:02:40.349] Entering check mode (no LSP server) > I[10:02:40.349] Testing on source file /home/ludo/tmp/clangd-bug/t.c > I[10:02:40.349] Loading compilation database... > I[10:02:40.349] Failed to find compilation database for > /home/ludo/tmp/clangd-bug/t.c > I[10:02:40.349] Generic fallback command is: > /gnu/store/nk5lp7wisgdlvds5camvcchgh19hnn23-clang-12.0.1/bin/clang > /home/ludo/tmp/clangd-bug/t.c -fsyntax-only > -resource-dir=/gnu/store/hnw2acjhfpj5l2zrazj5fvq5ksy002f1-clang-12.0.1-extra/lib/clang/12.0.1 > I[10:02:40.350] Parsing command... > I[10:02:40.352] internal (cc1) args are: -cc1 -triple > x86_64-unknown-linux-gnu -fsyntax-only -disable-free -disable-llvm-verifier > -discard-value-names -main-file-name t.c -mrelocation-model static > -mframe-pointer=all -fmath-errno -fno-rounding-math -mconstructor-aliases > -munwind-tables -target-cpu x86-64 -tune-cpu generic > -fno-split-dwarf-inlining -debugger-tuning=gdb -resource-dir > /gnu/store/hnw2acjhfpj5l2zrazj5fvq5ksy002f1-clang-12.0.1-extra/lib/clang/12.0.1 > -c-isystem /gnu/store/xl7wammzljnp0rg496n96h5m69y25isg-profile/include > -cxx-isystem /gnu/store/xl7wammzljnp0rg496n96h5m69y25isg-profile/include > -internal-isystem /usr/local/include -internal-isystem > /gnu/store/hnw2acjhfpj5l2zrazj5fvq5ksy002f1-clang-12.0.1-extra/lib/clang/12.0.1/include > -internal-externc-isystem > /gnu/store/fa6wj5bxkj5ll1d7292a70knmyl7a0cr-glibc-2.31/include > -fdebug-compilation-dir /home/ludo/tmp/clangd-bug -ferror-limit 19 > -fgnuc-version=4.2.1 -faddrsig -x c /home/ludo/tmp/clangd-bug/t.c > I[10:02:40.352] Building preamble... > I[10:02:40.368] Indexing headers... > E[10:02:40.382] [pp_file_not_found] Line 1: in included file: 'stddef.h' file > not found > I[10:02:40.382] Building AST... > I[10:02:40.386] Indexing AST... > I[10:02:40.386] Testing features at each token (may be slow in large files) > I[10:02:40.387] All checks completed, 1 errors Fixed with 35ea49daf6cdef5bf6156dd90add77cede364a4b (thanks, Greg!). Ludo’.