Dmitry-Me
|
68d650e9ac
|
Remove duplicate checks
|
2014-09-03 14:17:34 +04: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
|
eeeb8aa0a7
|
ValueFlow: Fix crash for lambda function
|
2014-08-27 17:27:34 +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
|
789b01aad2
|
ValueFlow: fixed one more hang in valueFlowForward
|
2014-08-24 08:50:01 +02:00 |
PKEuS
|
69b7f91034
|
Support :: in some more places
|
2014-08-19 11:36:32 +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 |
PKEuS
|
df080ab5c3
|
Refactorization in valueflow.cpp: Removed redundant loop, rearranged code.
|
2014-08-18 10:25:30 +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
|
f0cb6ef33d
|
Change fix for hang so there won't be FP
|
2014-08-13 05:36:17 +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
|
8bbbb54f94
|
Refactoring valueFlowSubFunction
|
2014-08-06 06:33:06 +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
|
688b798b88
|
ValueFlow: Cleanup variable
|
2014-08-01 08:59:07 +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
|
c531749d7a
|
ValueFlow: Small cleanups
|
2014-07-15 10:36:13 +02:00 |
Daniel Marjamäki
|
6afe9a4fbe
|
astyle formatting
[ci skip]
|
2014-07-08 06:44:57 +02:00 |
amai2012
|
9b38ae73c1
|
Attempt to fix 2 Coverity messages.
Replace a few unsigned int by std::size_t
|
2014-07-07 21:25:30 +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
|
26a3bdfe00
|
ValueFlow: Cleanup code by using SymbolDatabase provided scope info
|
2014-07-07 16:34:21 +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
|
ae81b09b58
|
Refactoring: Move isScopeNoReturn implementation to library and reuse it both in ValueFlow and Tokenizer
|
2014-06-22 19:13:15 +02:00 |
Daniel Marjamäki
|
f78cbda2db
|
Refactoring: Removed CheckNullPointer::nullPointerByCheckAndDeRef and implemented needed analysis in ValueFlow instead.
|
2014-06-22 10:02:14 +02:00 |
Daniel Marjamäki
|
ef81bc363a
|
ValueFlow: analysis in condition.
|
2014-06-19 17:29:41 +02:00 |
Daniel Marjamäki
|
dec251ac44
|
ValueFlow: Refactoring. Use utility function isVariableChanged.
|
2014-06-19 05:41:19 +02:00 |
Daniel Marjamäki
|
84581817f6
|
ValueFlow: Improved valueFlowForward. RHS in assignment.
|
2014-06-18 21:07:01 +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
|
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 |
PKEuS
|
adf38fcfd0
|
Further include cleanup
|
2014-05-24 12:50:04 +02:00 |
Matthias Krüger
|
879023b6b2
|
travis: compile one pair of jobs with -DCHECK_INTERNAL and run --enable=internal,...
suppress warnings in testtoken.cpp
fix warnings in valueflow
|
2014-05-19 21:44:00 +02:00 |
PKEuS
|
09e03fa6ef
|
Fixed some complaints of PVS Studio
|
2014-05-19 14:37:54 +02:00 |
PKEuS
|
5fbd58d98d
|
Fixed messages of CheckInternal, fixed a false positive.
|
2014-05-18 20:39:52 +02:00 |
PKEuS
|
70dfb55f21
|
Simplified some Token::Match patterns
|
2014-05-11 17:50:58 +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
|
1317063b21
|
Fix some more (clang++) compiler warnings
|
2014-04-26 20:44:21 +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
|
5fc43f85b1
|
ValueFlow: Refactoring. Created utility function isVariableChanged()
|
2014-04-20 14:21:43 +02:00 |
Daniel Marjamäki
|
56eb717b8a
|
Fixed #5656 (false positive: (error) Possible null pointer dereference: f)
|
2014-04-18 16:10:18 +02:00 |
PKEuS
|
076f7a7542
|
Fixed some coverity findings about dead code, fixed a misleading comment
|
2014-04-14 22:46:51 +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 |
Daniel Marjamäki
|
189360ae20
|
ValueFlow: changed back bailout message
|
2014-04-02 19:22:40 +02:00 |
Daniel Marjamäki
|
f13be7fb6c
|
Travis: Fixed possible null pointer dereference reported by travis
|
2014-04-02 19:08:44 +02:00 |
Daniel Marjamäki
|
830249d72e
|
Fixed #5510 (FP: nullPointer - variable initialized in function call)
|
2014-04-01 07:06:20 +02:00 |
Alexander Mai
|
5fc89656c0
|
Fix some uninitialized variables
|
2014-03-30 10:22:06 +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
|
8eeda150cf
|
ValueFlow: Improved simplification inside for-loops
|
2014-03-25 21:40:36 +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
|
aa05bf0f16
|
ValueFlow: Improved abstract interpretation
|
2014-03-24 06:48:06 +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 |
Alexander Mai
|
cdd6d4df27
|
Removing a useless variable to fix cppcheck warning in its own code
|
2014-03-21 22:11:10 +01:00 |
Daniel Marjamäki
|
045e9e692b
|
ValueFlow: restricted bailouts in for loops
|
2014-03-21 08:48:49 +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 |
Thomas Jarosch
|
93341f4449
|
Use simple match where possible
Fixes these warnings found by "--enable=internal":
[lib/checkclass.cpp:972]: (warning) Found simple pattern inside Token::Match() call: "* *"
[lib/checkbufferoverrun.cpp:635]: (warning) Found simple pattern inside Token::Match() call: "."
[lib/checkbufferoverrun.cpp:1397]: (warning) Found simple pattern inside Token::Match() call: ";"
[lib/checksizeof.cpp:299]: (warning) Found simple pattern inside Token::Match() call: "."
[lib/checksizeof.cpp:301]: (warning) Found simple pattern inside Token::Match() call: ")"
[lib/checksizeof.cpp:303]: (warning) Found simple pattern inside Token::Match() call: "]"
[lib/checksizeof.cpp:318]: (warning) Found simple pattern inside Token::Match() call: ")"
[lib/checknullpointer.cpp:413]: (warning) Found simple pattern inside Token::Match() call: "delete"
[lib/checkio.cpp:1336]: (warning) Found simple pattern inside Token::Match() call: "> ("
[lib/checkstl.cpp:1509]: (warning) Found simple pattern inside Token::findmatch() call: ";"
[lib/checkstl.cpp:1512]: (warning) Found simple pattern inside Token::findmatch() call: ";"
[lib/checkstl.cpp:1594]: (warning) Found simple pattern inside Token::Match() call: "="
[lib/checkstl.cpp:1598]: (warning) Found simple pattern inside Token::Match() call: "] ="
[lib/checkunusedvar.cpp:755]: (warning) Found simple pattern inside Token::Match() call: "goto"
[lib/checkunusedvar.cpp:793]: (warning) Found simple pattern inside Token::Match() call: "="
[lib/checkuninitvar.cpp:376]: (warning) Found simple pattern inside Token::Match() call: "> ("
[lib/checkother.cpp:86]: (warning) Found simple pattern inside Token::Match() call: "> ("
[lib/checkother.cpp:2181]: (warning) Found simple pattern inside Token::Match() call: "> {"
[lib/valueflow.cpp:54]: (warning) Found simple pattern inside Token::Match() call: "&"
[lib/valueflow.cpp:409]: (warning) Found simple pattern inside Token::Match() call: "do"
[lib/valueflow.cpp:425]: (warning) Found simple pattern inside Token::Match() call: ") {"
[lib/valueflow.cpp:487]: (warning) Found simple pattern inside Token::Match() call: ") {"
[lib/valueflow.cpp:511]: (warning) Found simple pattern inside Token::Match() call: "} else {"
[lib/valueflow.cpp:615]: (warning) Found simple pattern inside Token::Match() call: "for ("
[lib/symboldatabase.cpp:80]: (warning) Found simple pattern inside Token::Match() call: "= {"
[lib/symboldatabase.cpp:1069]: (warning) Found simple pattern inside Token::Match() call: "std ::"
[lib/tokenize.cpp:2207]: (warning) Found simple pattern inside Token::Match() call: "< >"
[lib/tokenize.cpp:2730]: (warning) Found simple pattern inside Token::Match() call: ";"
[lib/tokenize.cpp:4234]: (warning) Found simple pattern inside Token::Match() call: "try {"
[lib/tokenize.cpp:4235]: (warning) Found simple pattern inside Token::Match() call: "} catch ("
[lib/tokenize.cpp:5500]: (warning) Found simple pattern inside Token::Match() call: "INT8"
[lib/tokenize.cpp:5752]: (warning) Found simple pattern inside Token::Match() call: "}"
[lib/tokenize.cpp:5752]: (warning) Found simple pattern inside Token::Match() call: "do"
|
2014-03-14 16:27:47 +01:00 |
Daniel Marjamäki
|
87c4508954
|
Spell fix: dont => do not
|
2014-02-27 16:40:42 +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 |
Lauri Nurmi
|
70a67eaf85
|
Change some more 0 literals into nullptr.
|
2014-02-16 13:38:50 +02:00 |
Daniel Marjamäki
|
23efc68dd7
|
use nullptr
|
2014-02-16 10:32:10 +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 |