Paul Fultz II
be6daa94bb
Fix 11053: Integer division by zero in calculate.h ( #4092 )
...
* Fix 11053: Integer division by zero in calculate.h
* Format
2022-05-09 20:27:32 +02:00
Paul Fultz II
69f09da63e
Fix 11044: FP knownConditionTrueFalse after early return ( #4091 )
...
* Fix 11044: FP knownConditionTrueFalse after early return
* Format
2022-05-09 20:26:52 +02:00
Oliver Stöneberg
c71033548f
fixed some clang-tidy warnings ( #3080 )
2022-05-08 20:42:06 +02:00
Daniel Marjamäki
eb9c4b4aed
Tokenizer: Fix handling of __attribute__ for overloaded operator function
2022-05-08 18:19:52 +02:00
Daniel Marjamäki
fab55287f7
Tokenizer: improved handling of __asm__ in function declaration
2022-05-08 16:03:09 +02:00
Daniel Marjamäki
449d351095
Revert "Tokenizer: handle when __asm__ directive is provided for function"
...
This reverts commit f25b8cf662
.
2022-05-07 21:53:10 +02:00
Daniel Marjamäki
f25b8cf662
Tokenizer: handle when __asm__ directive is provided for function
2022-05-07 19:40:03 +02:00
chrchr-github
612d7be85a
Fix #11045 syntaxError with unknown macros and using namespace ( #4086 )
2022-05-05 19:47:56 +02:00
Paul Fultz II
843f7893d6
Fix 11040: FP nullPointer after loop ( #4085 )
2022-05-05 06:55:02 +02:00
Paul Fultz II
8d16ee946c
Fix 11027: False positive: containerOutOfBounds from condition in assert ( #4084 )
...
* Fix 11027: False positive: containerOutOfBounds from condition in assert
* Format
2022-05-05 06:54:44 +02:00
Paul Fultz II
5afd6880c3
Fix 11028: False positive: invalidContainer ( #4083 )
...
* Fix 11028: False positive: invalidContainer
* Format
2022-05-05 06:54:36 +02:00
chrchr-github
adba751217
Fix #11018 FP uninitvar with redundant pointer op ( #4082 )
...
* Skip redundant pointer op
* Fix #11018 FP uninitvar with redundant pointer op
* Format
2022-05-05 06:54:27 +02:00
chrchr-github
aebc080c0f
Fix #11041 FN constVariable with array of pointers [regression] ( #4080 )
...
* Fix #11041 FN constVariable with array of pointers [regression]
* Use std::vector for deterministic order of results, use helper variables
2022-05-05 06:54:03 +02:00
chrchr-github
9a379925cd
FIx FN shadowVariable in static function ( #4079 )
...
* FIx FN shadowVariable in static function
* Use functionOf
2022-05-04 17:56:16 +02:00
chrchr-github
e2069dd1b9
Fix #10650 FN knownConditionTrueFalse with const int value ( #4078 )
2022-05-04 14:25:00 +02:00
Paul Fultz II
496b45f27b
Fix 11009: FP uninitvar ( #4076 )
...
* Fix 11009: FP uninitvar
* Format
2022-05-04 05:59:01 +02:00
chrchr-github
1e40a2e73e
Fix #5210 C-style pointer casting not detected for casts to ** ( #4075 )
2022-05-03 20:15:42 +02:00
chrchr-github
509e42afd4
Fix #11034 FN duplicateCondition with struct member ( #4074 )
...
* Fix #11034 FN duplicateCondition with struct member
* Update testcondition.cpp
2022-05-03 19:57:30 +02:00
chrchr-github
51b4cf592b
Fix #11029 unknownMacro reported with noexcept (regression) ( #4073 )
2022-05-03 13:37:14 +02:00
Paul Fultz II
3edb10a006
Fix 11024: FP returnDanglingLifetime with c_str() passed to constructor ( #4072 )
2022-05-03 11:42:32 +02:00
chrchr-github
8ce0faf723
Fix #10427 Regression: selfInitialization ( #4070 )
2022-05-02 16:49:13 +02:00
chrchr-github
67f4fe575f
Fix #10978 syntaxError with attribute for function pointer ( #4069 )
2022-05-02 15:05:48 +02:00
chrchr-github
e9a0d7979e
Fix #11014 FN redundantPointerOp / remove simplifyMulAndParens() ( #4062 )
2022-05-01 15:46:07 +02:00
Paul Fultz II
3e686103ae
Fix 10984: False positive: invalidContainer when explictly capturing vector by reference ( #4064 )
2022-04-30 09:36:28 +02:00
Paul Fultz II
4e7125554f
Fix 8358: FP: Condition '(number*0)!=0' is always false ( #4065 )
2022-04-30 09:35:51 +02:00
Paul Fultz II
9fa5c4e201
Fix 11011: FP returnDanglingLifetime with non-const reference argument [inconclusive] ( #4066 )
...
* Fix 11011: FP returnDanglingLifetime with non-const reference argument [inconclusive]
* Format
2022-04-30 08:23:58 +02:00
chrchr-github
e7afb3045b
Fix FP redundantPointerOp with macro ( #4061 )
...
* Fix #10991 FN: Redundant pointer operation
* Fix FP redundantPointerOp
* Check for LValue
* Fix FP redundantPointerOp with macro
* Format
2022-04-29 13:23:50 +02:00
chrchr-github
0467ab1339
Fix #7923 FN memleak with cfg ( #4060 )
2022-04-28 19:50:16 +02:00
chrchr-github
8dbe6994a2
Fix FP redundantPointerOp ( #4058 )
...
* Fix #10991 FN: Redundant pointer operation
* Fix FP redundantPointerOp
* Check for LValue
2022-04-28 15:25:31 +02:00
chrchr-github
3d3885d151
Add test for #9838 / Remove noisy assert ( #4059 )
...
* Add test for #9838
* Remove noisy assert
2022-04-28 15:24:54 +02:00
Paul Fultz II
aafd1e10be
Fix 11006: FP uninitvar with unknown constant ( #4056 )
2022-04-28 10:48:37 +02:00
chrchr-github
7cedf3e0e5
Partial fix for #10983 False positive: returnTempReference with trailing return type ( #4055 )
2022-04-27 20:11:32 +02:00
chrchr-github
034140e7e1
Fix #10991 FN: Redundant pointer operation ( #4054 )
2022-04-27 19:52:56 +02:00
Paul Fultz II
3e3abecba0
Rename old uninitvar ID to use legacyUninitvar ( #4043 )
2022-04-27 17:37:37 +02:00
chrchr-github
bcbc29affb
Fix #10526 FP: negativeIndex if function call is made after index check ( #4052 )
...
* Fix #10526 FP: negativeIndex if function call is made after index check
* Improve container check
* Format
2022-04-27 14:08:44 +02:00
Paul Fultz II
474c7fe5cc
Fix 10953: False positive: Possible null pointer dereference when calling derived function ( #4044 )
2022-04-26 17:57:06 +02:00
Falital
e8a96932e1
Don't add suppressed errors to plist output ( #4038 )
2022-04-26 17:39:39 +02:00
chrchr-github
0dc3cb6eba
Fix #11007 FP nullPointerRedundantCheck with static function pointer ( #4051 )
2022-04-26 17:25:56 +02:00
chrchr-github
6b5df68677
Fix #11001 syntaxError for valid C code sizeof(enum ...) ( #4045 )
2022-04-26 07:22:53 +02:00
chrchr-github
961ecfbe33
Fix #11003 cppcheckError with nested template arguments ( #4049 )
2022-04-25 22:23:06 +02:00
chrchr-github
1bc0317719
Fix #11002 FP uninitStructMember with extra parentheses ( #4047 )
2022-04-25 22:22:35 +02:00
chrchr-github
b4df064875
Fix #11004 FP AssignmentIntegerToAddress with volatile ( #4046 )
2022-04-25 22:00:37 +02:00
chrchr-github
81f9b9b2b7
Fix FP with ptr to ptr const ( #4050 )
2022-04-25 21:45:11 +02:00
Paul Fultz II
6b9ac6f7a8
Warn when incrementing uninitialized value ( #4042 )
...
* Warn when incrementing uninitialized value
* Format
2022-04-24 09:56:58 +02:00
Paul Fultz II
5d5562266d
ValueFlow: Assume constant is nonzero when its negated ( #4041 )
...
* ValueFlow: Assume constant is nonzero when its negated
* Format
* Format
2022-04-23 06:19:07 +02:00
Paul Fultz II
4eed29502c
ValueFlow: Set values to parameters to longjmp and setjmp ( #4040 )
...
* ValueFlow: Set values to parameters to longjmp and setjmp
* Format
2022-04-23 06:18:55 +02:00
Oliver Stöneberg
fdca61add9
aligned build options of Visual Studio project configurations and added them to CMake ( #4020 )
2022-04-21 21:28:29 +02:00
Paul Fultz II
3feecc51d6
Fix 10988: FP: Regression, uninitvar ( #4037 )
2022-04-21 19:29:38 +02:00
Oliver Stöneberg
3feb496197
cppcheck.vcxproj: fixed yet another invalid standard setting in `Debug-PCRE` configuration for `cppcheck` causing build failures with SmallVector ( #4031 )
2022-04-21 09:21:59 +02:00
Oliver Stöneberg
7c9b9a65b1
cppcheck.vcxproj: fixed invalid standard setting in `Debug-PCRE` configuration for `cppcheck` causing build failures with SmallVector ( #4030 )
2022-04-20 20:29:43 +02:00
Oliver Stöneberg
36ef4dc5b8
added support for Qt6 ( #3930 )
2022-04-15 18:49:24 +02:00
Oliver Stöneberg
8f728cb4b6
added (partial) support for specifying C++23 and support more "-std" options ( #3212 )
2022-04-15 16:17:36 +02:00
chrchr-github
6e69b751eb
Fix Match pattern ( #4025 )
2022-04-15 08:48:49 +02:00
Paul Fultz II
28cf14f110
Fix 10975: false negative: dangling reference in class ( #4024 )
...
* Fix 10975: false negative: dangling reference in class
* Format
2022-04-14 18:59:12 +02:00
chrchr-github
6450d5701c
Fix #10979 FP arrayIndexOutOfBoundsCond with sizeof ( #4021 )
...
* Fix #10466 FP constVariable with pointer typedef
* Fix flag check
* Use isStatic()
* Fix #10979 FP arrayIndexOutOfBoundsCond with sizeof and extra parentheses
2022-04-14 18:13:29 +02:00
Paul Fultz II
6deb8068fa
Fix 10981: ValueFlow: multiplication with 0 should have known value 0 ( #4023 )
2022-04-14 18:13:04 +02:00
Paul Fultz II
09597bc7e8
Fix 10956: ValueFlow: Incorrect value when assigned to two variables ( #4019 )
...
* Fix 10956: ValueFlow: Incorrect value when assigned to two variables
* Format
2022-04-14 07:35:07 +02:00
chrchr-github
7721cd14b6
Fix #10466 FP constVariable with pointer typedef ( #4018 )
...
* Fix #10466 FP constVariable with pointer typedef
* Fix flag check
* Use isStatic()
2022-04-13 21:56:45 +02:00
Oliver Stöneberg
16e90ed3e2
smallvector.h: reverted bogus noExplicitConstructor fix and suppress the warning ( #4016 )
2022-04-13 20:50:04 +02:00
chrchr-github
8203c74c40
Fix #9648 FP sizeofDivisionMemfunc ( #4017 )
...
* Fix #9648 FP sizeofDivisionMemfunc when result is multiplied again with sizeof later
* Format
2022-04-13 18:21:56 +02:00
chrchr-github
938517b80a
Fix #10265 FP unused private method ( #4015 )
2022-04-13 14:49:28 +02:00
chrchr-github
f323e8a6c6
Fix #10311 FP functionConst ( #4012 )
...
* Fix #10311 FP functionConst
* Format
* Format
2022-04-13 12:25:36 +02:00
chrchr-github
55cb396d18
Fix #10494 Same template name confuses check ( #4011 )
2022-04-13 12:25:21 +02:00
chrchr-github
ea65fe2b63
Fix another FP divideSizeof ( #4009 )
...
* Fix FP divideSizeof
* Format
* Undo
* simpleMatch
* Fix another FP divideSizeof
2022-04-13 12:24:35 +02:00
Oliver Stöneberg
45158ec064
cleaned up includes based on include-what-you-use ( #4007 )
...
* cleaned up includes based on include-what-you-use
* updated translations
2022-04-13 12:24:00 +02:00
chrchr-github
5ac4afa5b8
Fix cppcheckError with spaceship operator ( #10251 ) ( #4001 )
...
* Fix cppcheckError with starship operator (#10251 )
* Fix test case
* Return result
2022-04-13 12:23:38 +02:00
Paul Fultz II
6c82fb05a4
Fix 10954: False positive: returnDanglingLifetime when using c_str() ( #4006 )
2022-04-12 08:09:13 +02:00
Paul Fultz II
61b87bcc60
Fix 10955: False positive: containerOutOfBounds when using a const reference member ( #4005 )
2022-04-12 08:07:55 +02:00
chrchr-github
00badff622
Fix #10315 FP functionConst ( #3997 )
...
* Fix #10315 FP functionConst
* Update releasenotes.txt
2022-04-11 22:55:16 +02:00
chrchr-github
28a024ac4a
Fix #9954 incorrectLogicOperator/knownConditionTrueFalse for constexpr ( #4002 )
2022-04-11 20:42:54 +02:00
chrchr-github
bf6bcafc56
Fix FP divideSizeof ( #4003 )
2022-04-11 20:41:59 +02:00
Oliver Stöneberg
a98346bbe0
generate a program database in all Visual Studio configurations ( #3996 )
2022-04-11 11:28:07 +02:00
Daniel Marjamäki
8f386e15fd
Remove bug hunting. This feature will be provided in Cppcheck premium.
2022-04-11 07:31:33 +02:00
Paul Fultz II
99757c6d06
ValueFlow: Set values to parameters to escape functions ( #3994 )
...
* ValueFlow: Set values to parameters to escape functions
* Format
2022-04-11 07:23:58 +02:00
Paul Fultz II
d97942d3c6
Fix 6577: Detect pointer to uninitialised memory with clock_settime() ( #3993 )
...
* Fix 6577: Detect pointer to uninitialised memory with clock_settime()
* Format
2022-04-11 07:23:44 +02:00
Paul Fultz II
45b4580554
Fix 10957: Crash on valid code ( #3991 )
2022-04-10 22:47:58 +02:00
chrchr-github
bd9f5231b8
Fix #10179 FP divideSizeof with dereferenced pointer-to-pointer ( #3786 )
2022-04-10 22:47:27 +02:00
chrchr-github
c8936d04f6
Fix #3886 New Check : Return value of "new" ignored ( #3884 )
2022-04-09 19:06:32 +02:00
Oliver Stöneberg
25ef9eeb26
use std::string::empty() ( #3910 )
2022-04-09 19:02:37 +02:00
chrchr-github
0636018df3
Fix #10368 FP: unassignedVariable with structured binding ( #3990 )
2022-04-09 14:50:30 +02:00
chrchr-github
2bccde0e3b
Fix #9789 FP Logical condition considered always false ( #3985 )
2022-04-09 14:09:10 +02:00
chrchr-github
38bc0ad4c3
Fix regression: wrong member variable ( #3987 )
2022-04-08 08:23:10 +02:00
Paul Fultz II
d2a0b0f78e
Fix 10951: FP knownEmptyContainer with east-const ( #3988 )
...
* Fix 10951: FP knownEmptyContainer with east-const
* Format
* Use simpleMatch
2022-04-08 08:22:39 +02:00
chrchr-github
ceb86afc22
Fix #10952 FP constStatement with cast in return ( #3986 )
2022-04-07 14:11:14 +02:00
Paul Fultz II
4c1aeb0cb1
Remove old pointer alias check ( #3983 )
2022-04-07 11:36:15 +02:00
chrchr-github
52b4aeb279
Fix #10792 FP knownConditionTrueFalse with double to int cast ( #3964 )
2022-04-07 10:42:57 +02:00
Paul Fultz II
dad10f2ab7
Fix 7684: ValueFlow: function call 'X::GetSize()' ( #3984 )
...
* Improve getting function to calculate the return
* Add test
* Format
* Move to cpp to avoid FP
* Format
2022-04-07 06:49:25 +02:00
Paul Fultz II
74667d1e2a
Fix 10418: false negative: knownConditionTrueFalse ( #3981 )
...
* Improve handling inverted condition
* Fix tests
* Rename variables for clarity
* Add initial test
* Add another test
* Format
* Fix FP
2022-04-07 06:48:13 +02:00
Paul Fultz II
09c8cfb2ae
Fix 6624: false negative: std::vector out of bounds access not detected ( #3980 )
...
* Fix 6624: false negative: std::vector out of bounds access not detected
* Format
* Add test for auto
* Fix tests
* Format
2022-04-07 06:47:15 +02:00
Paul Fultz II
bb640c4879
Fix 10950: Crash on function declaration ( #3979 )
...
* Fix 10950: Crash on function declaration
* Format
2022-04-06 19:00:05 +02:00
chrchr-github
b73aeeda0e
Fix FP constStatement with comma operator ( #3978 )
...
* Fix FP constStatement with comma operator
* Format
2022-04-06 16:58:17 +02:00
Paul Fultz II
4fde7f8b18
Fix 10449: Regression: knownConditionTrueFalse (strlen/wcslen) ( #3977 )
...
* Refactor library function usage
* Evaluate library function in program memory
* Fix and add tests
* Format
2022-04-06 06:35:38 +02:00
Paul Fultz II
1d92665ad2
Fix 10867: false negative: containerOutOfBounds with std::array (regression) ( #3976 )
...
* Fix 10867: false negative: containerOutOfBounds with std::array (regression)
* Format
2022-04-06 06:25:28 +02:00
chrchr-github
4c375e7224
Fix #9815 FP redundantInitialization with lambda / #10864 debug: valueFlowConditionExpressions bailout ( #3970 )
...
* Fix #9815 FP redundantInitialization with lambda
* Fix #10864 debug: valueFlowConditionExpressions bailout
* Format
2022-04-05 23:19:17 +02:00
chrchr-github
f5313dc519
Fix crash with defaulted destructor ( #3975 )
2022-04-05 23:18:08 +02:00
chrchr-github
c4dcfef385
Fix #10260 debug: Executable scope 'x' with unknown function. ( #3974 )
...
* Fix #10174 debug: Executable scope 'x' with unknown function
* Format
* Add test for #10198
* Fix #10260 debug: Executable scope 'x' with unknown function.
2022-04-05 15:52:16 +02:00
chrchr-github
cfbbeb4b1b
Partial fix for #10867 FN containerOutOfBounds with std::array ( #3971 )
...
* Partial fix for #10867 FN containerOutOfBounds with std::array
* Format
* Format
* Optimize
2022-04-05 07:34:20 +02:00
chrchr-github
b79885c6af
Fix #10174 debug: Executable scope 'x' with unknown function ( #3972 )
...
* Fix #10174 debug: Executable scope 'x' with unknown function
* Format
2022-04-05 07:34:06 +02:00
chrchr-github
aae810dd2c
Fix #10107 FP: duplicateValueTenary ( #3969 )
2022-04-04 06:33:54 +02:00
chrchr-github
955d6d8fc6
Fix #10793 internalAstError with brace-init in ternary ( #3966 )
...
* Fix #10793 internalAstError with brace-init in ternary
* Undo
2022-04-03 20:05:03 +02:00