Cppcheck-2.9
Analysis
- restored check for negative allocation (new[]) and negative VLA sizes from cppcheck 1.87 (LCppC backport)
- replaced hardcoded check for pipe() buffer size by library configuration option (LCppC backport)
- on Windows the callstack is now being written to the output specific via "--exception-handling"
- make it possible to disable the various exception handling parts via the CMake options "NO_UNIX_SIGNAL_HANDLING", "NO_UNIX_BACKTRACE_SUPPORT" and "NO_WINDOWS_SEH"
- detect more redundant calls of std::string::c_str(), std::string::substr(), and unnecessary copies of containers
- Add a
matchfunction to addon similiar toToken::Matchused internally by cppcheck:|for either-or tokens(iestruct|classto match eitherstructorclass)!!to negate a token- It supports the
%any%,%assign%,%comp%,%name%,%op%,%or%,%oror%, and%var%keywords - It supports
(*),{*},[*], and<*>to match links @can be added to bind the token to a name**can be used to match until a token
- Add math functions which can be used in library function definition. This enables evaluation of more math functions in ValueFlow
- Further improve lifetime analysis with
thispointers - Propagate condition values from outer function calls
- Add debug intrinsics
debug_valueflowanddebug_valuetypeto show more detail including source backtraces
Cppcheck Premium
GUI: Additional options to configure the Autosar, Cert C and Misra C++ coding standards
Command line: A --premium option that is used to provide premium options