Cppcheck 1.85

Cppcheck is a static analysis tool for C/C++ code. It doesn't look for syntax errors, but for bugs that a compilation steps would not normally detected. It provides out of bounds checking, checking the code for each class, exception safety, memory leaks checking, warnings for obsolete function usage, invalid usage of STL, and tests for uninitialized variables and unused functions. There are IDE and VCS bindings for Code::Block, CodeLite, Eclipse, gedit, Hudson, Jenkins, Mercurial, Tortoise SVN, Visual Studio.

Tags c c++ software-development static-analysis dynamic-debugging
License GNU GPLv3
State stable

Recent Releases

1.8518 Oct 2018 03:17 minor feature: Cppcheck-1.85 has been released.. General: We are modernizing the Cppcheck code. Support for MSVC 2010 and GCC 4.4 is dropped. You now need a compiler that is at least as good as MSVC 2013 or GCC 4.6.. According to "daca@home" (http://cppcheck.osuosl.org:8000).. There are fewer crashes.. Cppcheck-1.85 is 25 slower than Cppcheck-1.84 Checking improvements: New check: Suggest STL algorithms instead of hard-coded for loops. New check: Warn about ineffective algorithms (same iterator passed). New check: Mismatching iterators used together in operators. Container (STL/Qt/WxWidgets/etc) access out of bounds. Improved the checkers that warns about same/opposite expressions, track variable values better... logical conjunctions. identical/opposite inner expressions. same expressions around operator. etc. Variable scope: warn about references also. Graphical user interface:. read more.
1.6602 Aug 2014 13:48 minor bugfix: New checks include to compare pointers with ' 0' and assigning boolean expression to floating point variables. The AST was much improved, as was the ValueFlow analysis. ValueFlow and AST now used by much more checks, improving checking accuracy and performance. Checking for self assignment now supports more complex expressions. Returning references to literals or references to calculation results is detected. Enhanced support for commutative operators in duplicate expression checking. Improved template/enum parsing. Much improved htmlreport. Generate xml dump of AST/ValueFlow/SymbolDatabase/TokenList if --dump is given.