Daniel Marjamäki
bdd6d6d53d
null pointer: use simplified token list in the 'check and deref' checking
2010-10-25 21:05:43 +02:00
Daniel Marjamäki
132aa8d0c4
uninitialized variables: fixed fp when analysing loops
2010-10-25 20:56:15 +02:00
Daniel Marjamäki
026514db1a
Fixed #2127 (null pointer dereference after condition (SRD nr 522))
2010-10-25 19:43:54 +02:00
Daniel Marjamäki
41a06a21d9
using deallocated pointer: detect first problem reported in ticket #2090
2010-10-25 17:36:46 +02:00
Zachary Blair
26afb04dc5
Fixed #2105 (Incorrect operator: mutual exclusion over ||)
2010-10-24 18:14:21 -07:00
Daniel Marjamäki
24a2def3ad
Execution Path: Fixed FP in improved handling of loop bodies
2010-10-24 19:14:40 +02:00
Daniel Marjamäki
8f707e5e46
Null pointers: Better handling of loops
2010-10-24 18:51:14 +02:00
Daniel Marjamäki
6601de7681
uninitialized variables: refactoring handling of loop bodies
2010-10-24 18:26:59 +02:00
Daniel Marjamäki
b66d3c8858
Fixed #2125 (uninitialized variable: better handling of for loops)
2010-10-24 18:12:48 +02:00
Daniel Marjamäki
cf86e11d05
Fixed #2111 (Class methods writing to a union are detected as 'can be const')
2010-10-24 16:43:10 +02:00
Kimmo Varis
d605239735
Add missing files to VS2010 project/solution files.
2010-10-24 15:55:36 +03:00
Daniel Marjamäki
306587b1d0
Buffer overruns: Fixed TODO test case
2010-10-24 11:32:27 +02:00
Daniel Marjamäki
381260dfe9
fixed 'deprecated conversion' compiler warning
2010-10-23 16:15:27 +02:00
Daniel Marjamäki
f3c6c64e9a
Fixed #2121 (False positive: Buffer access out-of-bounds when using uint32_t)
2010-10-23 13:12:17 +02:00
Daniel Marjamäki
120073f000
Java: fixed false positives about uninitialized variable
2010-10-23 10:56:30 +02:00
Daniel Marjamäki
5deb046ac5
Fixed #2120 (False positive: array index out of bounds (unknown type in struct, sub function))
2010-10-23 08:49:03 +02:00
Daniel Marjamäki
c907acf767
Fixed #1819 (False positive: auto variable assignment (unseen typedef))
2010-10-22 21:12:56 +02:00
Daniel Marjamäki
9fdc03fc1d
Fixed #2117 (false positive: buffer access out of bounds)
2010-10-22 20:15:51 +02:00
Lauri Nurmi
91e66e74d0
Fixed #2099 (Show an error if none of the given paths was found)
2010-10-22 17:09:50 +02:00
Daniel Marjamäki
5ef02b6c0a
memleak: activated todo test case. ticket: #1401
2010-10-21 22:33:40 +02:00
Daniel Marjamäki
eba827bc4b
Fixed #2112 (Crash scanning qtcreator sources)
2010-10-21 19:42:09 +02:00
Daniel Marjamäki
6a66d32871
JAVA: better handling of java code
2010-10-20 22:15:35 +02:00
Daniel Marjamäki
8b866178ff
Fixed #2103 (false positive when variable is checked to NULL and not freed)
2010-10-20 20:38:37 +02:00
Daniel Marjamäki
68dd2f8378
Fixed #2113 (False positive: Memory leak where a pointer is passed in a struct to another function to be freed)
2010-10-20 18:39:40 +02:00
Daniel Marjamäki
02ba2b202e
Fixed #2110 (Tokenizer::simplifyTypedef: regression - wrong simplification of 'typedef char TString[256];')
2010-10-20 06:09:29 +02:00
Daniel Marjamäki
f8c02718a5
Activated checking of .java and .cs files
2010-10-19 21:54:15 +02:00
Daniel Marjamäki
20674e08d0
Stl: improved check for dangerous usage of c_str
2010-10-19 20:21:58 +02:00
Daniel Marjamäki
2ca7dbc004
Fixed #2109 (false positive: buffer overrun)
2010-10-19 18:23:44 +02:00
Daniel Marjamäki
0864a0700a
Fixed #2108 (False positive: the loop might unintentionally skip an element in the container.)
2010-10-18 20:05:54 +02:00
Daniel Marjamäki
e54129fa8d
STL: check for dangerous usage of string::c_str(). Ticket: #1116
2010-10-17 19:18:46 +02:00
Daniel Marjamäki
92a1e9e76e
Severities: Added 'warning' and 'performance' severities. No changes to the command line options nor to the XML format. Ticket: #2106
2010-10-17 14:41:00 +02:00
Kimmo Varis
0bb6e22d53
Add missing files to VS2010 project files.
2010-10-17 00:16:39 +03:00
Kimmo Varis
00e5ca2299
Add missing files to VS projects.
...
Part of fixing ticket #2101 .
2010-10-17 00:00:53 +03:00
Daniel Marjamäki
0b6948a805
Fixed #2101 (list in vector iterator usage)
2010-10-15 18:11:41 +02:00
Daniel Marjamäki
ba2b986ece
Fixed #2097 (false positive: buffer access out of bounds)
2010-10-14 20:00:32 +02:00
Daniel Marjamäki
e11d9f1628
astyle formatting
2010-10-14 19:59:10 +02:00
Debrard Sebastien
fb928b6778
Fixed #2018 (Postfix Operators)
2010-10-14 19:17:40 +02:00
Daniel Marjamäki
b6c995ea47
Fixed #2096 (False positive: buffer overrun (extern array))
2010-10-13 20:57:59 +02:00
Robert Reif
267d1f273e
Fixed #2082 (Tokenizer::simplifyTypedef: wrong handling of array)
2010-10-13 20:02:37 +02:00
Daniel Marjamäki
229604b3e3
Fixed #2093 (False positive: buffer access out of bounds (unknown type))
2010-10-13 18:06:50 +02:00
Pete Johns
fbd3d92aa9
Fixed #2084 (False positive: object destroyed immediately (struct and function with same name))
...
Tightened up class definition matching so as not to match C-style struct tags.
2010-10-13 20:37:53 +11:00
Robert Reif
a58094e827
Fixed #2089 (False negative: Function can be const (calling const function))
2010-10-13 07:26:41 +02:00
Daniel Marjamäki
2334192bff
Fixed #2087 (False positive: Array 'str[1]' index 1 out of bounds)
2010-10-12 21:52:02 +02:00
Debrard Sebastien
1a4e3dcc44
increment check
2010-10-12 19:54:39 +02:00
Daniel Marjamäki
9e15c4ef38
Fixed #2088 ([test.c:12]: (error) Buffer access out-of-bounds: l)
2010-10-12 19:35:20 +02:00
Robert Reif
907ed0ac6f
Fixed #2085 (False negative: function can be const when member variable is compared)
2010-10-12 07:57:09 +02:00
Daniel Marjamäki
74bf1821e6
Array index: detect array index out of bounds when datatype is unknown. Ticket: #2086
2010-10-11 20:52:14 +02:00
Daniel Marjamäki
3dfcbfc0e0
assignment in assert: modified the error message to better explain the reason why the warning is given.
2010-10-11 17:59:08 +02:00
Zachary Blair
d9967d4fd2
Fixed #2079 (detect side effects in assert)
2010-10-10 13:05:06 -07:00
Daniel Marjamäki
81aed3fbd7
Tokenize: Fixed bug in Tokenize::simplifyKnownVariables
2010-10-10 19:27:42 +02:00
Daniel Marjamäki
f427fdb856
STL: Added TODO test case for the new double-increment check
2010-10-10 17:55:14 +02:00
Daniel Marjamäki
ef4ce6f46b
STL: fixed false positives in the new double-increment check when iterator shadows outer iterator
2010-10-10 14:28:14 +02:00
Daniel Marjamäki
3340010376
fix unit testing
2010-10-10 14:23:05 +02:00
Daniel Marjamäki
ae0528ef59
STL: fixed false positives for the new double-increment check
2010-10-10 11:22:44 +02:00
Daniel Marjamäki
835b511bee
STL: Added double-increment check.
2010-10-10 10:52:41 +02:00
Daniel Marjamäki
a73ada54d5
Fixed #1705 (false negative: access past end of buffer)
2010-10-10 09:15:18 +02:00
Daniel Marjamäki
14f12e0647
Fixed #2078 (false negative: member variable not intialized)
2010-10-10 07:57:26 +02:00
Daniel Marjamäki
a3367874d9
Fixed #1778 (false negative: nullpointer dereference (std::string pointer))
2010-10-09 07:57:34 +02:00
Daniel Marjamäki
068317bed1
STL: Fixed TODO test case TestStl::erase5
2010-10-09 07:15:34 +02:00
Daniel Marjamäki
f2ba1c6171
Unit testing: Added TODO test case TestStl::erase5
2010-10-08 21:52:18 +02:00
Daniel Marjamäki
50603f44eb
Unit testing: activated TODO test
2010-10-08 21:41:52 +02:00
Daniel Marjamäki
e0ba626351
ClassInfo: Removed unused functionality
2010-10-08 19:43:41 +02:00
Robert Reif
24eba7ef02
Unit Testing: Added more typedef tests
2010-10-08 16:00:21 +02:00
Daniel Marjamäki
7b4e08385d
STL: refactoring CheckStl::erase so ExecutionPath is used
2010-10-05 20:54:13 +02:00
Pete Johns
4bf9ff26ea
Fixed 2071 (false positive: object destroyed immediately (when using '= { ... }'))
...
Simplified check within CheckOther::checkMisusedScopedObject() as a result.
2010-10-04 08:16:11 +11:00
Daniel Marjamäki
cd8ef1cded
Revert "temporarily disable the 'object destroyed immediately' message"
...
This reverts commit fa94312c9a
.
2010-10-03 18:05:08 +02:00
Daniel Marjamäki
fa94312c9a
temporarily disable the 'object destroyed immediately' message
2010-10-03 16:59:13 +02:00
Pete Johns
78795dc3ac
Fix false positive: Misused Scope Object does not pick constructors of local class declarations.
...
It does pick up if there is an unused construction within the function, though.
2010-10-02 22:59:04 +10:00
Daniel Marjamäki
e4c3b390cc
Fixed #2069 (cppcheck fails to scan OpenBSDs ftp source code)
2010-10-02 13:28:44 +02:00
Pete Johns
365b1bed1a
Fixed false positive: checkMisusedScopedObject no longer errors on calls to function objects.
2010-10-02 21:25:16 +10:00
Pete Johns
9a9302cba1
Prevent Tokenizer::simplifyCalculations() from removing parantheses from calls to Functors.
2010-10-02 21:19:05 +10:00
Daniel Marjamäki
a58ba811a6
Unit Testing: added missing TEST_CASE
2010-10-02 12:44:38 +02:00
Pete Johns
b72b699b76
Fixed false-positive: Object is referenced on construction
...
struct Foo {
void bar() {
}
};
void fn() {
Foo().bar(); // This caused a false-positive
}
2010-10-02 20:26:29 +10:00
Pete Johns
3f72d3a877
Check misused scope object does not pick local class method.
...
Also fixed mistyped withinFuntion ->withinFunction.
2010-10-02 20:12:52 +10:00
Pete Johns
0017655f55
Added test for functor false-positive [passing]
...
Also removed typedef's following danmar's review and renamed isClassresults -> isClassResults to make more clear.
2010-10-02 18:45:24 +10:00
Daniel Marjamäki
19d67757b1
Visual Studio: updated test/test.vcproj
2010-10-02 09:43:28 +02:00
Daniel Marjamäki
bdb3c06c36
Visual Studio: Fixed compiler error. It seems visual studio 2008 doesn't like 'not'.
2010-10-02 09:42:31 +02:00
Pete Johns
6e0ef3eda2
Fixed #1132 (Detection of misused scope objects in functions)
...
Emits error in the form:
[useless_lock.cpp:18]: (error) instance of "Lock" object destroyed immediately
...if an instance of a class or struct is unnamed and therefore destroyed
straight after creation.
Only checks for misused scope objects within functions.
Optimised isIdentifierObjectType() by memoizing.
2010-10-02 14:22:26 +10:00
Pete Johns
50c2fa9ab0
Revert "Fixed #1132 (Detection of misused scope objects)"
...
This reverts commit c6acdccfa0
.
2010-10-01 20:52:16 +10:00
Pete Johns
c6acdccfa0
Fixed #1132 (Detection of misused scope objects)
...
Emits error in the form:
[useless_lock.cpp:18]: (error) instance of "Lock" object destroyed immediately
...if an instance of a class or struct is unnamed and therefore destroyed
straight after creation.
Removed "internal error" from token.cpp, since in this case varid would be NULL.
2010-10-01 20:30:21 +10:00
Daniel Marjamäki
6eeed00888
Fixed #2067 (Template methods do not 'use' private ones)
2010-09-30 21:22:49 +02:00
Daniel Marjamäki
415cbc63c3
Fixed #2066 (false positive: uninitialized variable when initializing through function pointer)
2010-09-27 19:26:09 +02:00
Daniel Marjamäki
80069f016e
Fixed #2065 (false positive: memory leak)
2010-09-27 17:53:10 +02:00
Pete Johns
6a52538a9a
Fixed #1949 : assert() hides memory leaks
...
Added separate unit-test (trac1949), initially broken to highlight the error and added "assert" to call_func_white_list.
Left TestMemleakInFunction::call_func() as is, as this wouldn't highlight the actual problem.
2010-09-27 20:25:34 +10:00
Pete Johns
a801d3162e
Added Doxygen commenting, per kimmov's request.
...
Of course test/ is not covered currently by the settings in doxyfile.
2010-09-26 19:15:14 +10:00
Pete Johns
afc6d4507d
Removed static std::string.
...
which_test() doesn't have to calculate anything, could be inlined.
2010-09-26 16:52:30 +10:00
Pete Johns
5dc4759598
Replaced TODO in numeric test with two passing tests.
...
Just getting to grips with how the tokenizer behaves.
2010-09-26 16:39:19 +10:00
Pete Johns
acad87c3e3
Improved test coverage.
...
Refactored to extract givenACodeSampleToTokenize, reducing LOC.
2010-09-26 13:31:36 +10:00
Pete Johns
97a68bdcee
Added `check` target.
...
Runs the test as per `make test`, but with less verbosity.
-g GCC-style errors
-q quiet tests
2010-09-26 13:29:23 +10:00
Pete Johns
10396911ca
Renamed RedirectInputOutput -> RedirectOutputError
...
This class does not redirect input.
2010-09-26 13:22:11 +10:00
Pete Johns
77089293c6
Extracted Error and Output redirection.
...
Making reuse possible.
2010-09-26 13:19:30 +10:00
Daniel Marjamäki
86e517c5d3
Fixed #1951 (Preprocessor: Compound macro statements not handled correctly)
2010-09-24 21:38:11 +02:00
Daniel Marjamäki
3f79faac2a
Fixed #2059 (cppcheck gives wrong path in error description)
2010-09-22 19:52:14 +02:00
Kimmo Varis
d0acc16506
Update VS2010 solution/project files.
2010-09-20 18:09:17 +03:00
Daniel Marjamäki
78bd66cd5c
Fixed #2056 (False positive: Resource leak)
2010-09-19 12:16:29 +02:00
Daniel Marjamäki
a6ff3681bb
Fixed #1802 (Preprocessor: macros are expanded wrong)
2010-09-18 22:20:01 +02:00
Daniel Marjamäki
e2ef26cb2e
STL: added TODO test case
2010-09-18 20:08:34 +02:00
Daniel Marjamäki
a7cf68b9ef
Check Class: Removed the 'operator= should not return a const reference'
2010-09-18 20:05:34 +02:00
Daniel Marjamäki
395f10aa6d
Fixed #2053 (false positive on list erase)
2010-09-18 16:46:38 +02:00
Daniel Marjamäki
de3c761790
Fixed #2052 (False positive: possible null pointer dereference 'else continue')
2010-09-18 14:56:07 +02:00