head 1.2; access; symbols pkgsrc-2022Q2:1.1.0.8 pkgsrc-2022Q2-base:1.1 pkgsrc-2022Q1:1.1.0.6 pkgsrc-2022Q1-base:1.1 pkgsrc-2021Q4:1.1.0.4 pkgsrc-2021Q4-base:1.1 pkgsrc-2021Q3:1.1.0.2 pkgsrc-2021Q3-base:1.1; locks; strict; comment @// @; 1.2 date 2022.08.22.07.53.17; author markd; state dead; branches; next 1.1; commitid X2pp7E7MOvwvAQQD; 1.1 date 2021.07.09.10.50.37; author markd; state Exp; branches; next ; commitid Nf6mH5KJvEGJKi0D; desc @@ 1.2 log @cppcheck: update to 2.8 Cppcheck-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 Cppcheck-2.7 * Add support for container views. * Various checker improvements. * Fixed false positives. Cppcheck-2.6 * Color output for diagnostics are added for unix-based platforms. * Added symbolic analysis for ValueFlow. A simple delta is used to compute the difference between two unknown variable. * Rules using the "define" tokenlist can also match #include as well. * Library tags can now use 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. * Library tag can specify a tag for smart pointers that have unique ownership. * Fixed problems when --cppcheck-build-dir is used, that should now work better. * htmlreport can now output author information (using git blame) * More warnings about variables that is not const but can be const @ text @$NetBSD: patch-test_testsymboldatabase.cpp,v 1.1 2021/07/09 10:50:37 markd Exp $ gcc11 build fix --- test/testsymboldatabase.cpp.orig 2020-06-13 16:08:37.000000000 +0000 +++ test/testsymboldatabase.cpp @@@@ -31,6 +31,7 @@@@ #include #include #include +#include #include #include #include @ 1.1 log @cppcheck: fix build with gcc-11 @ text @d1 1 a1 1 $NetBSD$ @