Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Adds the include-what-you-use tool. This is another lint step that maeks
sure only appropriate headers are present, and that all required headers
are present (even if things are already compiling because those headers
are in some transitive #include). This makes things faster to compile
and also safer since you can't remove an include that doesn't seem like
it has anything to do with anything and suddenly break stuff.
Unfortunately, this also doesn't work because of a clang bug that prevents code that uses ranges from compiling in most cases. This breaks iwyu because iwyu depends on clang and llvm for semantic analysis.
Whenever upstream fixes that we can add iwyu.