diff --git a/releasenotes.txt b/releasenotes.txt index 2e63c9359f1..919e355fb1b 100644 --- a/releasenotes.txt +++ b/releasenotes.txt @@ -1,48 +1,20 @@ -Release Notes for Cppcheck 2.19 + +Release Notes for Cppcheck 2.20 Major bug fixes & crashes: -- Crash in CheckClass::checkConst() -- fuzzing crash (assert) in Token::update_property_info() -- Crash in checkConstVariable() -- Crash in valueFlowLifetimeClassConstructor() -- GUI: scratch pad crash -- Assert failure in getParentValueTypes() -- Crash in simplecpp::Macro::expand() -- crash in Tokenizer::simplifyCPPAttribute() +- New checks: -- Detect zero initialization of unions in which its largest member is not - declared as the first one. Depending on the compiler, there's no guarantee - that the complete union will be zero initialized in such scenarios leading to - potential access of uninitialized memory. -- Added warning when main() throws an exception +- C/C++ support: -- Fixed syntax error for C++23 lambda without parameter clause -- Added support for typeof and __typeof operators +- GUI: -- Fix bug: checks multiple configurations even though user provides defines +- Changed interface: -- some `preprocessorErrorDirective` and `syntaxError` errors got more specific error IDs. -- Removed deprecated platforms unix32-unsigned and unix64-unsigned -- Improve progress value -- Added float bits support in platform configuration -- Fixed --showtime not accounting for addons - -Performance: -- Introduced cache for followAllReferences() calls +- Infrastructure & dependencies: -- Removed deprecated support for builds with Qt5. -- Added make variables `CXXOPTS` and `LDOPTS` to extend existing `CXXFLAGS` and `LDFLAGS`. -- Added make variables `CPPOPTS` to extend existing `CPPFLAGS`. -- `CPPFLAGS` are not longer being passed to the linker command for `cppcheck` and `testrunner`. -- Updated Qt to 6.10.0 (official Windows release only). -- The official Windows binary is now built against Boost 1.89 for increased performance. -- Updated to simplecpp 1.6.2 -- The Visual Studio builds not longer set the `WIN32` define. -- Added `DISALLOW_PROCESS_EXECUTOR` for building without fork(). - -The changes focus heavily on stability (crash fixes), C/C++ compatibility, reducing false positives, and improving performance. +-