A tool to analyze #includes in C and C++ source files
"Include what you use" means this: for every symbol (type, function, variable, or macro) that you use in foo.cc (or foo.cpp), either foo.cc or foo.h should include a .h file that exports the declaration of that symbol. The include-what-you-use program is a tool to analyze includes of source files to find include-what-you-use violations, and suggest fixes for them.
The main goal of include-what-you-use is to remove superfluous includes. It does this both by figuring out what includes are not actually needed for this file (for both .cc and .h files), and replacing includes with forward declarations when possible.
- Developed at devel:tools:compiler
- Sources inherited from project openSUSE:Factory
-
1
derived packages
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout openSUSE:Factory:Rebuild/include-what-you-use && cd $_
- Create Badge
Refresh
Refresh
Source Files
Filename | Size | Changed |
---|---|---|
fix-shebang.patch | 0000000524 524 Bytes | |
include-what-you-use-0.23.src.tar.gz | 0000812613 794 KB | |
include-what-you-use.changes | 0000014305 14 KB | |
include-what-you-use.spec | 0000003533 3.45 KB | |
iwyu_include_picker.patch | 0000034452 33.6 KB |
Latest Revision
Ana Guerrero (anag+factory)
accepted
request 1224340
from
Aaron Puchert (aaronpuchert)
(revision 21)
- Update to version 0.23, update LLVM/Clang to version 19. * Treat types from overridden method signatures as provided by base. * Analyze associated headers more closely with their source file. * Many improvements for template analysis. * Accept -xc++-header. * Improve reporting of binary operators in macros. * Improve heuristics for reporting overloaded functions. * Consider variable definitions uses of extern declarations. * Update public standard library header list for C++23. * Improve mappings for standard C library. * Add new 'clang-warning' formatter. * Default to system core count if -j is omitted. - Rebase iwyu_include_picker.patch and update to GCC 14.
Comments 0