Header file inclusion static analysis tools?
A colleague recently revealed to me that a single source file of ours includes over 3,400 headers during compile time. We have over 1,000 translation units that get compiled in a build, resulting in a huge performance penalty over headers that surely aren't all used. Are there any static analysis tools that would be able to shed light on the trees in such a forest, specifically giving us the ability to decide which ones we should work on paring out? UPDATE Found some interesting information on the cost of including a header file (and the types of include guards to optimize its inclusion) here