A tool for use with clang to analyze #includes in C and C++ source files
Compatible with Clang 18.
Major changes:
<debug/...>
headers... and many smaller improvements
Compatible with Clang 17.
Major changes:
typedef
and using
)namespace xyz = foobar
)typedef struct Foo Bar;
)IWYU pragma: always_keep
, which lets a header announce that it should always be kept wherever included... and many smaller improvements
IWYU pragma: export
for forward-declarationstypeid()
Compatible with Clang 15.
--comment_style
option to control verbosity of 'why' comments--regex
option to select regex dialectbegin_keep
/end_keep
pragmas for protecting ranges of includes or forward-declares-nostdinc++
+ -isystem
)... and many other changes
consteval
expressionsva_list
on AArch64using
declarations based on new Clang designNote the breaking change for exit codes; IWYU now always returns zero by default. See the README or help text for more information about compatibility overrides.
--load/-l
argument for load limiting<time.h>
max_align_t
, ptrdiff_t
, and wchar_t
..
--no_fwd_decls
not to remove required forward declarationsfinal
using
declarations in precompiled headerdirectory
from compilation database if available