Paul Fultz II
569332a50a
Fix 10786: False positive: arrayIndexOutOfBoundsCond ( #3803 )
2022-02-06 20:14:13 +01:00
Paul Fultz II
a639c59780
Fix 10787: False positive: knownConditionTrueFalse with a conditional exit ( #3804 )
2022-02-06 20:13:44 +01:00
orbitcowboy
fa776051e9
Fixed Ticket 1001 - std.cfg: Invalid parameters for fseek()
2022-02-06 16:05:14 +01:00
Oliver Stöneberg
974dd5d49f
only use bundled tinyxml2 in CMake when configured to do so ( #3806 )
2022-02-06 13:02:52 +01:00
Daniel Marjamäki
3989408738
Update copyright year
2022-02-05 11:45:17 +01:00
chrchr-github
7f28edbe26
Fix #10789 Crash in CheckMemoryLeakInClass ( #3797 )
2022-02-04 19:32:23 +01:00
orbitcowboy
31ea13eb0c
test std.cfg: Fixed wrong npos constant.
2022-02-04 12:39:43 +01:00
orbitcowboy
7062b0a973
std.cfg: Improved configuration of std::[w]string::substr(). Do not allow negative length arguments.
2022-02-04 12:30:37 +01:00
chrchr-github
17b538210d
Fix #10151 FP eraseDereference when returning iterator from loop ( #3787 )
2022-02-03 21:13:48 +01:00
Daniel Marjamäki
9f6a36c1a8
Revert "Fix #10671 : functionConst FN with begin/end and const_iterator ( #3749 )"
...
This reverts commit 2cacb13f85
.
2022-02-03 11:04:02 +01:00
chrchr-github
a20465eaea
Fix #10484 FP knownConditionTrueFalse with static variable and direct initialization / partial fix for #10248 ( #3728 )
2022-02-02 22:30:49 +01:00
chrchr-github
511520d623
Fix #10679 FP constParameter with const/nonconst overload ( #3780 )
2022-02-02 19:38:32 +01:00
Rikard Falkeborn
2cacb13f85
Fix #10671 : functionConst FN with begin/end and const_iterator ( #3749 )
...
Check if the iterator is assigned to a const_iterator or
const_revese_iterator, in which case it is possible the function can be
const. Unfortunately, it is not possible to remove the hard coding of
cbegin, cend, crbegin and crend due to the need to handle auto, as in
the following code snippet:
void cbegin_auto(void)
{
for (auto it = m_str.cbegin(); it != m_str.cend(); ++it) {;}
}
2022-02-02 19:37:06 +01:00
chrchr-github
dad64bfcc8
Fix #10091 FP shadowFunction with default destructor implementation / Tests for #8635 , #9776 , #9940 , #9951 , #10018 ( #3763 )
2022-02-02 19:30:49 +01:00
chrchr-github
69ee464dff
Fix test for #9827 ( #3781 )
2022-02-02 19:29:01 +01:00
chrchr-github
8cf5c8fbf2
Fix #10684 FP unusedStructMember with static object ( #3681 )
2022-02-02 19:28:16 +01:00
chrchr-github
94a1f76ec4
Fix 10158 FP memleak when pointer is stored in a sub-object ( #3764 )
2022-02-02 13:13:12 +01:00
chrchr-github
2b13a27140
Fix #9696 FP uninitdata - writing pointer to stream ( #3772 )
2022-02-02 12:24:32 +01:00
shaneasd
4127885282
improve noConstructor message ( #3750 )
2022-02-01 17:24:26 +01:00
Oliver Stöneberg
8f7770f512
added an include-what-you-use GitHub Action ( #3759 )
2022-02-01 17:19:19 +01:00
chrchr-github
0807924d32
Fix FP passedByValue for unions / FN passedByValue for array members ( #3784 )
2022-02-01 17:17:08 +01:00
chrchr-github
127b3bb1c4
Fix #9471 FP unreadVariable caused by invalid template injection ( #3783 )
2022-02-01 17:15:27 +01:00
Daniel Marjamäki
637aca8d59
Fixed #10752 (False positive: shadow variable in static method)
2022-01-28 16:03:06 +01:00
chrchr-github
d55010c441
Fix #9247 FP uninitMemberVar (inconclusive) ( #3765 )
2022-01-28 15:05:13 +01:00
chrchr-github
c74eeb6bad
Fix FN uninitVar with std::array ( #3707 )
2022-01-27 19:45:27 +01:00
chrchr-github
f429245da2
Fix #8557 FP format string requires unsigned long (for sizeof(var)) ( #3727 )
2022-01-27 19:43:52 +01:00
Oliver Stöneberg
171da2e6f9
avoid dependency on transitive includes - based on include-what-you-use ( #3757 )
2022-01-27 19:03:20 +01:00
Paul Fultz II
40147c1e4b
Fix 10719: Crash in valueFlowIterators() ( #3756 )
...
* Fix 10719: Crash in valueFlowIterators()
* Format
2022-01-26 06:42:41 +01:00
Paul Fultz II
1a949c00b0
Fix 10723: Assertion 'tok && tok->exprId() > 0 && "Missing expr id for symbolic value"' in valueFlowSmartPointer() ( #3755 )
...
* Fix 10723: Assertion 'tok && tok->exprId() > 0 && "Missing expr id for symbolic value"' in valueFlowSmartPointer()
* Format
2022-01-26 06:28:13 +01:00
chrchr-github
c132235a76
Add test for #10398 ( #3752 )
...
* Fix #10200 False positive: uninitStructMember
* Fix #9828 False positive: unreadVariable alias
* Use Token::Match
* Add test for #10398
2022-01-25 22:05:54 +01:00
orbitcowboy
cf6d30f358
Merge branch 'main' of https://github.com/danmar/cppcheck into main
2022-01-25 13:08:25 +01:00
orbitcowboy
00997283cb
Code formatting
2022-01-25 13:08:05 +01:00
chrchr-github
f49cfcd23c
Fix #10200 False positive: uninitStructMember ( #3741 )
2022-01-25 12:14:20 +01:00
chrchr-github
ea81ce933e
Fix #10754 FP invalidFunctionArg with resize() ( #3737 )
2022-01-25 12:13:49 +01:00
chrchr-github
d05e43ce15
Fix #9828 False positive: unreadVariable alias ( #3744 )
2022-01-24 21:52:45 +01:00
chrchr-github
9d6e5c2a05
Fix #10237 uninitMemberVar - member initialized via function call ( #3745 )
2022-01-24 21:52:00 +01:00
chrchr-github
158f3d494e
Fix #10143 false positive: redundantInitialization with std::shared_ptr ( #3746 )
2022-01-24 21:50:50 +01:00
chrchr-github
d64dadcd31
Fix #10758 Crash in CheckClass::checkConstFunc() ( #3740 )
2022-01-24 21:50:01 +01:00
chrchr-github
b491fcc489
Add test cases for #9850 , #9910 ( #3747 )
2022-01-24 15:06:40 +01:00
Paul Fultz II
01e14a12f1
Fix 10755: Assertion "!maxValue->isKnown()" from valueFlowInferCondition ( #3739 )
...
* Fix 10755: Assertion "!maxValue->isKnown()" from valueFlowInferCondition
* Format
2022-01-22 12:25:20 +01:00
Paul Fultz II
8b1ed9cbe1
Another fix for 10739: internalAstError with decltype ( #3738 )
...
* Another fix for 10739: internalAstError with decltype
* Format
2022-01-22 07:22:57 +01:00
chrchr-github
b23ca879ed
Fix #10735 FP functionConst with overloaded operator[] [inconclusive] ( #3733 )
2022-01-21 20:40:10 +01:00
Paul Fultz II
a7dbd288c4
Fix 10738: FP knownEmptyContainer with auto reference ( #3734 )
...
* Fix 10738: FP knownEmptyContainer with auto reference
* Format
2022-01-21 09:56:55 +01:00
Paul Fultz II
6c2b1f093d
Another fix for 10728: Crash in CheckStl::checkDereferenceInvalidIterator2() ( #3735 )
...
* Another fix for 10728: Crash in CheckStl::checkDereferenceInvalidIterator2()
* Format
2022-01-21 09:56:41 +01:00
Paul Fultz II
0737cc4d8c
Fix 10708: Assertion "!maxValue->isKnown()" from valueFlowInferCondition ( #3736 )
...
* Fix 10708: Assertion "!maxValue->isKnown()" from valueFlowInferCondition
* Format
2022-01-21 09:56:24 +01:00
Paul Fultz II
57b50e4b00
Fix 10739: internalAstError with decltype ( #3723 )
2022-01-20 21:36:48 +01:00
chrchr-github
7f9ef8c321
Add test cases for #7899 , #7974 , #9256 ( #3726 )
...
* Add test case for #7899 and #7974
* Add test case for ##9256
2022-01-20 16:15:38 +01:00
chrchr-github
4d44d0c079
Fix #9781 FP deallocuse after auto_ptr ( #3724 )
2022-01-19 21:39:45 +01:00
chrchr-github
089ca67d78
Use TODO_ASSERT ( #3704 )
2022-01-18 22:03:52 +01:00
Oliver Stöneberg
55ff684f34
added unusedFunction self check to CI / cleanups ( #3526 )
2022-01-18 22:02:25 +01:00
Rikard Falkeborn
e106654993
Fix #10729 : Uncaughty exception in CheckMemoryLeak::getReallocationType() ( #3717 )
2022-01-18 20:50:06 +01:00
chrchr-github
1e2863cd33
Fix #10520 FP functionConst with aggregate initialization [inconclusive] ( #3720 )
2022-01-18 20:49:35 +01:00
chrchr-github
ca2e0ca287
Fix FP functionConst with extra parentheses ( #3722 )
2022-01-18 20:21:25 +01:00
chrchr-github
cb5a50c6a7
Fix #10710 FN passedByValue with QString ( #3696 )
2022-01-18 20:17:05 +01:00
Paul Fultz II
7b793af451
Fix 10728: Crash in CheckStl::checkDereferenceInvalidIterator2 ( #3721 )
...
* Fix 10728: Crash in CheckStl::checkDereferenceInvalidIterator2
* Format
2022-01-18 14:48:02 +01:00
orbitcowboy
b6c010c17e
Added regression test for Ticket 7981.
2022-01-18 13:09:02 +01:00
chrchr-github
c2fc4973ad
Fix #10515 False positive for explicit one-argument constructor if co… ( #3718 )
2022-01-17 20:51:23 +01:00
chrchr-github
9c56e7ea8d
Fix #6475 FN uninitialized variable usage not detected ( #3700 )
2022-01-17 20:35:30 +01:00
chrchr-github
605fd7cf98
Fix #10146 FP functionConst (inconclusive) with nested members ( #3719 )
2022-01-17 20:33:32 +01:00
Paul Fultz II
7406dd8c94
Fix 10721: Crash in Tokenizer::simplifyTokenList1 ( #3712 )
2022-01-16 12:46:20 +01:00
Paul Fultz II
abb0563cef
Fix 10726: Crash in CheckExceptionSafety::checkRethrowCopy ( #3711 )
2022-01-16 12:35:51 +01:00
Paul Fultz II
89bc226738
Fix 10718: Crash in CheckOther::checkDuplicateExpression ( #3713 )
2022-01-16 12:34:20 +01:00
Paul Fultz II
4af98f21d6
Fix 10588: crash ( #3691 )
2022-01-16 12:33:31 +01:00
Paul Fultz II
9220c8175d
Remove todo assert ( #3714 )
2022-01-16 12:32:46 +01:00
Paul Fultz II
55ff010df3
Fix 10717: Crash in SymbolDatabase::setValueTypeInTokenList ( #3710 )
...
* Fix 10717: Crash in SymbolDatabase::setValueTypeInTokenList
* Format
2022-01-15 07:56:56 +01:00
Paul Fultz II
0b1cd8626d
Fix 10664: Crash in Token::linkAt ( #3708 )
...
* Fix 10664: Crash in Token::linkAt
* Format
2022-01-14 23:51:01 +01:00
Paul Fultz II
2b6a89e30e
Fix 10716: Crash in CheckStl::checkDereferenceInvalidIterator2 ( #3709 )
...
* Fix 10716: Crash in CheckStl::checkDereferenceInvalidIterator2
* Format
2022-01-14 23:50:33 +01:00
chrchr-github
781a145680
Fix regression: functionStatic related to overload resolution ( #3705 )
2022-01-14 17:55:50 +01:00
chrchr-github
12abf85d1d
Add test case for #5777 , use TODO_ASSERT, enable test case ( #3703 )
...
* Add test case for #5777 , use TODO_ASSERT, enable test case
* Comment
2022-01-13 19:52:02 +01:00
Armin Müller
5a05631c84
Typos found by running "codespell" ( #3702 )
2022-01-13 17:24:26 +01:00
chrchr-github
95dc05b21d
Fix #7732 false negative: (style) Unused variable: std::pair ( #3695 )
2022-01-13 08:05:05 +01:00
chrchr-github
af0a585a70
Partial fix for #9157 False negative: stlOutOfBounds, cast ( #3699 )
2022-01-13 08:03:24 +01:00
Maurice Gilden
44b182c9a7
Improve definitions for googletest ASSERT_* macros ( #3694 )
...
This avoids assertWithSideEffect and follows more closely what the real macros
are doing, similar to the ones in boost.cfg and cppunit.cfg.
2022-01-12 22:09:17 +01:00
chrchr-github
7aa0ec3e95
Fix regression: unreadVariable for trivial initialization ( #3698 )
2022-01-12 22:06:03 +01:00
chrchr-github
1b89c998f5
Fix #10469 FP returnTempReference with overloaded operator+= ( #3678 )
2022-01-12 22:05:30 +01:00
Paul Fultz II
fa651272f0
Fix 10001: Syntax error on valid C++ code ( #3697 )
2022-01-12 22:04:28 +01:00
chrchr-github
e4c8798974
Fix #10556 FP containerOutOfBounds with QList [inconclusive] ( #3688 )
2022-01-12 22:03:57 +01:00
chrchr-github
1670805a8d
Fix #10490 FP unreadVariable with std::shared_lock ( #3672 )
2022-01-10 07:43:02 +01:00
chrchr-github
df3da38483
Fix #10682 Unused QString / #10686 unused std::array / #10005 unused variable with c++11 braced initializer not detected ( #3684 )
2022-01-10 07:36:49 +01:00
Paul Fultz II
4ef20f8f1e
Fix 10683: FP danglingTemporaryLifetime with pointer to vector ( #3685 )
2022-01-10 07:34:26 +01:00
Paul Fultz II
fe7595cd9d
Fix 10677: crash during valueFlowInferCondition ( #3687 )
2022-01-09 22:43:08 +01:00
orbitcowboy
4a3a287248
Improved test case for ticket 1586
2022-01-08 18:39:19 +01:00
orbitcowboy
89e60af516
Ticket #1586 - Added regression test
2022-01-08 17:45:45 +01:00
Paul Fultz II
0c9eb5d190
Fix 10681: FP ctuuninitvar with array member ( #3686 )
2022-01-08 10:47:28 +01:00
chrchr-github
635c09643d
Add tests for #8498 , #9887 ( #3680 )
2022-01-07 12:34:57 +01:00
shaneasd
8f7996211b
remove nullScope from TestSymbolDatabase ( #3679 )
2022-01-06 15:23:43 +01:00
chrchr-github
9fda86eb6d
Fix #9998 ( #3676 )
2022-01-06 15:21:05 +01:00
chrchr-github
6c55f9cf88
Add test for #10133 ( #3675 )
2022-01-06 15:19:10 +01:00
Paul Fultz II
1682344a80
Fix 10678: FP nullPointerArithmeticRedundantCheck in while loop ( #3674 )
2022-01-04 21:19:45 +01:00
chrchr-github
fe077fc141
Add test for #10312 ( #3673 )
2022-01-04 20:50:00 +01:00
Oliver Stöneberg
0ba9cb4e64
fixed some unusedFunction warnings ( #3618 )
2022-01-04 15:48:08 +01:00
chrchr-github
c05e2cc6c4
Fix #10154 False positive: objectIndex ( #3666 )
2022-01-04 10:37:16 +01:00
Paul Fultz II
119ec0582a
Fix 10676: FP: Array index -1 is out of bounds. ( #3670 )
2022-01-04 10:21:54 +01:00
Daniel Marjamäki
3524a0a3eb
exprengine: reduce max buffer size to int_max
2022-01-03 20:55:46 +01:00
Daniel Marjamäki
33305ef4ec
exprengine: better checking for uninit variables
2022-01-03 12:47:13 +01:00
Oliver Stöneberg
6739995e79
removed or annotated some code which is only used in test code ( #3656 )
2022-01-03 12:40:20 +01:00
Paul Fultz II
01a8890d6d
Fix 9760: False positive: constParameter on parameter used to take non-const pointer via array decaying ( #3660 )
2022-01-02 08:15:38 +01:00
Paul Fultz II
71a44395c8
Fix 10659: FP knownConditionTrueFalse - C++17 structured binding ( #3662 )
2022-01-02 08:14:50 +01:00
KenPatrickLehrmann
af289c8357
Handle (&foo)-> in isVariableChanged ( #3624 )
2022-01-02 08:14:10 +01:00
Armin Müller
d5daba331f
Typos found by running "codespell" ( #3659 )
2022-01-02 08:12:08 +01:00
Paul Fultz II
50862d1ace
Fix 10665: Crash in ExpressionAnalyzer ( #3661 )
2022-01-02 08:09:23 +01:00
Paul Fultz II
4b04c86249
Add regression for 9917: false positive: bitwiseOnBoolean when lhs is non-boolean ( #3664 )
2022-01-02 08:08:28 +01:00
Paul Fultz II
0c952ca05d
Fix 10223: ValueFlow; known value for a volatile variable ( #3658 )
2022-01-01 23:15:14 +01:00
Paul Fultz II
7bf0ca8d00
Fix 10672: crash: CheckAutoVariables ( #3657 )
2022-01-01 00:14:36 +01:00
chrchr-github
922e27de4c
Fix #7754 FP Same expression on both sides of '||' ( #3635 )
2021-12-31 08:24:05 +01:00
Rikard Falkeborn
8537331ad6
AutovarDeallocation: Fix grammar in error message ( #3654 )
2021-12-23 20:09:55 +01:00
Paul Fultz II
d36aa590cd
Fix 10553: FP uninitvar with strcpy ( #3652 )
2021-12-23 08:22:41 +01:00
Daniel Marjamäki
e6ccf299b9
Fixed #10598 (SymbolDatabase: final class is not parsed properly)
2021-12-22 21:48:01 +01:00
Chris Lalancette
df1d6cf026
Fix the ability to recognize return types when simplifying attributes. ( #3637 )
...
* Fix the ability to recognize return types when simplifying attributes.
When parsing attributes to remove them, we have to allow for
the case where the return type of the function that follows
the attribute has a namespaced C++ type, like foo::bar .
That means that :: has to be recognized as a valid token.
Fix this in simplifyAttribute, and add tests for this as well.
2021-12-22 19:02:38 +01:00
chrchr-github
5a95ece15e
#10591 : add TODO ( #3647 )
2021-12-21 10:24:38 +01:00
chrchr-github
ca4e5ac527
Fix #7038 false negative for string argument in the CheckIO ( #3649 )
2021-12-20 17:22:39 +01:00
chrchr-github
e6091cbe54
Add tests for #4647 , #5979 , #8763 , #10101 ( #3648 )
2021-12-20 13:12:19 +01:00
Paul Fultz II
73f24b43f9
Fix 10437: FP knownConditionTrueFalse after pointer check ( #3646 )
2021-12-20 07:28:40 +01:00
orbitcowboy
b2d81f0870
Ticket #8640 : Added regression test
2021-12-19 17:43:32 +01:00
Paul Fultz II
d69257e8cd
Fix 9740: FP accessMoved related to designated initialization ( #3644 )
2021-12-19 12:36:48 +01:00
Oliver Stöneberg
cc24d6fcef
Fix #9162 (Invalid --project files do not give any error) ( #3177 )
2021-12-19 12:36:11 +01:00
chrchr-github
bb327be8e8
Fix #10591 FP unusedStructMember with value-initialized struct and typedef ( #3643 )
2021-12-18 22:55:52 +01:00
chrchr-github
8df25ec4e9
Fix #8266 identicalConditionAfterEarlyExit variable modified in if-clause ( #3610 )
2021-12-18 22:52:54 +01:00
Paul Fultz II
332f4c205a
Fix 9772: FP uninitvar: in cppcheck 2.1 ( #3638 )
2021-12-17 21:51:47 +01:00
Paul Fultz II
e7db974606
Fix 10621: FP arrayIndexOutOfBoundsCond with multiple index checks ( #3640 )
2021-12-17 21:48:29 +01:00
Paul Fultz II
4fb43a3f56
Fix 10643: FP: (error) Array 'buf[64]' accessed at index -1, which is out of bounds. ( #3639 )
...
* Fix 10643: FP: (error) Array 'buf[64]' accessed at index -1, which is out of bounds.
* Format
2021-12-17 10:05:57 +01:00
Paul Fultz II
398fa28021
Fix 10657: False positive; ValueFlow - invalid iterator ( #3636 )
2021-12-16 22:34:51 +01:00
Paul Fultz II
ac4f4258a0
Fix 10651: Crash on static template method ( #3633 )
2021-12-16 22:32:44 +01:00
Oliver Stöneberg
ba402f3e50
cleaned up includes based on include-what-you-use ( #3627 )
2021-12-15 19:47:27 +01:00
Paul Fultz II
5414814238
Fix 10649: False positive: wrong known value after reassignment ( #3631 )
2021-12-15 19:37:25 +01:00
Paul Fultz II
16110b6157
Fix 10339: Lambda in leads to analysis fail ( #3629 )
2021-12-15 19:34:18 +01:00
Paul Fultz II
5f73af0d0e
Fix 10625: False positive: known value below do while ( #3623 )
2021-12-15 19:32:14 +01:00
Paul Fultz II
6681576707
Fix 10642: False positive: Possible dereference of an invalid iterator: v.begin()+v.size()-1 ( #3630 )
2021-12-15 19:31:28 +01:00
chrchr-github
532477cdb2
Fix #9549 FP knownConditionTrueFalse (bitshift) ( #3616 )
2021-12-14 07:30:57 +01:00
Paul Fultz II
cb2738a60c
Fix 10645: FP knownEmptyContainer after conditional return ( #3620 )
2021-12-14 07:22:57 +01:00
Daniel Marjamäki
77434d093e
SymbolDatabase: Do not set wrong type for std::map etc items in range for loop
2021-12-11 15:16:54 +01:00
chrchr-github
f64097465f
Fix #9342 FP oppositeExpression - negated value is not opposite for bitwise logical operators ( #3615 )
2021-12-10 18:06:45 +01:00
Rikard Falkeborn
e7b6920cf4
Fix #10600 : FP invalid dealloc of function array argument ( #3613 )
...
Do not warn for array arguments that are free'd, since they decay to
pointers.
2021-12-09 07:16:40 +01:00
orbitcowboy
bca27bf7d2
Ticket #6098 , added regression test
2021-12-07 08:50:29 +01:00
chrchr-github
33c55f77a8
Fix #9570 ( #3608 )
2021-12-07 07:44:07 +01:00
Paul Fultz II
3874c546cc
Fix 10641: FP invalidLifetime with compiler-generated constructor ( #3609 )
2021-12-07 07:43:25 +01:00
Paul Fultz II
0be6e27231
Fix 10640: FN nullPointerRedundantCheck ( #3607 )
...
* Fix 10640: FN nullPointerRedundantCheck
* Format
2021-12-06 20:06:48 +01:00
Paul Fultz II
d2926bfa96
ValueFlow: Propagate const variables more aggressively ( #3606 )
...
* ValueFlow: Propagate const variables more aggressively
* Format
* Fix incorrect addition
2021-12-06 09:16:42 +01:00
orbitcowboy
97f84a368d
Ticket #8648 : Added regression test.
2021-12-05 17:44:57 +01:00
Rikard Falkeborn
1a50146745
autovarInvalidDeallocation: Fix fp with impossible value ( #3604 )
...
daca reports new false positives after db4f94fdfe
on the form:
void f() {
char *ptr = malloc(10);
char *empty_str = "";
if (ptr == NULL)
ptr = empty_str;
if (ptr != empty_str)
free(ptr);
}
Add a check that the value is not impossible to avoid this.
2021-12-05 15:47:21 +01:00
Paul Fultz II
f64bcac004
Fix 10429: Regression: invalidIterator ( #3603 )
2021-12-05 15:46:52 +01:00
Paul Fultz II
c0af66bb52
Fix 10552: Internal error with unusedFunction ( #3600 )
2021-12-05 15:46:17 +01:00
Paul Fultz II
35f14962fc
Regression test for 9523: Syntax Error: AST broken, 'if' doesn't have two operands. ( #3602 )
2021-12-04 17:03:02 +01:00
Paul Fultz II
a03e731930
Track lifetimes of lambdas that capture the 'this' variable ( #3594 )
2021-12-04 17:00:55 +01:00
Paul Fultz II
29dbded4af
Fix 10615: Crash in Token::linkAt ( #3599 )
2021-12-04 12:57:59 +01:00
Paul Fultz II
bc31419da0
Fix 9301: Syntax error when specializing template variable array ( #3601 )
2021-12-04 12:56:25 +01:00
Paul Fultz II
8dcea26c10
Find iterator mismatch when using temporary containers ( #3579 )
2021-12-04 12:55:56 +01:00
Paul Fultz II
c14920218c
Fix 10624: FP knownConditionTrueFalse with pointer member and dynamic cast ( #3598 )
2021-12-04 08:54:24 +01:00
Paul Fultz II
a0d633945e
Fix 10621: FP arrayIndexOutOfBoundsCond with multiple index checks ( #3597 )
...
* Fix 10621: FP arrayIndexOutOfBoundsCond with multiple index checks
* Format
2021-12-04 08:54:04 +01:00
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