A tool for static C/C++ code analysis
This program tries to detect bugs that your C/C++ compiler don't see. Cppcheck is versatile. You can check non-standard code that includes various compiler extensions, inline assembly code, etc. Checking covers for example these errors:
* Out of bounds
* Uninitialized member variable 'classname::varname'
* Using 'memfunc' on class
* Using 'memfunc' on struct that contains a 'std::classname'
* Class Base which is inherited by class Derived does not have a virtual destructor
* Memory leak: varname
* Resource leak: varname
* Deallocating a deallocated pointer: varname
* Using 'varname' after it is deallocated / released
* Invalid radix in call to strtol or strtoul. Must be 0 or 2-36
* Overlapping data buffer varname
* Unsigned division. The result will be wrong.
* Unusual pointer arithmetic
See http://cppcheck.wiki.sourceforge.net/ for more details.
- Developed at devel:tools
- Sources inherited from project openSUSE:Factory
-
2
derived packages
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout openSUSE:Factory:zSystems/cppcheck && cd $_
- Create Badge
Source Files
Filename | Size | Changed |
---|---|---|
cppcheck-1.90.tar.bz2 | 0002025457 1.93 MB | |
cppcheck.changes | 0000026790 26.2 KB | |
cppcheck.spec | 0000003690 3.6 KB |
Revision 11 (latest revision is 45)
- Use cmake macros - Update to version 1.90 * alias to vector element invalid after vector is changed * improved value flow analysis for struct members * improved value flow analysis for pointer alias * CERT: Added ENV33-C: Do not call system() * MISRA: added rules 2.7, 3.2, 4.2, 14.2, 21.1, 21.12 - update to version 1.89 * The default warning message format was changed. The new format is similar to GCC. If you want to get warnings in the old format, add --template=cppcheck1 to the command line. * improved value flow analysis for pointer aliases * improved checking for uninitialized variables/structs * better checking of smart pointers * better checking of global variables * Added Cppcheck annotations cppcheck_low(VALUE) and cppcheck_high(VALUE) * shadow variables; warn when argument is shadowed * warn if local reference variable can be const * Added API01-C: Avoid laying out strings in memory directly before sensitive data * Added MSC24-C: Do not use deprecated or obsolescent functions * Added STR11-C: Do not specify the bound of a character array initialized with a string literal * MISRA: added rules 17.2, 18.4, 18.7
Comments 0