Dmitry-Me
|
4126fab1d5
|
Simplify code with temporary
|
2017-09-12 07:46:38 +03:00 |
Dmitry-Me
|
caebf137bc
|
Cache and reuse value
|
2017-09-12 00:21:36 +03:00 |
Dmitry-Me
|
5dba8268e7
|
Better variable name
|
2017-09-04 17:53:56 +03:00 |
Daniel Marjamäki
|
a02fd54a69
|
ValueFlow: Avoid FPs for aliased variables
|
2017-09-03 23:24:55 +02:00 |
Dmitry-Me
|
beba46987d
|
Remove redundant variable
|
2017-09-01 18:19:25 +03:00 |
Dmitry-Me
|
2133350bf0
|
More useful default value
|
2017-09-01 18:17:40 +03:00 |
Dmitry-Me
|
4663dc205a
|
Cache and reuse value
|
2017-09-01 18:16:08 +03:00 |
Daniel Marjamäki
|
59034e17f1
|
Refactoring, reuse code to skip lambda functions
|
2017-08-29 22:35:55 +02:00 |
Daniel Marjamäki
|
9c99bc43c2
|
ValueFlow: Skip wrong handling of lambda functions. TODO: handle lambda functions properly.
|
2017-08-28 22:39:12 +02:00 |
Daniel Marjamäki
|
02a1b7cd2d
|
Fixed #7965 (valueFlowForward: Improved handling of correlated variables)
|
2017-08-27 19:50:44 +02:00 |
Daniel Marjamäki
|
529b255e99
|
ValueFlow: Better errorpath for increment/decrement
|
2017-08-25 23:07:26 +02:00 |
Daniel Marjamäki
|
b1b8e5270a
|
ValueFlow: Better errorpath for increment/decrement
|
2017-08-25 22:15:52 +02:00 |
Daniel Marjamäki
|
50636f75ba
|
ValueFlow: Improved error path for compound assignments
|
2017-08-24 22:02:49 +02:00 |
Daniel Marjamäki
|
f10634c021
|
ValueFlow: Dont try to evaluate '/=0;'
|
2017-08-23 17:53:05 +02:00 |
Daniel Marjamäki
|
167cfb1ac5
|
valueFlowForward: improve handling of compound assignments
|
2017-08-23 11:13:47 +02:00 |
Daniel Marjamäki
|
3abb62a6d1
|
Fixed #8036 (valueFlowUninit: strcpy(buf, e = str), free(e);)
|
2017-08-20 19:47:26 +02:00 |
Dmitry-Me
|
d3d9c76f01
|
Fix off by one, resolve C4334
|
2017-08-14 18:07:36 +03:00 |
Ayaz Salikhov
|
b8cd7dbb5c
|
Use nullptr instead of 0 or NULL (#936)
|
2017-08-09 20:00:26 +02:00 |
Daniel Marjamäki
|
32fe0aba41
|
Fixed #8037 (ValueFlow: global variable might be modified by function call)
|
2017-07-09 12:50:17 +02:00 |
Daniel Marjamäki
|
bce0776417
|
Fixed #7795 (ValueFlow: Value is not known after conditional increment )
|
2017-06-01 15:16:07 +02:00 |
Ayaz Salikhov
|
28aa939d69
|
iwyu - include what you use
|
2017-05-27 04:33:47 +02:00 |
Daniel Marjamäki
|
6e1544bd49
|
ValueFlow: Use getOrdinalText()
|
2017-05-23 15:01:56 +02:00 |
orbitcowboy
|
ba2b235e24
|
Fixed: warning: ‘tokvalue’ may be used uninitialized in this function [-Wuninitialized].
|
2017-05-22 15:22:38 +02:00 |
Daniel Marjamäki
|
58da0df2f6
|
astyle formatting
[ci skip]
|
2017-05-20 18:52:48 +02:00 |
Daniel Marjamäki
|
82a372a380
|
Try to clarify ErrorPath texts
|
2017-05-20 08:47:35 +02:00 |
Daniel Marjamäki
|
f92b16706c
|
ValueFlow: Add ErrorPath info after for loop
|
2017-05-19 16:32:58 +02:00 |
Daniel Marjamäki
|
2bb54fef69
|
ValueFlow: Test ErrorPath handling
|
2017-05-19 14:34:59 +02:00 |
Daniel Marjamäki
|
cd53d10970
|
ErrorPath: More information about assignments
|
2017-05-16 23:12:35 +02:00 |
Daniel Marjamäki
|
c617851567
|
ErrorLogger: Added ErrorPath where each item has token and info
|
2017-05-16 22:38:13 +02:00 |
Daniel Marjamäki
|
e65d6d3c67
|
ValueFlow: inherit Value::callstack in calculations
|
2017-05-16 19:43:55 +02:00 |
Daniel Marjamäki
|
8d75d1b920
|
Partial fix for #8028 (ValueFlow: Origin/callstack of value)
|
2017-05-15 20:05:11 +02:00 |
Daniel Marjamäki
|
bc7799dccd
|
Fixed #7888 (false positive from knownConditionTrueFalse with sizeof(int) == sizeof(long))
|
2017-05-01 12:23:28 +02:00 |
Daniel Marjamäki
|
980ca39fe2
|
valueFlowForward: better handling of sizeof() in rhs in assignments
|
2017-04-29 08:25:55 +02:00 |
Daniel Marjamäki
|
a0a8f8ddd6
|
ValueFlowUninit: make it more strict
|
2017-04-28 13:29:09 +02:00 |
Daniel Marjamäki
|
89532cf8b9
|
Fixed #7968 (valueFlowBeforeCondition: better handling of compound assignments)
|
2017-04-25 20:45:02 +02:00 |
Daniel Marjamäki
|
37fd60e879
|
Fixed #7293 (Use of uninitialized pointer not detected (worked in 1.71))
|
2017-04-24 18:27:16 +02:00 |
Daniel Marjamäki
|
9a294496c1
|
ValueFlow::setTokenValue: Fix typo
|
2017-04-23 21:59:58 +02:00 |
Daniel Marjamäki
|
a688402617
|
ValueFlow::setTokenValue: Don't calculate parent value for uninitialized values
|
2017-04-23 21:58:01 +02:00 |
Daniel Marjamäki
|
8a738eefab
|
fixed #7998 (uninitialized variable is not found when used with switch/case)
|
2017-04-23 18:05:14 +02:00 |
Daniel Marjamäki
|
8fe7ee1012
|
Fixed #7886 (ValueFlow: endless forloop 'for (i = 0, j = 0; i < sz && j < 9; i++)')
|
2017-03-30 22:02:36 +02:00 |
PKEuS
|
3c8f5b85ae
|
Refactorization: Allocate Token::_values (ValueFlow information) dynamically, reducing size of each token by around 10%
|
2017-03-27 18:48:34 +02:00 |
PKEuS
|
97fa9e9d1b
|
ValueFlow: Stop on inline assembly
|
2017-03-23 20:01:16 +01:00 |
Daniel Marjamäki
|
ecc59859e1
|
Don't simplify _Bool in TokenList
|
2017-03-04 11:13:28 +01:00 |
Daniel Marjamäki
|
d1c66edb03
|
ValueFlow: Known values in conditional code
|
2017-03-03 01:29:34 +01:00 |
Daniel Marjamäki
|
47d39d0a14
|
Revert "Fixed #7888 (1.77 false positive from knownConditionTrueFalse with sizeof(int) == sizeof(long))"
This reverts commit a762511067 .
|
2017-01-10 13:22:48 +01:00 |
Daniel Marjamäki
|
a762511067
|
Fixed #7888 (1.77 false positive from knownConditionTrueFalse with sizeof(int) == sizeof(long))
|
2017-01-09 22:28:55 +01:00 |
Daniel Marjamäki
|
b1f7e46491
|
Fixed #7323 (valueflow: global variables)
|
2017-01-09 15:53:08 +01:00 |
Daniel Marjamäki
|
f40bdddbab
|
ValueFlow: Better handling when casting calculation result
|
2016-12-20 23:09:50 +01:00 |
Daniel Marjamäki
|
44ccbdedec
|
ValueFlow: Improved value for cast
|
2016-12-20 21:37:25 +01:00 |
Daniel Marjamäki
|
606bb78297
|
ValueFlow: Better handling of casts
|
2016-12-20 19:32:21 +01:00 |
Daniel Marjamäki
|
e14e86c103
|
ValueFlow: only set values in conditional code in subfunctions when sure
|
2016-12-20 11:06:20 +01:00 |
Daniel Marjamäki
|
807b653739
|
ValueFlow: Fix FP in for loops when 2nd expression is 0
|
2016-12-20 07:54:38 +01:00 |
Daniel Marjamäki
|
f1ad7368f6
|
ValueFlow: bool values
|
2016-12-19 21:21:18 +01:00 |
Daniel Marjamäki
|
17aaecbd6b
|
ValueFlow: Improved handling of sizeof
|
2016-12-18 14:03:48 +01:00 |
Daniel Marjamäki
|
4ac5c78e0c
|
Fix wrong iterator usage. Iterator that is erased must be non-const.
|
2016-12-17 22:20:50 +01:00 |
Daniel Marjamäki
|
72e4bc9d88
|
ValueFlow: skip values that cause false assertion condition
|
2016-12-17 21:23:14 +01:00 |
Daniel Marjamäki
|
fd85b493bd
|
astyle formatting
[ci skip]
|
2016-12-17 18:51:16 +01:00 |
Frank Zingsheim
|
cb5a5e6a25
|
Improve Fix #6180 (Access of moved variable still allowed until function is called)
|
2016-12-17 16:42:46 +01:00 |
Frank Zingsheim
|
9a871d33f7
|
Improve Fix #6180 ("reset" and "clear" clears the move status)
|
2016-12-17 16:39:30 +01:00 |
Frank Zingsheim
|
f4ab45f13b
|
Improve Fix #6180 (Do not warn about move if it is part of a reassignment of the variable)
|
2016-12-17 16:39:30 +01:00 |
Daniel Marjamäki
|
31337dda27
|
ValueFlow: Better handling of && and || in for loop to avoid FP
|
2016-12-11 21:19:24 +01:00 |
Frank Zingsheim
|
e0d4720e19
|
Fix #7829 (false-positive: knownConditionTrueFalse linked to virtual method)
Return values of virtual functions in valueflow are only possible values
since function might be overloaded.
|
2016-12-11 10:44:05 +01:00 |
Daniel Marjamäki
|
b098d5fbd6
|
ValueFlow: We need better handling of casts
|
2016-12-10 22:09:01 +01:00 |
PKEuS
|
2f6350a0d0
|
Refactorized Library
|
2016-12-06 14:09:28 +01:00 |
PKEuS
|
6e8ac13325
|
Refactorization:
- Optimized std::string usage
- Replaced list by vector
- Moved iterator into loop head
- Ran AStyle
|
2016-12-05 17:45:34 +01:00 |
Daniel Marjamäki
|
5df8e7f50c
|
Fixed #7596 (ValueFlow: better handling for 'x*(1-x-1)')
|
2016-12-04 22:39:59 +01:00 |
Stefan Weil
|
57b57428c2
|
Fix some typos in comments (found by codespell)
Signed-off-by: Stefan Weil <sw@weilnetz.de>
|
2016-11-27 11:40:42 +01:00 |
Matthias Krüger
|
213589ee68
|
ValueFlow: don't perform UB when a function returns shifts of/by negative values. Fixes #7814.
|
2016-11-24 23:23:47 +01:00 |
Daniel Marjamäki
|
d40f4e4a55
|
Fixed #7778 (valueFlowAfterAssign: alias)
|
2016-11-21 17:26:36 +01:00 |
Frank Zingsheim
|
c8ff96fe8f
|
Fixed #6180 (Usage of variable after std::move or std::forward)
|
2016-11-20 15:14:49 +01:00 |
Matthias Krüger
|
b6614d0aa4
|
valueflow: bail out earlier when encountering divisions by zero. Fixes #7819.
This caused valueflow to actually try to divide by zero, detected by UBSAN.
|
2016-11-20 14:38:35 +01:00 |
Daniel Marjamäki
|
3b57273ef1
|
Fix Cppcheck warnings
|
2016-11-14 07:21:10 +01:00 |
Daniel Marjamäki
|
1e31c6c01c
|
ValueFlow: Extended handling of float values
|
2016-11-14 06:42:52 +01:00 |
Daniel Marjamäki
|
e1e9eacccc
|
ValueFlow: Added float type
|
2016-11-13 22:59:56 +01:00 |
Daniel Marjamäki
|
4732667488
|
ValueFlow: allow more value types
|
2016-11-13 22:33:39 +01:00 |
Daniel Marjamäki
|
7ebfb10edd
|
Fixed #7806 (ValueFlow: better handling of subfunction with early return)
|
2016-11-13 18:19:51 +01:00 |
Daniel Marjamäki
|
ac7b351d1e
|
ValueFlow: Don't calculate x<<64 and x>>64
|
2016-11-06 20:40:58 +01:00 |
Daniel Marjamäki
|
dd69d5eabe
|
ValueFlow: Don't calculate result when there is UB
|
2016-11-06 17:42:01 +01:00 |
Alexander Mai
|
ee11f0974a
|
#7769 segmentation fault at setTokenValue() on invalid code.
|
2016-11-06 14:20:58 +01:00 |
Daniel Marjamäki
|
ece4b1a06f
|
Fix ValueFlow
|
2016-11-05 09:59:48 +01:00 |
Daniel Marjamäki
|
2885a75ea6
|
ValueFlow: handle ~ in setTokenValue
|
2016-11-05 09:29:22 +01:00 |
Frank Zingsheim
|
d4f01583b6
|
Fixed TODO (check if function parameter is non-const reference etc..) by common function
|
2016-11-01 14:06:30 +01:00 |
Robert Reif
|
4216b26b8c
|
Fixed #7775 (crash at valueFlowSetConstantValue)
|
2016-10-26 10:36:02 +02:00 |
Daniel Marjamäki
|
8a0f3009ff
|
ValueFlow: inner and outer function return values
|
2016-10-22 17:22:57 +02:00 |
Daniel Marjamäki
|
77cd6c194f
|
ValueFlow: Set 'known' property for function return values
|
2016-10-22 12:24:15 +02:00 |
Daniel Marjamäki
|
86a620a3b4
|
ValueFlow: Better handling of function return value when there are 0 parameters
|
2016-10-20 16:10:55 +02:00 |
Daniel Marjamäki
|
efa3aba32a
|
Remove Tokenizer::simplifyNull()
|
2016-10-18 21:44:02 +02:00 |
Daniel Marjamäki
|
fae4a4dacf
|
Fixed #7668 (ValueFlow: return value from abs)
|
2016-10-17 13:05:19 +02:00 |
Daniel Marjamäki
|
7fb812f415
|
Fixed #7752 (ValueFlow: no conditional value, probably because condition is in ternary operator and/or in function call.)
|
2016-10-16 07:15:28 +02:00 |
Daniel Marjamäki
|
ad74421526
|
Fixed #7756 (ValueFlow: fix bug in valueAfterAssign, same variable in lhs and rhs)
|
2016-10-15 19:09:50 +02:00 |
Boris Egorov
|
a32f61ae4a
|
Fixed #7139 (ValueFlow: Missed shift operation in for expression)
|
2016-10-04 13:09:33 +07:00 |
Daniel Marjamäki
|
254e5675ff
|
Fixed #7573 (Tokenizer: FP caused by constant folding)
|
2016-08-28 19:11:05 +02:00 |
PKEuS
|
e0838ff194
|
Fixed crash on garbage code (#7699)
|
2016-08-21 11:06:48 +02:00 |
Daniel Marjamäki
|
305609f4fb
|
Fixed #7688 (setTokenValue: crash when there is no 2nd operand for ternary operator)
|
2016-08-17 18:44:41 +02:00 |
Daniel Marjamäki
|
1f98af654a
|
ValueFlow: better handling of ? when condition result is known
|
2016-08-15 14:19:35 +02:00 |
Daniel Marjamäki
|
62362cd06d
|
ValueFlow: improve handling of unary minus
|
2016-08-14 22:19:06 +02:00 |
PKEuS
|
9a6569fde1
|
Always set ErrorMessage::file0 to ensure that the source file that cppcheck is checking when an error occurs can be identified
Removed unused function and unused includes from preprocessor.h/cpp
|
2016-07-26 16:28:40 +02:00 |
Daniel Marjamäki
|
4f051bf9dd
|
Fixed #7599 (valueFlowAST: handle && and || better)
|
2016-07-17 21:51:20 +02:00 |
Robert Reif
|
eca805ba3b
|
ValueFlow: Fixed constant folding of sizeof(enum) and sizeof(enumerator) (#7564)
|
2016-07-08 20:39:34 +02:00 |
Robert Reif
|
66cacde3db
|
Fixed #7513 (value flow of array dimension with enum doesn't always work)
|
2016-05-26 11:25:50 +02:00 |