PKEuS
|
58f4660c94
|
Fixed #5223: Bailout in valueFlowForLoop1() for complex conditions
Refactorization: Reuse result instead of calling MathLib::toLongNumber() twice
|
2014-12-30 19:56:47 +01:00 |
PKEuS
|
ec826a0e0e
|
Fixed #6022: Support ++%var% in valueFlowForLoop1
Fixed TODO unit test: properly handle loops that are never executed
|
2014-12-30 18:50:22 +01:00 |
Daniel Marjamäki
|
5490fad8c7
|
Fixed #5840 (False positive (inconclusive): Possible nullpointer dereference - use before for-loop over nested list)
|
2014-12-14 14:10:42 +01:00 |
Daniel Marjamäki
|
051d42ae6b
|
astyle formatting
|
2014-11-20 14:20:09 +01:00 |
orbitcowboy
|
f5d804f71a
|
running astyle
|
2014-11-20 10:13:03 +01:00 |
Daniel Marjamäki
|
d8b50e73df
|
Fixed #6002 (Defect: False positive due to pointer address not being associated with variable in for loop)
|
2014-10-20 15:54:02 +02:00 |
Daniel Marjamäki
|
0fd6586fcc
|
Fixed #6219 (valueFlowForward: better multivariable analysis needed to avoid FP)
|
2014-10-17 06:50:33 +02:00 |
PKEuS
|
6955e719cf
|
Collected garbage code tests and moved them to testgarbage.cpp
|
2014-10-16 10:59:46 +02:00 |
Daniel Marjamäki
|
228206f556
|
Fixed #6067 (ValueFlow: subfunction, condition with && or ||)
|
2014-10-15 16:34:03 +02:00 |
Daniel Marjamäki
|
31d8cac8c9
|
Fixed #6138 (ValueFlow: entry can't be 0 in loop code 'while (entry = get()) entry->value;')
|
2014-10-11 17:48:51 +02:00 |
Daniel Marjamäki
|
ee93d30d94
|
ValueFlow: improved valueflow for loops that assign variable and then break
|
2014-09-23 16:06:02 +02:00 |
Daniel Marjamäki
|
05617d7285
|
Fixed #6118 (False positive: divide by zero - if condition not evaluated properly)
|
2014-09-04 17:52:14 +02:00 |
Alexander Mai
|
270f59e76a
|
Fix doxygen warning and astyle formatting
|
2014-09-03 20:38:41 +02:00 |
Alexander Mai
|
a632f68345
|
#6122 segmentation fault (invalid code) in in valueFlowForLoop2. Simple fix and testcase.
|
2014-09-02 19:41:50 +02:00 |
PKEuS
|
78932094c8
|
Fixed crash on garbage code #6106
|
2014-08-31 12:12:03 +02:00 |
Daniel Marjamäki
|
febbd92fbd
|
ValueFlow: relocate test
|
2014-08-27 17:11:38 +02:00 |
Daniel Marjamäki
|
ae8a20b197
|
Fixed #6086 (False positive: valueFlow, conditional code returns)
|
2014-08-27 16:59:18 +02:00 |
Daniel Marjamäki
|
23ec9fea8e
|
Fixed #6024 (False positive (nullPointer) using in 1.66)
|
2014-08-26 18:48:11 +02:00 |
PKEuS
|
5e2ea8b6cd
|
Fixed crash #6089 by using information stored in Variable instead of accessing Variable::nameToken
|
2014-08-26 11:08:21 +02:00 |
Daniel Marjamäki
|
37f3c6881b
|
ValueFlow: Removed testcases for code that has been removed
|
2014-08-24 08:50:49 +02:00 |
Daniel Marjamäki
|
789b01aad2
|
ValueFlow: fixed one more hang in valueFlowForward
|
2014-08-24 08:50:01 +02:00 |
Daniel Marjamäki
|
b2288e5ada
|
Fixed #6022 (Defect: False positive due to bug in determining bounds of for loop 'for (i = 2; i < 1; ++i)')
|
2014-08-18 16:45:22 +02:00 |
Daniel Marjamäki
|
5cdbe0f42d
|
ValueFlow: Improved value flow after for loop
|
2014-08-17 10:40:22 +02:00 |
Daniel Marjamäki
|
7ca742c454
|
Fixed #5062 (ValueFlow: Handle comma operator in abstract interpretation)
|
2014-08-17 06:42:16 +02:00 |
Daniel Marjamäki
|
65f10edcb6
|
Fixed #5866 (False negative: useless condition or null pointer dereference (null object after while loop, method))
|
2014-08-16 18:32:25 +02:00 |
Daniel Marjamäki
|
e83f08a825
|
Fixed #6044 (hang: darkplaces / cl_particles.c)
|
2014-08-14 06:13:42 +02:00 |
Daniel Marjamäki
|
bdfe43d82c
|
Fix hang in libdmtx package. found through daca2.
|
2014-08-13 04:03:17 +02:00 |
Daniel Marjamäki
|
970fda9e79
|
ValueFlow: Fixed nullpointer FP warning in checksizeof
|
2014-08-11 16:21:20 +02:00 |
Daniel Marjamäki
|
9eb28cb8af
|
ValueFlow: Improved analysis of assignments
|
2014-08-05 08:28:46 +02:00 |
Daniel Marjamäki
|
a2f776b1b7
|
Dead pointer: Added checking for dead pointer usage when pointer alias local variable that has gone out of scope.
|
2014-08-05 06:24:23 +02:00 |
Daniel Marjamäki
|
d35ce5f0db
|
ValueFlow: Better handling of calculated function arguments in valueFlowSubFunction
|
2014-08-04 12:31:04 +02:00 |
Daniel Marjamäki
|
344016f7ab
|
ValueFlow: Handle string values in valueFlowSubFunction
|
2014-08-04 12:13:15 +02:00 |
Daniel Marjamäki
|
79fc549de0
|
ValueFlow: start adding valueflow handling of strings and pointer aliases
|
2014-08-03 20:11:22 +02:00 |
Daniel Marjamäki
|
f908959196
|
ValueFlow: improved analysis in for loops to avoid fp
|
2014-08-01 16:12:57 +02:00 |
Daniel Marjamäki
|
57c2e928d1
|
ValueFlow: Simple multivariable control flow analysis to avoid FP when 'control variable' is used
|
2014-08-01 07:35:15 +02:00 |
Daniel Marjamäki
|
25846cf223
|
ValueFlow: Fix for if/else valueflow analysis
|
2014-07-30 18:12:33 +02:00 |
Daniel Marjamäki
|
15bb447fdc
|
Fixed #5965 (False positive zerodiv - loop iterating over double variable)
|
2014-07-17 08:44:55 +02:00 |
Daniel Marjamäki
|
5bdd197b01
|
Fixed #5981 (FP: nullPointer on repeated switch)
|
2014-07-16 09:12:56 +02:00 |
Daniel Marjamäki
|
987ce5a408
|
Fixed #5968 (False positive: 'Possible null pointer dereference' when checking null in negated conjuction)
|
2014-07-07 17:48:58 +02:00 |
Daniel Marjamäki
|
b7d7633b97
|
ValueFlow: Improved analysis after switch
|
2014-06-30 17:56:42 +02:00 |
Daniel Marjamäki
|
f1762f9ed6
|
Fixed #5939 (fp: Possible null pointer dereference, after check against NULL in for loop)
|
2014-06-30 07:26:48 +02:00 |
Daniel Marjamäki
|
df799f97c5
|
valueFlowBefore: better analysis of conditional assignment
|
2014-06-30 00:02:49 +02:00 |
Daniel Marjamäki
|
4f43e4f9aa
|
Fixed #5959 (ValueFlow: return value from subfunction)
|
2014-06-29 18:04:38 +02:00 |
Daniel Marjamäki
|
893996d182
|
Fixed #5937 (ValueFlow: wrong analysis of calculations with different variable operands)
|
2014-06-29 10:57:39 +02:00 |
Daniel Marjamäki
|
9eaadc81e2
|
Fixed #5861 (valueFlowSubFunction: fp for float value)
|
2014-06-28 12:04:20 +02:00 |
Daniel Marjamäki
|
5af96c2dd8
|
Fixed #5947 (valueFlowForward: forward conditions not handled properly)
|
2014-06-25 16:00:56 +02:00 |
Daniel Marjamäki
|
c77786a745
|
valueFlowAfterCondition: wrong analysis for floats
|
2014-06-25 06:17:44 +02:00 |
Daniel Marjamäki
|
54aede9086
|
Fixed #5941 (ValueFlow: Wrong value in subfunction under ?)
|
2014-06-24 19:30:46 +02:00 |
Daniel Marjamäki
|
ef81bc363a
|
ValueFlow: analysis in condition.
|
2014-06-19 17:29:41 +02:00 |
Daniel Marjamäki
|
13761927ff
|
ValueFlow: better analysis in valueFlowAfterCondition of 'if|while ( %var% )' etc
|
2014-06-18 06:57:48 +02:00 |
Daniel Marjamäki
|
9999ce9468
|
ValueFlow: extend aftercondition analysis below conditional code
|
2014-06-18 05:51:23 +02:00 |
Daniel Marjamäki
|
847bb44bdd
|
ValueFlow: Improved analysis after condition when ! operator is used
|
2014-06-16 16:39:41 +02:00 |
Daniel Marjamäki
|
cb9725b18a
|
ValueFlow: Fixed testcase
|
2014-06-15 17:15:09 +02:00 |
Daniel Marjamäki
|
a27ca11b85
|
Fixed #5916 (ValueFlow: Add a valueFlowAfterCondition() function)
|
2014-06-15 16:47:01 +02:00 |
Daniel Marjamäki
|
ad879320e5
|
ValueFlow: Fixed 'function call => calculation' value flow
|
2014-06-13 16:34:57 +02:00 |
Daniel Marjamäki
|
5a23b739da
|
ValueFlow: Improved bailout when variable is reassigned
|
2014-05-03 12:49:07 +02:00 |
Daniel Marjamäki
|
fadc27092e
|
Fixed #5752 (FP (error) Possible null pointer dereference)
|
2014-05-01 15:15:26 +02:00 |
Daniel Marjamäki
|
b5e023a46c
|
Fixed #5472 (sizeof not handled as operator with respect to null pointer dereference)
|
2014-04-29 20:09:11 +02:00 |
Daniel Marjamäki
|
1233d8e47f
|
Fixed #5657 (false positive: (error) Possible null pointer dereference: p)
|
2014-04-28 15:54:54 +02:00 |
Daniel Marjamäki
|
3300d39854
|
Fixed #5721 (valueFlowBeforeCondition: stop when goto label is seen)
|
2014-04-28 06:21:48 +02:00 |
Alexander Mai
|
b74e997435
|
Fix false positive nullPointer messages within sqlite3 after goto by adding a suitable bailout inside valueFlowAfterAssign()
|
2014-04-26 14:41:28 +02:00 |
Daniel Marjamäki
|
853d56030b
|
Fixed #5559 (false positive: (error) Possible null pointer dereference: pSTRunner)
|
2014-04-26 11:27:58 +02:00 |
Daniel Marjamäki
|
fe80f858d1
|
ValueFlow: Improved analysis in the valueFlowAfterAssign
|
2014-04-22 16:10:20 +02:00 |
Daniel Marjamäki
|
56eb717b8a
|
Fixed #5656 (false positive: (error) Possible null pointer dereference: f)
|
2014-04-18 16:10:18 +02:00 |
Daniel Marjamäki
|
5ee85ee88a
|
ValueFlow: Improved handling of bitand against a single-bit integer literal
|
2014-04-14 06:45:39 +02:00 |
PKEuS
|
d4765bccc3
|
Refactorized inefficient usage of std::string and const char[] (part 2).
|
2014-04-03 14:56:14 +02:00 |
Daniel Marjamäki
|
830249d72e
|
Fixed #5510 (FP: nullPointer - variable initialized in function call)
|
2014-04-01 07:06:20 +02:00 |
Daniel Marjamäki
|
e5301b2b7a
|
ValueFlow: Improved valueflow of for loop 'for (i=a; i<10; i++)' => unknown start value but end value is known
|
2014-03-29 20:20:22 +01:00 |
Daniel Marjamäki
|
c8004a8d31
|
Buffer overruns: Use ValueFlow to detect negative index
|
2014-03-25 18:22:22 +01:00 |
Daniel Marjamäki
|
dbc8273cb7
|
ValueFlow: improved abstract interpretation of for loops
|
2014-03-24 00:16:02 +01:00 |
Daniel Marjamäki
|
c14a3d67bb
|
ValueFlow: Handle division by zero better in abstract interpretation
|
2014-03-23 20:37:56 +01:00 |
Daniel Marjamäki
|
30fa187b30
|
Fixed #5549 (ValueFlow: Handle static variables better in valueFlowAfterAssign)
|
2014-03-23 17:57:27 +01:00 |
Daniel Marjamäki
|
b6276058da
|
Value Flow: Improved abstract interpretation of arithmetical expressions
|
2014-03-22 19:02:33 +01:00 |
Daniel Marjamäki
|
fc014f055f
|
ValueFlow: Removed wrong bailout
|
2014-03-21 08:33:45 +01:00 |
Daniel Marjamäki
|
01c29ed15f
|
Fixed #5518 (FP regression in 1.64: Array accessed out of bounds)
|
2014-03-18 17:04:33 +01:00 |
Daniel Marjamäki
|
e240282443
|
Value Flow: Another try with the abstract interpretation of for loops
|
2014-03-17 18:43:47 +01:00 |
Daniel Marjamäki
|
8c3f2c2ad9
|
Revert 894a65b0 . abstract interpretation of for loops. there was some crashes and performance problems. I will fix those problems when I have time and recommit.
|
2014-03-16 08:38:52 +01:00 |
Daniel Marjamäki
|
894a65b0b1
|
ValueFlow: Refactor the for-loop handling. Use abstract interpretation.
|
2014-03-15 11:29:33 +01:00 |
Daniel Marjamäki
|
f6b42633e8
|
Fixed #5434 (FP: Out-of-bounds access with ternary operator in loop)
|
2014-02-22 17:59:12 +01:00 |
Daniel Marjamäki
|
34730f623a
|
Fixed #5301 (False positive: (error) Division by zero - variables read from input stream)
|
2014-02-22 12:09:54 +01:00 |
Daniel Marjamäki
|
690c37633b
|
ValueFlow: Fixed bad values after break/continue
|
2014-02-17 20:07:38 +01:00 |
Daniel Marjamäki
|
fd3a8a2a18
|
Update copyright
|
2014-02-15 07:45:39 +01:00 |
Daniel Marjamäki
|
b3bfd5014d
|
Fixed #5433 (FP:Possible null pointer dereference)
|
2014-01-31 15:43:34 +01:00 |
Daniel Marjamäki
|
be082a8e4a
|
value flow: added bailout for conditional return/continue/break when number_of_if is bigger than 0
|
2014-01-26 15:50:25 +01:00 |
Daniel Marjamäki
|
c5971b7137
|
value flow: fix fp when conditional value is assigned
|
2014-01-25 20:14:49 +01:00 |
Daniel Marjamäki
|
c1e35e1df1
|
value flow: fixed multivariable problem in condition
|
2014-01-25 19:13:33 +01:00 |
Daniel Marjamäki
|
df0995edf5
|
Fixed #5403 (Value flow: FP because post increment/decrement is not handled correctly)
|
2014-01-25 18:31:02 +01:00 |
Daniel Marjamäki
|
35b51468cb
|
value flow: Fixed FP for division then check in for loop: 'for (a=b/x;x>0;x--)'
|
2014-01-25 09:22:32 +01:00 |
Daniel Marjamäki
|
4647a9fc93
|
Fixed #5401 (value flow: fp when there are increment/decrement)
|
2014-01-24 18:22:38 +01:00 |
Daniel Marjamäki
|
1cac7e1686
|
value flow: better handling in function call bailout of casting address of variable
|
2014-01-24 17:47:49 +01:00 |
Daniel Marjamäki
|
f3f7e6d302
|
value flow: replacing executionpath checking of null pointers
|
2014-01-22 20:16:31 +01:00 |
Daniel Marjamäki
|
cc38dec3ad
|
value flow: a bit better handling of assigned variable
|
2014-01-22 06:10:17 +01:00 |
Daniel Marjamäki
|
a27ccbd0f8
|
value flow: start implementing value flow analysis of assigned value
|
2014-01-21 21:13:49 +01:00 |
Daniel Marjamäki
|
bb3cc67aaa
|
value flow: improved calculations that depends on variable
|
2014-01-20 21:45:30 +01:00 |
Daniel Marjamäki
|
98305e9163
|
astyle formatting
|
2014-01-20 06:31:28 +01:00 |
Daniel Marjamäki
|
7ff7bc1c2e
|
Fixed #5376 (false positive: zerodivcond (style) Either the condition 'B>0' is useless or there is division by zero)
|
2014-01-19 20:16:55 +01:00 |
Daniel Marjamäki
|
84c5f47eb1
|
value flow: bailout for class variables that are non-const
|
2014-01-19 11:55:02 +01:00 |
Daniel Marjamäki
|
ccda78f347
|
value flow: fixed todo assertion for handling of conditions
|
2014-01-19 09:31:40 +01:00 |
Daniel Marjamäki
|
cdaa7abf7e
|
value flow: better handling of conditional code below || && ?: operators
|
2014-01-19 09:05:48 +01:00 |
Daniel Marjamäki
|
77f3f6c21a
|
valueflow: added setTokenValue that perform calculations using set value
|
2014-01-18 19:30:44 +01:00 |
Daniel Marjamäki
|
c7032a8867
|
value flow: improved handling of loops
|
2014-01-18 11:54:00 +01:00 |
Daniel Marjamäki
|
d0d56aee4a
|
TestValueFlow: split up valueFlowBeforeCondition into smaller functions
|
2014-01-18 08:45:24 +01:00 |
Daniel Marjamäki
|
57d318b2e5
|
valueflow: better handling of increment/decrement
|
2014-01-17 19:28:28 +01:00 |
Daniel Marjamäki
|
30cae358d8
|
Removed the --value-flow flag. ValueFlow analysis will always be enabled from now on.
|
2014-01-17 18:07:05 +01:00 |
Daniel Marjamäki
|
d43191a9e3
|
value flow: remove duplicate test case
|
2014-01-14 18:13:17 +01:00 |
Daniel Marjamäki
|
c547c9a108
|
value flow: fixed fp when variable is used in for-loop condition
|
2014-01-14 17:57:50 +01:00 |
Daniel Marjamäki
|
7981e3d38f
|
value flow: fix fp when gotos are used
|
2014-01-13 16:07:25 +01:00 |
Daniel Marjamäki
|
b1bbb23225
|
value flow: fixed fp when checking symboldatabase
|
2014-01-13 05:52:28 +01:00 |
Daniel Marjamäki
|
2e67ca06c0
|
value flow: some simplifications in unknown functions when there is library configuration
|
2014-01-12 18:19:00 +01:00 |
Daniel Marjamäki
|
d700114edf
|
value flow: bailout if condition is defined by macro
|
2014-01-12 17:16:51 +01:00 |
Daniel Marjamäki
|
3d79613f2b
|
value flow: more bailouts when return/break/continue/goto is reached. TODO: handle these better.
|
2014-01-12 15:07:58 +01:00 |
Daniel Marjamäki
|
d8262963d9
|
value flow: condition in loop, bailout valueflow analysis before loop if there is assignment inside the loop
|
2014-01-12 11:58:10 +01:00 |
Daniel Marjamäki
|
f58e1ab80e
|
value flow: fixed fp in switch
|
2014-01-11 21:21:00 +01:00 |
Daniel Marjamäki
|
3625d179e5
|
value flow: don't perform value flow analysis in sizeof/typeof expressions
|
2014-01-11 21:10:01 +01:00 |
Daniel Marjamäki
|
680d3f1312
|
value flow: fixed fp for nested assignments
|
2014-01-11 20:53:23 +01:00 |
Daniel Marjamäki
|
4d045879aa
|
value flow: fixed fp when while condition contains variable that is changed in loop body
|
2014-01-11 20:25:49 +01:00 |
Daniel Marjamäki
|
75f9111775
|
value flow: bailout when variable is used in assignment to itself
|
2014-01-11 15:36:09 +01:00 |
Daniel Marjamäki
|
1fc2c9fe79
|
ast: fixed syntax tree for statement enclosed in parentheses ';(expr);'
|
2014-01-11 15:18:39 +01:00 |
Daniel Marjamäki
|
eaf8c83db5
|
value flow: refactoring. broke out function for skipping value simplifications in expressions.
|
2014-01-11 14:54:10 +01:00 |
Daniel Marjamäki
|
85dcb14813
|
value flow: bailout in valueFlowBeforeCondition if variable can be assigned by subfunction
|
2014-01-11 14:31:51 +01:00 |
Daniel Marjamäki
|
02b92efd1a
|
value flow: improved analysis of expressions below ?, && and || operators
|
2014-01-11 12:44:55 +01:00 |
Daniel Marjamäki
|
60348da1b5
|
value flow: fixed fp for rhs in && and || expressions
|
2014-01-11 11:30:34 +01:00 |
Daniel Marjamäki
|
1ad94a8be5
|
value flow: loosen up bailouts in valueFlowSubFunction
|
2014-01-11 07:52:25 +01:00 |
Daniel Marjamäki
|
c687933e9f
|
value flow: improved handling of for loops
|
2014-01-10 18:19:24 +01:00 |
Daniel Marjamäki
|
3eebc8a9f1
|
test1
|
2014-01-10 16:51:58 +01:00 |
Daniel Marjamäki
|
acb103e214
|
value flow: skip scopes that don't contain variable
|
2014-01-10 16:13:39 +01:00 |
Daniel Marjamäki
|
d085705e8f
|
value flow: assume that value of global const variable is not changed
|
2014-01-10 05:47:56 +01:00 |
Daniel Marjamäki
|
7c4a7ac3d5
|
value flow: starting to refactor CheckNullPointer::nullPointerDeRefThenCheck
|
2014-01-08 17:37:39 +01:00 |
Daniel Marjamäki
|
a2fe1ebe92
|
value flow: pass result of bool operator to function
|
2014-01-08 16:17:47 +01:00 |
Daniel Marjamäki
|
6d22c9deaa
|
value flow: if unsigned variable is compared against 1 with either >= or <= then assume it can have the value 0
|
2014-01-08 06:53:17 +01:00 |
Daniel Marjamäki
|
1e3c43e708
|
value flow: improved bailouts in ?:
|
2014-01-08 06:39:15 +01:00 |
Daniel Marjamäki
|
dfee044925
|
value flow: Fixed wrong value in subfunction after conditional return
|
2014-01-08 06:04:51 +01:00 |
Daniel Marjamäki
|
1fb0b1750c
|
value flow: Fixed FP in ?:
|
2014-01-07 19:46:13 +01:00 |
Daniel Marjamäki
|
740f72fdbd
|
value flow: simple handling of for loops
|
2014-01-07 19:20:56 +01:00 |
Daniel Marjamäki
|
a6320a35e0
|
value flow: added experimental subfunction handling
|
2014-01-06 16:37:52 +01:00 |
Daniel Marjamäki
|
58fb2e756b
|
Value flow: added bailout on }
|
2014-01-06 11:27:56 +01:00 |
Daniel Marjamäki
|
d172e9bb29
|
value flow: Fixed testing
|
2014-01-06 10:09:49 +01:00 |
Daniel Marjamäki
|
c4fa3bb137
|
value flow: added bailouts for global variables and assignments
|
2014-01-06 07:44:58 +01:00 |
Daniel Marjamäki
|
d8270c710a
|
Add new experimental value flow analysis
|
2014-01-04 20:57:02 +01:00 |