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 devel:ARM:Factory:Contrib:ILP32/cppcheck && cd $_
- Create Badge
Source Files
Filename | Size | Changed |
---|---|---|
cppcheck-2.8.tar.gz | 0003919580 3.74 MB | |
cppcheck.changes | 0000034398 33.6 KB | |
cppcheck.spec | 0000003765 3.68 KB |
Revision 25 (latest revision is 45)
- update to 2.8: * Lifetime analysis can now track lifetime across user-defined constructors when they are inline and using member initializer list. * SymbolDatabase can now deduce iterator types from how they are specified in the library files. * ValueFlow can evaluate class member functions that return known values. * Improve duplicateValueTenary to not warn when used as an lvalue or when one branch has side effects * Fix variableScope to not warn when variables are used in lambda functions * Fix unassignedVariable warnings when using structured bindings * Fix redundantInitialization warning when variable is used in a lambda * Fix variableScope warnings when using if/while init-statement * Improve lifetime analysis when returning variadic template expressions * Detect more statements with constStatement * Detect variableScope for more types * Improvements to unreadVariable * Detect more instances of C style casts * Warn if the return value of new is discarded * The pre-ValueFlow uninitialized checker now uses a different ID as legacyUninitvar * Extended library format to exclude specific function argument values
Comments 0