Dmitry-Me
4663dc205a
Cache and reuse value
2017-09-01 18:16:08 +03:00
Daniel Marjamäki
3b4f60fd21
Updated error message
2017-09-01 13:33:47 +02:00
Daniel Marjamäki
7fad1b9a36
Improved checking for opposite conditions
2017-08-31 22:53:21 +02:00
Daniel Marjamäki
dce942197c
Fixed #8186 (Inner condition always false inside for loop)
2017-08-31 16:00:12 +02:00
Dmitry-Me
d598a1c278
Fix typo causing two expressions being identical
2017-08-30 22:43:54 +03:00
Daniel Marjamäki
82527422a8
Fixed #5614 (Incorrect syntax error with function pointer typedef and dependent template types)
2017-08-30 19:18:05 +02: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
Dmitry-Me
017e72d145
Read attribute once, better variable name
2017-08-28 19:11:04 +03:00
Dmitry-Me
7bd3dc5da6
Simplify array access with references
2017-08-28 18:19:03 +03:00
Dmitry-Me
7d19d1ea2e
Better use of temporary
2017-08-28 18:15:15 +03:00
Dmitry-Me
cf6d3ba398
Omit unneeded computations
2017-08-28 18:10:49 +03:00
Daniel Marjamäki
02a1b7cd2d
Fixed #7965 (valueFlowForward: Improved handling of correlated variables)
2017-08-27 19:50:44 +02:00
Daniel Marjamäki
713f607168
Fixed #8156 (wrong ast for 'z = (x & (unsigned)1) | (y & (unsigned)2);')
2017-08-26 23:25:45 +02:00
Daniel Marjamäki
e74e4c6934
Fixed #8030 (False positive 'constStatement' when indexing with {})
2017-08-26 11:59:09 +02:00
Dmitry-Me
cc97834e88
Revert "Combine overlapping patterns"
...
This reverts commit 123f9b67e0
.
2017-08-26 08:18:24 +03:00
Dmitry-Me
123f9b67e0
Combine overlapping patterns
2017-08-26 07:32:02 +03:00
Dmitry-Me
b9c2a996bf
Break loop early
2017-08-26 07:26:28 +03:00
Daniel Marjamäki
46c6620691
Token::takeData: dont keep old values or valuetype
2017-08-25 23:32:26 +02:00
Daniel Marjamäki
ea0db18e0c
Refactor Token::deleteThis()
2017-08-25 23:30:04 +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
Heiko Eißfeldt
bab2b26d10
Fixed #8154 (heap use after free in tokenlist)
2017-08-25 17:17:19 +02:00
Daniel Marjamäki
50636f75ba
ValueFlow: Improved error path for compound assignments
2017-08-24 22:02:49 +02:00
Dmitry-Me
61e290750e
Read attribute once, better variable name
2017-08-24 18:28:52 +03:00
Dmitry-Me
3bcfc33014
Break loop early
2017-08-24 18:26:53 +03:00
Dmitry-Me
45996b1404
Simplify code, read attribute once
2017-08-24 18:23:44 +03:00
Dmitry-Me
eba9ea0ed0
Remove redundant check
2017-08-24 18:11:54 +03:00
Dmitry-Me
2582bbd0f6
Break loop early
2017-08-24 18:10:33 +03:00
Daniel Marjamäki
d160d27417
Fixed #8172 (False positive uninitvar on sizeof *ptr)
2017-08-23 22:17:49 +02:00
Daniel Marjamäki
f10634c021
ValueFlow: Dont try to evaluate '/=0;'
2017-08-23 17:53:05 +02:00
Dmitry-Me
7fba6ecef1
Remove and disallow unused copy constructor
2017-08-23 17:54:20 +03:00
Daniel Marjamäki
167cfb1ac5
valueFlowForward: improve handling of compound assignments
2017-08-23 11:13:47 +02:00
Daniel Marjamäki
71b0370389
Fixed #1793 (CheckType::checkFloatToIntegerOverflow: assignments)
2017-08-23 05:34:47 +02:00
Daniel Marjamäki
b7f9e7ed1d
negativeContainerIndex: avoid crash when AST is wrong
2017-08-22 12:30:43 +02:00
Daniel Marjamäki
2679b576c2
Fixed #1693 (false negative: std::vector, negative index)
2017-08-22 11:04:02 +02:00
Alexander Mai
0cae823c5d
Fix doxygen comments
2017-08-21 21:13:01 +02:00
Daniel Marjamäki
e087156e30
CheckUninitVar: Try to activate the valueflow based checking again
2017-08-20 19:54:06 +02:00
Daniel Marjamäki
3abb62a6d1
Fixed #8036 (valueFlowUninit: strcpy(buf, e = str), free(e);)
2017-08-20 19:47:26 +02:00
Daniel Marjamäki
92e9744020
Fixed #8148 (Tokenizer: Braces are not added properly in do while)
2017-08-16 18:55:34 +02:00
Dmitry-Me
2a4f68ccf8
Resolve CID 1365361
...
* work around possible null pointer dereference in case of missing attributes
2017-08-16 17:53:04 +03:00
Martin Güthle
1d491bd332
Treat noexcept correctly
...
Converts the noexcept to the already correctly handled noexcept(true)
2017-08-16 11:31:19 +02:00
Daniel Marjamäki
5c733c8f22
Fixed #8152 (Garbage code cause crash '0|\0|0>;')
2017-08-15 23:19:42 +02:00
Hinterwaeldlers
705e5e3468
Fix for http://trac.cppcheck.net/ticket/8151 ( #942 )
...
* Taking care of incorrect template syntax (missing close)
Forward the incorrectness via throw, as there is no direct access to the
syntaxError method, without converting the function to a member function
2017-08-15 22:40:55 +02:00
Dmitry-Me
6303437163
Resolve C4800
2017-08-15 17:42:56 +03:00
Dmitry-Me
d3d9c76f01
Fix off by one, resolve C4334
2017-08-14 18:07:36 +03:00
Dmitry-Me
b995e59ff2
No need for counting here
2017-08-14 18:06:23 +03:00
Daniel Marjamäki
ca6109b40c
threadsafety: Fix static data in Token::values()
2017-08-13 14:15:24 +02:00
Daniel Marjamäki
fb37f3503a
Fix GCC compiler warning about missing enum constant PlatformFile in switch
2017-08-12 00:17:55 +02:00
Dmitry-Me
45032f7d3b
Use std mechanism to detect signedness
2017-08-11 18:44:14 +03:00