Problem: The IWYU check in the default CI job can fail with a bare Error 1 and no diagnostics (example). IWYU's clang frontend receives the GCC job's warning flags, so with -Werror -Wpedantic every KJ_TEST reports '__COUNTER__' is a C2y extension and the GCC-only -Wtrailing-whitespace is an unknown option. A file with 19 or more KJ_TESTs reaches clang's error limit, clang gives up before IWYU checks anything, and CMake discards IWYU's output because it contains no include suggestions. test/mp/test/test.cpp has 16 tests now. #335 adds three more and its default job fails this way, and master will hit it too once a few more tests are added.
Solution: Pass -w to IWYU so compiler warning flags no longer affect it, and run it through a small wrapper script that makes CMake print IWYU's output whenever it fails without suggesting includes. The wrapper works around a CMake bug (cmake#28020; an upstream fix in cmake!9210 was approved but never finished) and can be dropped once CMake fixes it.