https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108968
--- Comment #15 from Andrew Cooper <andrew.cooper3 at citrix dot com> --- Wow that's a lot of junk getting included for the minimal include set I could easily make. It occurs to me only after posting that you're liable to fail at: asm ( ".include \"arch/x86/include/asm/asm-macros.h\"" ); which always trips things up. You can safely drop it if you're just interested in the analyser behaviour.