With 4.26, and at least for VSCode, this is more difficult. 4.26 includes a preinclude that includes a header with 600+ headers. This gets rid of all the usual IWYU errors. It’s going to be difficult spotting some of them.
I’m guessing we should still try do IWYU for 4.26 even if nothing errors?
The preinclude file is called SharedPCH.Engine.ShadowErrors.h. If you rebuild a project the SharedPCH.Engine.ShadowErrors.cpp file is compiled. The cpp file is just a single line that includes the header. It also creates a >1 GB pch file. It also produces on object file.
Your source files have response files that are used when they are compiled. These are in the Build folder and not for Intellisense. In this response file the SharedPCH.Engine.ShadowErrors.h header file is forced included and the pch file is used. For example in the BuildingEscape Build folder there is a OpenDoor.cpp.obj.response file that has this.
So I think you actually don’t need to do IWYU in 4.26? Because that huge file of 600 headers is being included. Not just in Intellisense but compiled with your source files?
Maybe you can shed some light because this is over my head!
That is a precompiled header. Consider it an optimisation that you shouldn’t need to think about that Unreal adds to improve build times and doesn’t change the principles of IWYU.