chrchr-github
b6b2cf8283
Add tests, todo for #9291 , #9949 ( #3593 )
2021-12-02 17:28:31 +01:00
chrchr-github
6f2000a99b
Add test for #9126 ( #3592 )
2021-12-01 18:24:25 +01:00
chrchr-github
4a1a1534df
Fix #10632 (FN charset in format string) ( #3590 )
...
* Fix #10632
* Typo
2021-12-01 09:51:48 +01:00
Rikard Falkeborn
db4f94fdfe
Fix #7341 : Dealloc string literal ( #3586 )
2021-11-30 07:31:28 +01:00
chrchr-github
d565cde815
Fix and tests for #7622 , #10381 , #10382 ( #3588 )
...
* Add test cases for #10381 , #10382
* Fix #7622
* Format
2021-11-29 22:51:35 +01:00
chrchr-github
b4a60305f9
Add todo for #9827 ( #3589 )
2021-11-29 19:12:07 +01:00
chrchr-github
ca311ebcdf
ASSERT() on calls to Tokenizer::tokenize() in test code ( #3501 )
2021-11-29 07:34:39 +01:00
Paul Fultz II
853a1f6d54
Fix 10631: FP, Regression: error: Return value of allocation function 'makeThing' is not stored. ( #3585 )
2021-11-29 07:06:43 +01:00
Daniel Marjamäki
c26e205e29
clang import: fixed problem with nameless struct
2021-11-29 07:00:18 +01:00
Paul Fultz II
57f5b19b34
Fix 7812: False negative: return pointer of local variable ( #3583 )
...
* Fix 7812: False negative: return pointer of local variable
* Format
* Add test case for 3029
* Format
2021-11-28 15:25:21 +01:00
chrchr-github
cea649761c
Fix FN buffer overrun with array of pointers ( #3582 )
2021-11-27 12:15:36 +01:00
Paul Fultz II
1e327dfbd3
Fix 9836: False negative: No invalidContainer when using vector of vectors ( #3580 )
...
* Fix 9836: False negative: No invalidContainer when using vector of vectors
* Format
2021-11-26 13:38:40 +01:00
Paul Fultz II
143ddf2758
Fix 10595: FN: std::vector() reserve() ( #3581 )
...
* Fix 10595: FN: std::vector() reserve()
* Format
2021-11-26 09:50:02 +01:00
Paul Fultz II
12e731ad49
Fix 10605: FP containerOutOfBounds with empty() check ( #3572 )
2021-11-25 22:34:00 +01:00
Paul Fultz II
33ad30f4da
Fix 10617, 9824: conditions in expanded macro ( #3578 )
2021-11-25 18:40:15 +01:00
Rikard Falkeborn
085d25f1b1
SymbolDatabase: Fix valuetype with constexpr and auto ( #3577 )
2021-11-24 16:51:40 +01:00
chrchr-github
a6b8339990
Add test for #10607 ( #3576 )
...
* Add test for #10607
* Format
2021-11-24 14:42:19 +01:00
chrchr-github
ed050659a3
Add test cases, todos for #9790 , #10358 , #10462 ( #3564 )
...
* Add test cases, todos
* Format
* Remove dupes
* Format
2021-11-23 23:07:15 +01:00
Paul Fultz II
b80e24231b
Fix 10604: FP mismatchingContainerIterator with container member ( #3575 )
2021-11-23 22:50:32 +01:00
Daniel Marjamäki
c7ef602cd6
Fixed #9759 (False positive: constParameter on parameter used by non-const call via pointer to member function)
2021-11-21 20:03:38 +01:00
chrchr-github
cdc34fe92f
Add test for #10025 ( #3570 )
2021-11-20 08:53:18 +01:00
chrchr-github
b211139dbd
Add test for #10092 ( #3571 )
2021-11-20 08:52:51 +01:00
chrchr-github
194a1be2c6
Add test for #4792 ( #3573 )
2021-11-20 08:52:27 +01:00
chrchr-github
22eeeed17a
Add test for #6342 ( #3569 )
...
* Add test for #6342
* Format
2021-11-18 20:25:21 +01:00
chrchr-github
80578c3504
Add test for #10342 ( #3567 )
2021-11-17 19:29:21 +01:00
chrchr-github
51d0f128a5
Add test for #10126 ( #3568 )
2021-11-17 19:28:15 +01:00
Daniel Marjamäki
f701a9361d
chmod; Use 644 for source files
2021-11-17 08:25:25 +01:00
Daniel Marjamäki
8b5865055a
SymbolDatabase: Fix Variable pointer property for 'std::string x(*p)'
2021-11-17 08:22:49 +01:00
chrchr-github
2998382c86
Add test for #10011 ( #3566 )
...
* Add test for #10011
* Format
* Format
2021-11-16 16:01:10 +01:00
Paul Fultz II
8bff45281d
Fix 10599: regression- segmentation fault on template code ( #3565 )
2021-11-16 06:49:13 +01:00
Stefan van Kessel
5770110377
Fixed #10432 (Only the first default argument was copied from the forward declaration;) ( #3530 )
...
Co-authored-by: Stefan van Kessel <stefan.vankessel@muehlbauer.de>
2021-11-15 20:37:46 +01:00
chrchr-github
9c31e0ce54
Fix #10393 FP returnDanglingLifetime ( #3562 )
2021-11-15 20:36:38 +01:00
Paul Fultz II
a0d3c2c719
Handle for loop conditions in afterCondition ( #3561 )
2021-11-14 18:30:36 +01:00
Paul Fultz II
112363c9d1
Fix 10590: container access out of bounds not found ( #3560 )
...
* Refactor container bounds check
* Use symbolic values
* Add test case
* Format
2021-11-13 07:45:29 +01:00
Paul Fultz II
13f5b560ce
Fix 10555: FP knownConditionTrueFalse with non-const function in base class ( #3559 )
2021-11-12 20:05:43 +01:00
chrchr-github
49d3e07b59
Add test case for #10137 ( #3558 )
2021-11-11 20:25:10 +01:00
Paul Fultz II
771188238c
Fix 10574: ValueFlow: conditional values in constructor initializer list ( #3556 )
2021-11-11 08:01:10 +01:00
Paul Fultz II
c057dcce0f
Fix 10592: False positive: returnDanglingLifetime ( #3557 )
2021-11-11 08:00:05 +01:00
chrchr-github
0d1d3b4ed0
Add regression test for #10458 ( #3555 )
2021-11-11 07:59:14 +01:00
nomick
5865b05703
fix false positive of virtual function call ( #3553 )
2021-11-11 07:53:30 +01:00
chrchr-github
77069d810c
Add test case ( #3554 )
2021-11-08 20:31:45 +01:00
chrchr-github
629f883408
Fix #10097 : autovarInvalidDeallocation with pointer to std::array ( #3529 )
2021-11-08 20:31:16 +01:00
chrchr-github
b4561229cb
Partial fix for #10358 : set value for int s = int(4); ( #3523 )
2021-11-08 20:28:55 +01:00
Paul Fultz II
035c70c441
Fix 10578: Value not impossible after check ( #3549 )
2021-11-07 18:19:56 +01:00
Paul Fultz II
a50596df72
Fix 10582: ValueFlow; wrong known value ( #3550 )
2021-11-07 06:51:51 +01:00
Paul Fultz II
1791457227
Fix 9953: false positive: uninitvar ( #3548 )
2021-11-07 06:51:19 +01:00
Paul Fultz II
6338c2396c
Fix 10589: False positive: danglingLifetime for moved unique ptr ( #3547 )
2021-11-06 19:08:19 +01:00
KenPatrickLehrmann
f5f600bafc
Don't simplify template for class names in declarations ( #3505 )
...
* Don't simplify template for class names in declarations
Without the patch, the test would give:
```
Expected:
namespace foo { class Bar ; } class Baz ; class C : Baz { } ;
Actual:
namespace foo { class Bar ; } class Baz ; class foo :: Bar : Baz { } ;
```
* Use valid code in test case
2021-11-06 19:07:45 +01:00
Paul Fultz II
ffc2a9d8e2
Fix 9735 for valueFlowUninit ( #3538 )
2021-11-06 19:06:07 +01:00
Paul Fultz II
b835744a81
Fix 10585: FP danglingTemporaryLifetime recent regression ( #3544 )
...
Fix 10585: FP danglingTemporaryLifetime recent regression
2021-11-04 09:24:24 +01:00
Daniel Marjamäki
0f259a5dc6
Fixed #10222 (regression: arrayIndexOutOfBounds)
2021-11-03 20:16:44 +01:00
Paul Fultz II
d3f0aa5b34
Fix 10033: false negative: danglingTemporaryLifetime with usage of reference from nested object not detected ( #3542 )
2021-11-01 19:23:15 +01:00
Paul Fultz II
7d7584b456
Fix 10575: Improve check; lifetime, struct member points to local data ( #3541 )
2021-11-01 19:22:21 +01:00
Paul Fultz II
df59b07ba1
Fix 10226: FN: knownConditionTrueFalse ( #3537 )
2021-10-31 14:51:07 +01:00
Daniel Marjamäki
3e6540c4b3
Fixed #10523 (FP: missingReturn with nested switch statements)
2021-10-31 14:48:29 +01:00
orbitcowboy
bd63882d80
testuninitvar: #9735 - Moved test to valueFlowUninit.
2021-10-31 07:14:00 +01:00
Paul Fultz II
8c9c46835a
Fix for 6597: false negative: uninitialized variable usage not detected (ValueFlow , multi variables) ( #3535 )
2021-10-30 22:13:58 +02:00
Daniel Marjamäki
3f7093004a
Fixed #10485 (FP unusedStructMember for array size)
2021-10-30 19:34:46 +02:00
chrchr
f363d8948b
Fix test case
2021-10-30 19:04:50 +02:00
orbitcowboy
242acb6135
testuninitvar: Moved test into CTU section.
2021-10-30 17:07:52 +02:00
orbitcowboy
be2ba0f772
Ticket #9735 - Added regression test
2021-10-30 16:31:59 +02:00
Oliver Stöneberg
61a2b89034
streamlined message/error printing of CmdLineParser ( #3524 )
...
* cmdlineparser.cpp: removed message about deprecated --std=posix
* streamlined message/error printing of CmdLineParser
* test-helloworld.py: adjusted expected test result
2021-10-30 13:30:48 +02:00
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
chrchr-github
728531aba1
Add test cases for ValueFlow issue with cast/switch ( #3527 )
2021-10-28 19:49:42 +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
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
Daniel Marjamäki
921f5c1818
Fixed #10547 (False positive: constVariable, buffer written by stream read)
2021-10-18 19:38:53 +02:00
orbitcowboy
21abf315b3
windows.cfg: Added a regression test for GetPrivateProfileString() as we had a FP in the past 8b6c14aa48
2021-10-17 11:05:19 +02:00
orbitcowboy
9c16f13651
Format
2021-10-16 00:31:55 +02:00
orbitcowboy
d4a98dfaab
Ticket #4716 : Added a regression test
2021-10-15 22:50:29 +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
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
orbitcowboy
f09b4139fe
Ticket #8407 : Added regression test
2021-10-12 09:42:18 +02:00
orbitcowboy
c3af708a55
Ticket #8209 : Added regression test
2021-10-12 08:25:08 +02:00
chrchr-github
c4c12df372
Fix escape sequences in test cases ( #3499 )
2021-10-11 19:16: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
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
orbitcowboy
098c0c44fd
Ticket #7884 : added regression test
2021-10-08 23:14:16 +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
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
2ca2abdf0e
Remove duplicate uninit warnings ( #3478 )
2021-10-04 07:50:23 +02:00
Daniel Marjamäki
eb50d19657
Uninitvar: Moved testcases for avoiding extra warnings from TestValueFlow to TestUninitVar
2021-10-03 22:15:35 +02:00
Daniel Marjamäki
08bc21199e
Make ci happy
2021-10-03 22:01:13 +02:00
Daniel Marjamäki
b3f9df968b
Uninitvar: fixed 'make checkcfg'
2021-10-03 20:32:39 +02:00
Daniel Marjamäki
6a1b7f53ce
Fixed CI
2021-10-03 18:47:21 +02:00
Daniel Marjamäki
f3d9755e65
UninitVar: too many warnings (pointer dereference)
2021-10-03 18:12:29 +02:00
Daniel Marjamäki
9f2ddf1623
UninitVar: too many warnings (function/cast operand)
2021-10-03 14:47:57 +02:00
Paul Fultz II
fc6a791a74
Fix 9766: False positive; suspicious operator is written in declaration ( #3476 )
2021-10-03 09:59:51 +02:00
chrchr-github
609e20d9d8
ValueFlow: string can be constructed from init list ( #3459 )
2021-10-02 23:09:49 +02:00
chrchr-github
d87c599f1e
Add regression test for #10475 ( #3468 )
2021-09-27 19:57:41 +02:00
Daniel Marjamäki
08f9de95e2
Update copyright year
2021-09-26 11:34:56 +02:00
Paul Fultz II
d1181ad8e2
Fix 10506: Hang: template alias (TemplateSimplfier) ( #3466 )
2021-09-25 11:56:39 +02:00
Paul Fultz II
5c3b69fe96
Fix 10496: crash: endless recursion (symbolDatabaseCreateExprId => isSameExpr => isSameExpr ...) ( #3467 )
2021-09-25 11:55:49 +02:00
Daniel Marjamäki
2ee920dc4e
Fixed #10495 (False positive: unreadVariable when assigning to reference returned by method)
2021-09-24 07:30:17 +02:00
Paul Fultz II
edd435d5f0
Fix 10491: Crash in unusedFunction on valid C++ code ( #3465 )
2021-09-22 13:03:46 +02:00
Paul Fultz II
255dc0484a
Fix 10331: wrong conditional value after assignment+return ( #3461 )
2021-09-21 19:25:41 +02:00
orbitcowboy
944c9f0db9
Formatted the code [ci skip]
2021-09-20 11:39:04 +02:00
Paul Fultz II
c76e6345c4
Fix FPs in bitwiseOnBoolean ( #3455 )
2021-09-19 15:20:57 +02:00
Paul Fultz II
9e9a982c6c
Fix 10468: False positive; uninitialized variable. Loop is always executed at least once ( #3462 )
2021-09-18 22:23:05 +02:00
orbitcowboy
578d3c3a93
Fixed #8723 : False negative: Same expression with methods
2021-09-17 19:46:46 +02:00
Daniel Marjamäki
6234e9ddda
Fixed #10483 (FP constParameter with array member and memcpy)
2021-09-15 21:25:16 +02:00
chrchr-github
05acc13582
Shadow variables, const, rename function ( #3456 )
2021-09-15 20:28:58 +02:00
Daniel Marjamäki
a9a093e7cc
Fixed #10367 (False positive; pointer out of bounds argv-1)
2021-09-15 08:29:10 +02:00
chrchr-github
2d3b8d7003
Add regression test for #10473 ( #3457 )
2021-09-13 20:46:39 +02:00
Daniel Marjamäki
29bbb4ce14
Fixed #9220 (False positive: Unused function check for template parameter)
2021-09-12 20:27:49 +02:00
Daniel Marjamäki
b455f847ba
Fixed #10448 (FN compareValueOutOfTypeRangeError with int32_t)
2021-09-12 15:08:14 +02:00
Daniel Marjamäki
6f4ce486a2
Fix FP in constVariable
2021-09-11 20:25:46 +02:00
Paul Fultz II
9ece849d80
Fix 10467: FP mismatchingContainers with array of vectors ( #3453 )
2021-09-09 20:43:46 +02:00
Paul Fultz II
b0b3f7ec2d
Fix 10464: FP: knownConditionTrueFalse ( #3452 )
2021-09-09 07:49:56 +02:00
Daniel Marjamäki
47f5e5d145
Fixed #10461 (FP missingReturn with empty initializer list)
2021-09-06 21:20:19 +02:00
Paul Fultz II
d4174a31ba
Fix 10414: FP 'The address of local variable 'single_value' might be accessed at non-zero index.' (regression) ( #3447 )
2021-09-06 07:15:46 +02:00
Paul Fultz II
98e22f6162
Fix 10413: FP arrayIndexOutOfBoundsCond after check ( #3446 )
2021-09-06 07:15:24 +02:00
Daniel Marjamäki
045f21ee48
Fixed #10142 (FP uninitMemberVar with std::map)
2021-09-05 16:35:24 +02:00
Paul Fultz II
0335671b35
Fix 10450: regression, FP : Iterator 'iter' from different container 'l' are used together ( #3436 )
2021-09-05 07:35:33 +02:00
FabianWolff
cd5fa015c1
Fix incorrect warning with `%zi` in format string ( #3437 )
2021-09-05 07:34:22 +02:00
Paul Fultz II
ccb31d8510
Fix 10460: FP knownConditionTrueFalse 'fabs(x)<1/(double)16' is always false ( #3445 )
2021-09-05 07:10:58 +02:00
Paul Fultz II
928efe77fc
Fix 9765: FP: knownConditionTrueFalse handling of template function with ternary operator ( #3443 )
2021-09-04 19:55:36 +02:00
Paul Fultz II
28bc717cbe
Fix 10163: false positive: lifetime for r is not same as for seq 'for (auto& r: seq)' ( #3442 )
2021-09-04 19:53:14 +02:00
Paul Fultz II
82b725e540
Fix FP when using deferred locks ( #3441 )
2021-09-04 19:06:48 +02:00
Paul Fultz II
9eb5eadd35
Fix 9777: False Positive: Condition is always true with reset/release on unique_ptr ( #3440 )
2021-09-04 19:06:13 +02:00
Paul Fultz II
8a708e556c
Fix 10456: FP identicalConditionAfterEarlyExit with variable captured by reference ( #3439 )
2021-09-04 19:05:41 +02:00
Ken-Patrick Lehrmann
b3b3b6b2a1
Fix handling of namespace scope with several bodystarts ( #3438 )
...
Follow up to 0093452bed
.
Give the proper end to getVariableList, since it might not be bodyEnd.
Before that, getVariableList would add the same variables in several
unrelated scopes, and all kind of false positive would follow.
For instance, with the case I added in the unit-tests, I had:
```
../code.cpp:15:18: warning: The struct 'is_A' defines member variable with name 'foo' also defined in its parent struct 'is_A_impl'. [duplInheritedMember]
static const int foo = 8;
^
../code.cpp:15:18: note: Parent variable 'is_A_impl::foo'
static const int foo = 8;
^
../code.cpp:15:18: note: Derived variable 'is_A::foo'
static const int foo = 8;
^
../code.cpp:15:18: style: struct member 'has_A::foo' is never used. [unusedStructMember]
static const int foo = 8;
^
../code.cpp:15:18: style: struct member 'is_A::foo' is never used. [unusedStructMember]
static const int foo = 8;
^
```
2021-09-04 11:09:33 +02:00
Paul Fultz II
2b7523e466
Regression test for 8742: False positive: ValueFlow regression ( #3444 )
2021-09-04 08:45:55 +02:00
Paul Fultz II
b788e41191
Fix 10438: FP knownConditionTrueFalse after return in a catch clause ( #3429 )
2021-09-03 23:07:08 +02:00
Daniel Marjamäki
dccebb98ea
Removed missingReturn inconclusive warnings, that was too noisy
2021-09-01 19:50:17 +02:00
Paul Fultz II
a9a6e4c086
Regression test for 9811: False positive: Reference to temporary returned ( #3434 )
2021-08-31 09:48:50 +02:00
Paul Fultz II
7ce17f076a
Fix 10318: iterator converted to type, wrong scope check ( #3433 )
2021-08-31 09:48:23 +02:00
Paul Fultz II
49df3d811a
Validate asserts in the AST to fix crash in 10442 ( #3428 )
2021-08-29 20:45:31 +02:00