Release Notes for Cppcheck 2.19
Major bug fixes & crashes:
New checks:
Release Notes for Cppcheck 2.18
Changed interface:
* may need to use ** instead if it is intended to match path separators. More details can be seen in the manual.Deprecations:
Release Notes for Cppcheck 2.17
New checks:
The Cppcheck manual has been recommending that users that wants to run MISRA C provide a rule texts file.
You need to download and use the files provided by MISRA:
https://gitlab.com/MISRA/MISRA-C/MISRA-C-2012/tools
See chapter 3.2.2 here: https://misra.org.uk/terms-of-sale/
You shall have no right to copy, adapt, reverse engineer, decompile, disassemble or modify the Documents or any of them in whole or in part.... read more
Release Notes for Cppcheck 2.16.0
Improved checking:
Changed interface:
Deprecations:
Release Notes for Cppcheck 2.15
New checks:
GUI:
Changed interface:
--cpp-header-probe (and --no-cpp-header-probe) to probe headers and extension-less files for Emacs marker (see https://trac.cppcheck.net/ticket/10692 for more details)... read moreFixes:
Release Notes for Cppcheck 2.14.0
Summary:
New checks:
GUI:
-Make it possible to suppress warnings in all files in a folder... read more
Release Notes for Cppcheck 2.13
New checks:
Changed interface:
New checks:
Improved checking:
New checks:
Improved checking:
Cppcheck has been added in the Gartner "Application Security Testing" Peer Insights listing.
The Gartner Peer Insights lists various tools and show reviews. The reviews are verified by Gartner. A user that use the tool professionally can write a review.
Please help us getting reviews. If you work at a company that uses Cppcheck then please review us. Both open source Cppcheck and Cppcheck Premium users are welcome to review. The link below takes you to the review form:
https://gtnr.io/J81zesfzL
Analysis:
CLI:
match function to addon similiar to Token::Match used internally by cppcheck:| for either-or tokens(ie struct|class to match either struct or class)!! to negate a token%any%, %assign%, %comp%, %name%, %op%, %or%, %oror%, and %var% keywords(*), {*}, [*], and <*> to match links@ can be added to bind the token to a name** can be used to match until a tokenthis pointersdebug_valueflow and debug_valuetype to show more detail including source backtraces... read moreToday, Cppcheck-2.7 is released
Add support for container views. The view attribute has been added to the <container> library tag to specify the class is a view. The lifetime analysis has been updated to use this new attribute to find dangling lifetime containers.
Various checker improvements.
Fixed false positives.
Today a tool with the name Cppcheck Premium is launched.
It integrates the open source Cppcheck tool and a premium addon into a package.
You will get:
New checks in core cppcheck:
return std::move(local)Various improvements:
<function> tags can now use <container> tag, so free functions that accept containers such as std::size, std::empty, std::begin, std::end, etc. can specify the yields or action for the container.<smart-pointer> tag can specify a <unique> tag for smart pointers that have unique ownership. Cppcheck now warns about dangling references to smart pointers with unique ownership.A new Cppcheck release
Parser:
Core:
Changed output:
There has been questions before about how well Cppcheck handles the latest C++ standard language features. And unfortunately I feel I could not answer that very well.
Lately I have been investigating C++20 (and below) support. Cppcheck-2.4.1 has pretty good support overall for C++17 (and lower) and it also handle a few C++20 features. We have improved the parser and I now feel that latest Cppcheck development build support all C++17 language features and a couple of additional C++20 features. The improved parser will be available in Cppcheck-2.5.... read more
We have made a fix release with this little fix:
The windows installer was fixed, there was a missing file for the Misra addon.
Fixed false negatives and false positives
New check; Detect one definition rule violations
Various improvements:
Improved C++ parser
Fixed false positives
Improved configuration in library files
Added several Misra rules:
Added platforms:
New checks:
Removed 'operator=' check that ensures reference to self is returned. That is not about safety.
Improved parser
Clang parser
I have launched one more Kickstarter project. Its goal is to improve the Clang import feature in Cppcheck.
There are two tasks:
Link to project:
https://www.kickstarter.com/projects/3300446/cppcheck-clang-import