tool for static C/C++ code analysis
Cppcheck is a command-line tool that tries to detect bugs that your C/C++ compiler doesn't see. It is versatile, and can check non-standard code including various compiler extensions, inline assembly code, etc. Its internal preprocessor can handle includes, macros, and several preprocessor commands. While Cppcheck is highly configurable, you can start using it just by giving it a path to the source code.
It includes checks for: * pointers to out-of-scope auto variables; * assignment of auto variables to an effective parameter of a function; * out-of-bounds errors in arrays and STL; * missing class constructors; * variables not initialized by a constructor; * use of memset, memcpy, etcetera on a class;
- non-virtual destructors for base classes; * operator= not
returning a constant reference to itself; * use of deprecated functions (mktemp, gets, scanf); * exceptions thrown in destructors; * memory leaks in class or function variables; * C-style pointer cast in C++ code; * redundant if; * misuse of the strtol or sprintf functions; * unsigned division or division by zero; * unused functions and struct members; * passing parameters by value; * misuse of signed char variables; * unusual pointer arithmetic (such as "abc" + 'd'); * dereferenced null pointers; * incomplete statements; * misuse of iterators when iterating through a container; * dereferencing of erased iterators; * use of invalidated vector iterators/pointers;
|License||Verified by||Verified on||Notes|
|GPLv3orlater||Debian||20 March 2013|
GPL-3+ On Debian systems the full text of the GNU General Public License can be found in the `/usr/share/common-licenses/GPL-3'file.
|Zlib||Debian||20 March 2013|
|GPLv2orlater||Debian||20 March 2013|
GPL-2+ On Debian systems the full text of the GNU General Public License can be found in the `/usr/share/common-licenses/GPL-2'file.
Leaders and contributors
Resources and communication
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.
The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.