cppcheck/lib
Rikard Falkeborn 2a17e624d9 Overlapping sprintf, improve handling of casts (#1945)
* Overlapping sprintf, improve handling of casts

If there is a cast of the argument buffer, cppcheck would print out the
expression including the cast, which looks a bit strange to talk about

    Variable (char*)buf is used as...

Instead, only print the variable name without the cast.

Also, handle arbitrary many casts (the previous code only handled one).
Multiple casts of the input arguments is probably an unusual case in
real code, but can perhaps occur if macros are used.

* Fix printing of variable

... and add a test.

* Simplify testcase
2019-07-05 12:27:39 +02:00
..
CMakeLists.txt CMake: Find header in externals, e.g. externals/picojson.h 2019-04-22 18:52:02 +02:00
analyzerinfo.cpp Update Copyright 2019-06-29 07:49:14 +02:00
analyzerinfo.h Updated copyright year 2018-10-13 18:20:31 +02:00
astutils.cpp Fix false positive 9167 (#1904) 2019-07-03 08:17:06 +02:00
astutils.h Fix false positive 9167 (#1904) 2019-07-03 08:17:06 +02:00
check.cpp Updated copyright year 2018-10-13 18:20:31 +02:00
check.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
check64bit.cpp Rename _tokenizer, _settings, _errorLogger 2018-06-16 16:10:28 +02:00
check64bit.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkassert.cpp Update copyright year 2019-02-09 07:24:06 +01:00
checkassert.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkautovariables.cpp Fix FP with non-local variable referencing a non-local variable (#1864) 2019-06-02 10:21:26 +02:00
checkautovariables.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkbool.cpp Update Copyright 2019-06-29 07:49:14 +02:00
checkbool.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkboost.cpp Rename _tokenizer, _settings, _errorLogger 2018-06-16 16:10:28 +02:00
checkboost.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkbufferoverrun.cpp Fix issue 6821: New check: access heap/stack data using address of variable 2019-05-31 12:24:31 +02:00
checkbufferoverrun.h Fix Cppcheck warnings 2019-06-15 13:01:45 +02:00
checkclass.cpp Update symbol database such that the override keyword implies that the function is also virtual (#1907) 2019-07-04 12:32:32 +02:00
checkclass.h Update symbol database such that the override keyword implies that the function is also virtual (#1907) 2019-07-04 12:32:32 +02:00
checkcondition.cpp Fixed #7464 (warn about opposite if and else-if conditions) 2019-06-30 23:26:49 +02:00
checkcondition.h Fixed #7464 (warn about opposite if and else-if conditions) 2019-06-30 23:26:49 +02:00
checkexceptionsafety.cpp Refactoring; Use range for loops 2018-07-14 09:49:03 +02:00
checkexceptionsafety.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkfunctions.cpp Update Copyright 2019-06-29 07:49:14 +02:00
checkfunctions.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkinternal.cpp CheckInternal: Extend redundant null pointer check before Token::Match() (#1789) 2019-04-06 07:44:44 +02:00
checkinternal.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkio.cpp Set wchar_t type (#1807) 2019-05-01 16:34:28 +02:00
checkio.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkleakautovar.cpp Fix #9047 (c-style casts before malloc) (#1930) 2019-07-03 08:39:44 +02:00
checkleakautovar.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkmemoryleak.cpp Fixed #8848 (False positive memory leak if locally defined type returns a new pointer) 2019-04-22 17:37:41 +02:00
checkmemoryleak.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checknullpointer.cpp Improve diagnostics with null smart pointers (#1805) 2019-04-26 11:30:09 +02:00
checknullpointer.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkother.cpp Update symbol database such that the override keyword implies that the function is also virtual (#1907) 2019-07-04 12:32:32 +02:00
checkother.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkpostfixoperator.cpp Refactoring: Use ranged for loop 2018-07-13 16:50:12 +02:00
checkpostfixoperator.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checksizeof.cpp Update Copyright 2019-06-29 07:49:14 +02:00
checksizeof.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkstl.cpp CheckStl: Modernize the recommendations. string::starts_with is more intuitive than string::compare 2019-05-05 10:35:44 +02:00
checkstl.h Fix Cppcheck warnings 2019-06-15 13:05:17 +02:00
checkstring.cpp Overlapping sprintf, improve handling of casts (#1945) 2019-07-05 12:27:39 +02:00
checkstring.h Checkstring fixes (#1783) 2019-04-06 06:54:38 +02:00
checktype.cpp Set wchar_t type (#1807) 2019-05-01 16:34:28 +02:00
checktype.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkuninitvar.cpp uninitStructMember: Fixed FP shown in daca@home 2019-06-02 20:19:53 +02:00
checkuninitvar.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkunusedfunctions.cpp Fixed #8580 (False positive: unused function (lambda)) 2019-04-27 17:17:51 +02:00
checkunusedfunctions.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkunusedvar.cpp Unused struct member: Fix FPs seen in daca@home results for template structs 2019-03-06 20:51:48 +01:00
checkunusedvar.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
checkvaarg.cpp Update copyright year 2019-02-09 07:24:06 +01:00
checkvaarg.h Disable all simplified checks 2019-03-16 09:17:50 +01:00
config.h sync (#1835) 2019-05-17 09:31:41 +02:00
cppcheck.cpp Fixed Cppcheck warning; ::AddonInfo::getFullPath can be static 2019-06-29 07:59:55 +02:00
cppcheck.h test/cli: execute addon 2019-04-14 15:00:03 +02:00
cppcheck.natvis Fixed Visual Studio Natvis file after recent refactoring (#1299) 2018-07-09 08:27:26 +02:00
cppcheck.vcxproj Add ctu sources to VS projects 2018-12-27 22:11:40 +01:00
cppcheck.vcxproj.filters Add ctu sources to VS projects 2018-12-27 22:11:40 +01:00
ctu.cpp Correct Zero/Null as pointer constant (#1938) 2019-06-30 21:39:22 +02:00
ctu.h CheckBufferOverrun: Add CTU analysis 2019-03-23 08:36:10 +01:00
errorlogger.cpp Add missing line feed to the generated plist output (#1792) 2019-04-08 18:09:18 +02:00
errorlogger.h Suppress Code semantic and syntax warnings (#1936) 2019-06-30 21:43:25 +02:00
importproject.cpp --addon: Use json for addon output 2019-06-24 19:29:43 +02:00
importproject.h analyzing one vs config (first debug config that matches platform) 2019-04-13 20:01:40 +02:00
lib.pri CTU: Refactoring 2018-12-25 21:11:23 +01:00
library.cpp Add check for unnecessary search before insertion 2019-05-02 11:04:23 +02:00
library.h Update Copyright 2019-06-29 07:49:14 +02:00
matchcompiler.h Update copyright year to 2007-2016. 2016-01-01 15:34:45 +02:00
mathlib.cpp Correct Zero/Null as pointer constant (#1938) 2019-06-30 21:39:22 +02:00
mathlib.h Update copyright year 2019-02-09 07:24:06 +01:00
path.cpp Fixed #error in self check when __CPPCHECK__ is defined 2019-04-30 20:31:46 +02:00
path.h Update copyright year 2019-02-09 07:24:06 +01:00
pathmatch.cpp Updated copyright year 2018-10-13 18:20:31 +02:00
pathmatch.h Updated copyright year 2018-10-13 18:20:31 +02:00
pcrerules.pri
platform.cpp Updated copyright year 2018-03-31 20:59:09 +02:00
platform.h Fix Cppcheck error message 2018-10-20 15:28:34 +02:00
preprocessor.cpp Add missing include 2019-05-09 06:55:36 +02:00
preprocessor.h Renamed private member file0 2018-06-17 09:06:16 +02:00
settings.cpp Only check unused templates if that is configured 2019-05-05 14:40:30 +02:00
settings.h test/cli: execute addon 2019-04-14 15:00:03 +02:00
standards.h Update Copyright 2019-06-29 07:49:14 +02:00
suppressions.cpp Fix Cppcheck warning: Suppressions::dump can be const 2019-06-29 07:53:32 +02:00
suppressions.h Fix Cppcheck warning: Suppressions::dump can be const 2019-06-29 07:53:32 +02:00
symboldatabase.cpp Update symbol database such that the override keyword implies that the function is also virtual (#1907) 2019-07-04 12:32:32 +02:00
symboldatabase.h Update symbol database such that the override keyword implies that the function is also virtual (#1907) 2019-07-04 12:32:32 +02:00
templatesimplifier.cpp Fixed #9193 (functionStatic false positive (inconclusive)) (#1943) 2019-07-02 11:40:57 +02:00
templatesimplifier.h Wrong argument name used in documentation (#1937) 2019-06-30 15:41:53 +02:00
timer.cpp Rename private member variables 2018-06-17 17:20:16 +02:00
timer.h Update copyright year 2019-02-09 07:24:06 +01:00
token.cpp Revert "Calculate token scopes in advance rather than as the tokenlist is iterated (#1882)" 2019-06-30 09:12:18 +02:00
token.h Suppress Code semantic and syntax warnings (#1936) 2019-06-30 21:43:25 +02:00
tokenize.cpp Fix syntax error with lambda captures (#1954) 2019-07-05 12:26:01 +02:00
tokenize.h Revert "Calculate token scopes in advance rather than as the tokenlist is iterated (#1882)" 2019-06-30 09:12:18 +02:00
tokenlist.cpp Cleanup some const_cast of Token* (#1886) 2019-06-16 10:09:38 +02:00
tokenlist.h Update Copyright 2019-06-29 07:49:14 +02:00
utils.h Revert "Refactoring endsWith utility function" 2018-07-25 16:14:43 +02:00
valueflow.cpp Update symbol database such that the override keyword implies that the function is also virtual (#1907) 2019-07-04 12:32:32 +02:00
valueflow.h Suppress Code semantic and syntax warnings (#1936) 2019-06-30 21:43:25 +02:00
version.h Set version to 1.88.99/1.89 dev 2019-07-02 20:59:52 +02:00
version.rc