A tool to analyze #includes in C and C++ source files

Edit Package include-what-you-use

"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.

Refresh
Refresh
Source Files
Filename Size Changed
fix-shebang.patch 0000000524 524 Bytes
include-what-you-use-0.21.src.tar.gz 0000776165 758 KB
include-what-you-use.changes 0000012503 12.2 KB
include-what-you-use.spec 0000003221 3.15 KB
iwyu_include_picker.patch 0000050682 49.5 KB
Revision 18 (latest revision is 21)
Ana Guerrero's avatar Ana Guerrero (anag+factory) accepted request 1124310 from Aaron Puchert's avatar Aaron Puchert (aaronpuchert) (revision 18)
- Update to version 0.21, update LLVM/Clang to version 17.
  * Improve analysis of type aliases (typedef and using).
  * Improve analysis of namespace aliases (namespace xyz = foobar).
  * Improve support for elaborated forward declarations
    (typedef struct Foo Bar).
  * Improve handling of "autocast" and function return types,
    particularly with complex template types.
  * Add new IWYU pragma: always_keep, which lets a header announce
    that it should always be kept wherever included.
  * Automatically use builtin libc++ mappings if libc++ is the
    active standard library.
  * Improve mappings for libc++ and posix headers.
- Rebase iwyu_include_picker.patch.
Comments 0
openSUSE Build Service is sponsored by