PKEuS
1275b5275e
LCppC backport: Various optimizations ( #4182 )
...
* Optimization: Use Token::eIncDecOp instead of expensive Token::Match calls
Merged from LCppC.
* Small Optimizations: - Moved a std::set that is only need during initialization of SymbolDatabase to function scope - Use std::vector instead of std::list
Merged from LCppC.
* Optimization: Refactorized various Token::Match calls and surrounding conditions
Merged from LCppC.
* Refactorization: Cleanup usage of std::multimap
Merged from LCppC.
2022-06-08 16:58:57 +02:00
chrchr-github
e6f2929fac
Fix #11085 FN constVariable with range-based for ( #4118 )
2022-06-03 19:24:59 +02:00
orbitcowboy
9b0f41e1a0
Revert change 3dfe9eff3e (commitcomment-75236431)
.
2022-06-03 10:22:29 +02:00
orbitcowboy
c24edc528e
astutils.cpp: Removed useless parentheses
2022-06-03 00:18:35 +02:00
orbitcowboy
3dfe9eff3e
astutils.cpp: Improved const correctness
2022-06-03 00:07:15 +02:00
Oliver Stöneberg
3d5d2e8fd8
inlined `findAstNode()` calls ( #4146 )
2022-05-31 13:37:21 +02:00
chrchr-github
7fbb9c7c13
Fix #10980 FN constVariable with range-based for loop ( #4144 )
...
* Fix #10980 FN constVariable with range-based for loop
* Format
* nullptr check
* Restrict scopes
* Add const
* Undo
* Add more const
2022-05-29 17:06:33 +02:00
Paul Fultz II
feaef46436
Fix 11076: Assert failure / crash with loop over init list ( #4119 )
2022-05-21 08:25:09 +02:00
Paul Fultz II
fbba72ab5a
Fix 11057: FP danglingTemporaryLifetime with reference member ( #4103 )
...
* Fix 11057: FP danglingTemporaryLifetime with reference member
* Add test
* Format
* Use ast for number of arguments
* Get number of arguments using ast
* Skip aggregate constructor when there are too many arguments
* Format
2022-05-13 06:51:07 +02:00
Paul Fultz II
5d8da2b83c
Fix 11035: FP arrayIndexOutOfBoundsCond with array and vector ( #4105 )
...
* Fix 11035: FP arrayIndexOutOfBoundsCond with array and vector
* Format
* Move comment
2022-05-12 06:21:33 +02:00
chrchr-github
63a1698335
Fix #11059 FP multiCondition when variable is assigned in if/else ( #4102 )
2022-05-11 20:01:13 +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
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
e2069dd1b9
Fix #10650 FN knownConditionTrueFalse with const int value ( #4078 )
2022-05-04 14:25:00 +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
Paul Fultz II
aafd1e10be
Fix 11006: FP uninitvar with unknown constant ( #4056 )
2022-04-28 10:48:37 +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
chrchr-github
52b4aeb279
Fix #10792 FP knownConditionTrueFalse with double to int cast ( #3964 )
2022-04-07 10:42:57 +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
63d96e49fc
Fix #10928 , #10930 FP constStatement ( #3946 )
...
* Fix #10928 , #10930 FP constStatement
* Fix test cases (first one did not compile)
2022-03-27 07:59:29 +02:00
chrchr-github
e54ad24d2c
Fix #10870 FN constStatement with arrays ( #3904 )
2022-03-25 11:32:16 +01:00
chrchr-github
39567ea8c8
Fix #8541 FP variableScope (std::for_each with lambda) ( #3924 )
2022-03-22 21:50:46 +01:00
Paul Fultz II
0b310b9d07
Fix 10702: FP knownConditionTrueFalse - Member variable modified ( #3857 )
...
* Fix 10702: FP knownConditionTrueFalse - Member variable modified
* Format
* Make parameter const
* Fix FP
* Fix FP
* Update
* Format
2022-02-28 18:54:55 +01:00
Paul Fultz II
45de9a7d08
Refactor: Use getEndOfExprScope instead of getEndOfVarScope ( #3855 )
2022-02-24 06:50:34 +01:00
Oliver Stöneberg
75b6e8d258
inline visitAstNodes() calls ( #3828 )
2022-02-13 20:46:01 +01:00
chrchr-github
0a99e3b6fc
Partial fix for #9407 FN redundant assignment/unreadVariable ( #3651 )
2022-02-12 15:32:08 +01:00
Oliver Stöneberg
6e57cc4323
small utils.h cleanup ( #3821 )
2022-02-11 19:44:08 +01:00
Paul Fultz II
260d155bb6
Fix 10785: False positive: constParameter when using member pointer ( #3807 )
2022-02-07 18:45:32 +01:00
Daniel Marjamäki
3989408738
Update copyright year
2022-02-05 11:45:17 +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
Oliver Stöneberg
171da2e6f9
avoid dependency on transitive includes - based on include-what-you-use ( #3757 )
2022-01-27 19:03:20 +01:00
chrchr-github
d05e43ce15
Fix #9828 False positive: unreadVariable alias ( #3744 )
2022-01-24 21:52:45 +01:00
Oliver Stöneberg
8179226b18
astutils.cpp: optimized visitAstNodesGeneric() a bit more by avoiding unnecessary checks and std::stack usage ( #3732 )
2022-01-24 21:44:09 +01:00
chrchr-github
4d44d0c079
Fix #9781 FP deallocuse after auto_ptr ( #3724 )
2022-01-19 21:39:45 +01:00
Oliver Stöneberg
2148b8b165
astutils.cpp: optimized visitAstNodesGeneric() a bit ( #3716 )
2022-01-17 20:34:35 +01:00
Paul Fultz II
89bc226738
Fix 10718: Crash in CheckOther::checkDuplicateExpression ( #3713 )
2022-01-16 12:34:20 +01:00
Armin Müller
5a05631c84
Typos found by running "codespell" ( #3702 )
2022-01-13 17:24:26 +01:00
Oliver Stöneberg
0ba9cb4e64
fixed some unusedFunction warnings ( #3618 )
2022-01-04 15:48:08 +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
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
chrchr-github
922e27de4c
Fix #7754 FP Same expression on both sides of '||' ( #3635 )
2021-12-31 08:24:05 +01:00
Paul Fultz II
d36aa590cd
Fix 10553: FP uninitvar with strcpy ( #3652 )
2021-12-23 08:22:41 +01:00
chrchr-github
e8260f2dcc
Improve fix for #9570 : check if ternary operator is used in assignment to reference ( #3614 )
2021-12-16 22:32:15 +01:00
Oliver Stöneberg
ba402f3e50
cleaned up includes based on include-what-you-use ( #3627 )
2021-12-15 19:47:27 +01:00
Oliver Stöneberg
54b54567cf
astutils.cpp: optimized isSameExpression() a bit - reduces average Ir from 294 to 213 when analyzing test folder ( #3528 )
2021-12-11 15:10:15 +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
chrchr-github
33c55f77a8
Fix #9570 ( #3608 )
2021-12-07 07:44:07 +01:00