Original author(s) Written in C++ | Development status Active | |
Initial release May 8, 2007; 9 years ago (2007-05-08) Stable release 1.77 / December 31, 2016; 2 months ago (2016-12-31) Repository github.com/danmar/cppcheck.git |
Cppcheck is a static code analysis tool for the C and C++ programming languages. It is a versatile tool that can check non-standard code. The creator and lead developer is Daniel Marjamäki.
Contents
Cppcheck is free software under the GNU General Public License.
Features
Cppcheck supports a wide variety of static checks that may not be covered by the compiler itself. These checks are static analysis checks that can be performed at a source code level. The program is directed towards static analysis checks that are rigorous, rather than heuristic in nature.
Some of the checks that are supported include:
As with many analysis programs, there are many unusual cases of programming idioms which may be acceptable in particular target cases, or outside of the programmer's scope for source code correction. A study conducted in March 2009 identified several areas where false positives were found by cppcheck, but did not specify the program version examined. Cppcheck has been identified for use in systems such as CERNs 4DSOFT meta analysis package, for code verification in high energy particle detector readout devices, system monitoring software for radio telescopes as well as in error analysis of large projects, such as OpenOffice.org and the Debian archive.
Development
The project is actively under development and is actively maintained in different distributions. It has found valid bugs in a number of popular projects such as the Linux kernel and MPlayer.
Plugins
Plugins for the following IDEs exist
Visual Studio integration
The commercial third-party Add-In Visual Lint by British company Riverblade can be used to integrate CppCheck in Visual Studio. There is also an open source plugin cppcheck-vs-addin available. It is also possible to add Cppcheck as an external tool.