Commit Graph

13203 Commits

Author SHA1 Message Date
Oliver Stöneberg b4704ba065
use target-specific configuration instead of global ones in CMake (#3534) 2021-10-30 09:08:07 +02:00
Paul Fultz II e998cd13ca
Partial fix for 10393: FP returnDanglingLifetime when constructing string from iterators [inconclusive] (#3536) 2021-10-30 09:06:36 +02:00
Paul Fultz II e20ddd55d6
Propagate partially uninit variables in ValueFlow (#3533) 2021-10-30 07:43:37 +02:00
Daniel Marjamäki b872639e31 fix klocwork warning; pointer is checked and then dereferenced. FN ticket: #10570 2021-10-29 19:23:01 +02:00
Daniel Marjamäki 87d1ba4c08 klocwork; fixed dereference before check. FN ticket: #10574 2021-10-28 17:20:45 +02:00
Daniel Marjamäki d50e771a38 klocwork; fix uninitialized struct member. FN ticket: #10573 2021-10-28 17:09:33 +02:00
Daniel Marjamäki d90ee9bfb9 klocwork fixes; remove redundant nullpointer checks 2021-10-28 08:58:16 +02:00
Daniel Marjamäki eeaf2e5ff0 klocwork fixes; check that astSibling for comparison op does not return nullptr. remove check that pointer is non-null, the check should be redundant. 2021-10-28 08:55:08 +02:00
Oliver Stöneberg ce029f3ea7
token.cpp: optimized Token::multiCompare() a bit - reduces average Ir from 71 to 63 when scanning test folder (#3525) 2021-10-26 08:57:54 +02:00
Daniel Marjamäki 1f01845efb Fixed #10531 (FP unreadVariable with reference and *=) 2021-10-25 19:34:19 +02:00
Daniel Marjamäki a838cb65fb stlFindInsert: Take care of review comments 2021-10-25 19:13:06 +02:00
Daniel Marjamäki d2d53e5043 Fixed #10558 (False positive; Searching before insertion in a loop is needed) 2021-10-24 19:13:42 +02:00
Oliver Stöneberg cc1a18806c
use -Weverything for clang in CMake / fixed some warnings (#3519) 2021-10-24 11:06:48 +02:00
Paul Fultz II 48fc70b810
Dont stop analysis when an unrelated class variable is changed (#3518) 2021-10-23 14:47:10 +02:00
Paul Fultz II ca83222bae
Add subexpression analyzer to set values for uninitialized members of struct (#3517)
* Add subexpression analyzer

* Fix errors

* Add tests

* Format

* Add more tests

* Run members first

* Format

* Uncomment todo assert

* Formatting

* Use simpleMatch
2021-10-21 14:44:48 +02:00
Paul Fultz II 257efb4019
Check if uninit value is used in library function (#3516) 2021-10-20 20:51:59 +02:00
Oliver Stöneberg ba777b54d1
prevent uncaught exception in ThreadExecutor::handleRead() (#3514) 2021-10-20 20:41:42 +02:00
Daniel Marjamäki 921f5c1818 Fixed #10547 (False positive: constVariable, buffer written by stream read) 2021-10-18 19:38:53 +02:00
Daniel Marjamäki 0dfc5a6dcd Fixed #10529 (Cleanup dump and ctu-info files) 2021-10-15 20:43:39 +02:00
chrchr-github c88dceff95
Partial fix for #10358: set value for int s{ 4 }; (#3506) 2021-10-15 20:05:42 +02:00
Paul Fultz II 84f102283b
Warn when modifying container from another function in a loop (#3510) 2021-10-15 11:54:29 +02:00
Daniel Marjamäki fc8ab1b3af Addon; Determine proper full path for 'executable' addon 2021-10-15 11:16:15 +02:00
Paul Fultz II 876702c4f2
Fix 10098: false negative: 'Reference to temporary returned.' not detected with class (#3509) 2021-10-15 10:59:40 +02:00
Paul Fultz II 7f04658585
Fix 10548: FP knownConditionTrueFalse with loop and operator++ (#3511) 2021-10-15 10:59:01 +02:00
Paul Fultz II 89515600e4
Fix 10538: FN: nullPointer (std::swap pointers) (#3504) 2021-10-15 10:58:16 +02:00
Paul Fultz II 130d1abbce
Fix 10210: FN: nullPointerRedundantCheck regression in member function (#3512) 2021-10-15 10:57:40 +02:00
Paul Fultz II f1f86db0da
Fix 10544: FP knownConditionTrueFalse with loop after check (#3508) 2021-10-14 16:47:15 +02:00
Paul Fultz II 6b9ef1fc58
Propagate symbolic values for identity operators (#3497) 2021-10-14 16:46:36 +02:00
Daniel Marjamäki 0a5b7b2af5 Make it possible to configure default addons in a cppcheck.cfg file.
Example:
{
    "addons":["cert"]
}

With that cppcheck.cfg file cppcheck will always run the "cert" addon. Explicit options such as --addon=cert will not be needed.
2021-10-13 20:02:48 +02:00
Oliver Stöneberg 99db1f3f22
fixed some compiler warnings (#3502) 2021-10-13 12:10:26 +02:00
Daniel Marjamäki 6a30eabf21 Addons; allow multiple locations in addon error message 2021-10-11 22:07:03 +02:00
Daniel Marjamäki fd05fd7934 Allow compiled addons 2021-10-11 19:26:51 +02:00
Paul Fultz II 52e4bec50a
Fix 10537: FN: knownConditionTrueFalse (std::string::c_str() never returns nullptr) (#3498) 2021-10-11 19:16:12 +02:00
Paul Fultz II 5e9bc48d26
Evaluate symbolic values (#3495) 2021-10-11 19:10:37 +02:00
chrchr-github 474c3d3731
MSVC: add missing files to project (#3500) 2021-10-11 19:01:49 +02:00
Daniel Marjamäki 6bd5f79451 Revert "Fix 8629: false negative: (style) Condition '...' is always true (#3492)"
This reverts commit b9be38aaec.
2021-10-10 21:21:21 +02:00
Paul Fultz II b9be38aaec
Fix 8629: false negative: (style) Condition '...' is always true (#3492) 2021-10-09 16:20:38 +02:00
Paul Fultz II bc90ae889d
Fix 10543: FP knownConditionTrueFalse with static variable (#3491) 2021-10-09 16:20:04 +02:00
Paul Fultz II a1e0ef9b38
Refactor: Use interval analysis for symbolic values for inferCondtion (#3488) 2021-10-09 16:19:06 +02:00
Paul Fultz II 25eb0ab5bc
Find dangling pointers to unique_ptr (#3486) 2021-10-06 08:46:25 +02:00
Paul Fultz II 3cb252bd99
Fix 9873: False negative: null pointer when checking raw pointer (#3485) 2021-10-06 08:39:58 +02:00
chrchr-github f3e1f0d41b
Fix #10238: char* confused with char (#3484) 2021-10-05 18:04:48 +02:00
Paul Fultz II 9b6c7007d2
Fix 9870: False negative: null pointer after duplicate conditions (#3481) 2021-10-05 08:29:23 +02:00
Paul Fultz II 8668d445c7
Add support for string_view (#3480) 2021-10-05 08:28:19 +02:00
Paul Fultz II 71809044bd
Fix 10522: FP: derefInvalidIterator when using emplace with 1 argument (#3482) 2021-10-05 08:23:47 +02:00
Paul Fultz II c7e13d0e0b
Forward container size values in subfunctions (#3483) 2021-10-05 08:22:19 +02:00
KenPatrickLehrmann 61cddabe74
Fix FP due to namespace scope (#3475) 2021-10-04 23:16:16 +02:00
chrchr-github 428144c53c
Fix #10513: vector constructed from pointers (#3473) 2021-10-04 07:55:17 +02:00
Paul Fultz II 7621fee3d4
Refactor: Use ValueFlow::Value for ProgramMemory execute instead of integers (#3477) 2021-10-04 07:53:58 +02:00
Paul Fultz II 2ca2abdf0e
Remove duplicate uninit warnings (#3478) 2021-10-04 07:50:23 +02:00