Public bug reported: iwyu tries to include stddef.h, fails, and emits a fatal error. But compiling the same file succeeds.
jeff@birdsong:tmp $ cat foo.cc #include <string> std::string hello; jeff@birdsong:tmp $ iwyu -v -std=c++14 foo.cc clang version 5.0.1-2 (tags/RELEASE_501/final) Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/bin Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/5 Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/5.5.0 Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/6 Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/6.5.0 Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/7 Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0 Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/8 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5.5.0 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6.5.0 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/7.4.0 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/8 Selected GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0 Candidate multilib: .;@m64 Selected multilib: .;@m64 clang invocation: "/usr/bin/include-what-you-use" "-cc1" "-triple" "x86_64-pc-linux-gnu" "-fsyntax-only" "-disable-free" "-disable-llvm-verifier" "-discard-value-names" "-main-file-name" "foo.cc" "-mrelocation-model" "static" "-mthread-model" "posix" "-mdisable-fp-elim" "-fmath-errno" "-masm-verbose" "-mconstructor-aliases" "-munwind-tables" "-fuse-init-array" "-target-cpu" "x86-64" "-v" "-dwarf-column-info" "-debugger-tuning=gdb" "-resource-dir" "/usr/lib/clang/5.0.1" "-internal-isystem" "/usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/c++/7.4.0" "-internal-isystem" "/usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/x86_64-linux-gnu/c++/7.4.0" "-internal-isystem" "/usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/x86_64-linux-gnu/c++/7.4.0" "-internal-isystem" "/usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/c++/7.4.0/backward" "-internal-isystem" "/usr/include/clang/5.0.1/include/" "-internal-isystem" "/usr/local/include" "-internal-isystem" "/usr/lib/clang/5.0.1/include" "-internal-externc-isystem" "/usr/include/x86_64-linux-gnu" "-internal-externc-isystem" "/include" "-internal-externc-isystem" "/usr/include" "-std=c++14" "-fdeprecated-macro" "-fdebug-compilation-dir" "/tmp" "-ferror-limit" "19" "-fmessage-length" "105" "-fobjc-runtime=gcc" "-fcxx-exceptions" "-fexceptions" "-fdiagnostics-show-option" "-x" "c++" "foo.cc" clang -cc1 version 5.0.1 based upon LLVM 5.0.1 default target x86_64-pc-linux-gnu ignoring nonexistent directory "/usr/include/clang/5.0.1/include/" ignoring nonexistent directory "/usr/lib/clang/5.0.1/include" ignoring nonexistent directory "/include" ignoring duplicate directory "/usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/x86_64-linux-gnu/c++/7.4.0" #include "..." search starts here: #include <...> search starts here: /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/c++/7.4.0 /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/x86_64-linux-gnu/c++/7.4.0 /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/c++/7.4.0/backward /usr/local/include /usr/include/x86_64-linux-gnu /usr/include End of search list. In file included from foo.cc:1: In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/c++/7.4.0/string:40: In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/char_traits.h:40: In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/c++/7.4.0/bits/postypes.h:40: In file included from /usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../../include/c++/7.4.0/cwchar:44: /usr/include/wchar.h:35:10: fatal error: 'stddef.h' file not found #include <stddef.h> ^~~~~~~~~~ (foo.cc has correct #includes/fwd-decls) 2, jeff@birdsong:tmp $ ProblemType: Bug DistroRelease: Ubuntu 18.04 Package: iwyu 5.0-1 ProcVersionSignature: Ubuntu 4.15.0-47.50-generic 4.15.18 Uname: Linux 4.15.0-47-generic x86_64 ApportVersion: 2.20.9-0ubuntu7.6 Architecture: amd64 CurrentDesktop: i3 Date: Wed Jun 12 16:24:07 2019 EcryptfsInUse: Yes InstallationDate: Installed on 2015-10-23 (1328 days ago) InstallationMedia: Ubuntu 15.04 "Vivid Vervet" - Release amd64 (20150422) SourcePackage: iwyu UpgradeStatus: Upgraded to bionic on 2018-06-14 (363 days ago) ** Affects: iwyu (Ubuntu) Importance: Undecided Status: New ** Tags: amd64 apport-bug bionic ** Bug watch added: github.com/include-what-you-use/include-what-you-use/issues #270 https://github.com/include-what-you-use/include-what-you-use/issues/270 ** Bug watch added: github.com/include-what-you-use/include-what-you-use/issues #679 https://github.com/include-what-you-use/include-what-you-use/issues/679 -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1832599 Title: iwyu tries and fails to include stddef.h To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/iwyu/+bug/1832599/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs