C++ Coding Standards Part 0: Automated Code Analysis
Automated analysis is the main advantage to working with a modern statically typed compiled language like C++. Code analysis tools can inform us when we have implemented an operator overload with a non-canonical form, when we should have made a method const, or when the scope of a variable can be reduced.
In short, these tools catch the most commonly agreed best practice mistakes we are making and help educate us to write better code. We will be fully utilizing these tools.
All reasonable warning levels should be enabled. Some warning levels, such as GCC's
-Weffc++ warning mode can be too noisy and will not be recommended for normal compilation.