https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110558
--- Comment #2 from provisorisch at online dot de --- Not quite, but you will run into bug 80753 if the header file does not exist: The second #include will not cause an error in that case. The first #include however will cause an error as expected - presumably only because the first __has_include ends up with a different file name.