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
Daniel Marjamäki
cdecbe29d0
Optimisation: Made Tokenizer::simplifyInitVar faster
2010-09-26 15:54:41 +02:00
Pete Johns
fd7ba05fa6
Ignore gcov and doxygen ephemera.
2010-09-26 19:17:47 +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
Kimmo Varis
72759de7a9
GUI: Fix path separators in project file.
...
Qt 4.7 qmake warns about using backslash in paths.
2010-09-26 10:13:21 +03: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
ff7a99ad37
Revert "Optimisation: small speedups in the Tokenizer::simplifyTokenList handling"
...
This reverts commit 056037feed
.
2010-09-24 22:18:51 +02:00
Daniel Marjamäki
056037feed
Optimisation: small speedups in the Tokenizer::simplifyTokenList handling
2010-09-24 22:14:18 +02: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
4c98a7e67b
Optimisation: Removed unused and slow code. The code was added to fix #1225 but it is now redundant.
2010-09-24 20:56:21 +02:00
Daniel Marjamäki
8950beac37
Optimisation to make the CheckUninitVar::parse slightly faster
2010-09-23 21:40:08 +02:00
Pete Johns
d727fa858c
dmake can now be made from ./Makefile
...
Ignore this build artefact as well as the one under ./tools, since that can be built too.
2010-09-23 18:49:12 +10:00
Reijo Tomperi
8a7989c824
Makefile improvements related to clean, dmake and man targets.
2010-09-22 21:25:27 +03:00
Daniel Marjamäki
3f79faac2a
Fixed #2059 (cppcheck gives wrong path in error description)
2010-09-22 19:52:14 +02:00
Daniel Marjamäki
7e954ebb57
Optimisation: optimised Token::Match
2010-09-20 20:15:07 +02:00
Kimmo Varis
bc4c8e6e94
Delete unused VS lib-projects.
...
Those projects are just remainder from tries to create a real library
from the lib code.
2010-09-20 21:09:10 +03:00
Kimmo Varis
ee3a8f8661
VS2010: Remove lib-project from the solution.
...
The lib-project is not really used for anything. It is just remainder
from tries to create real library from lib code.
2010-09-20 21:06:32 +03:00
Daniel Marjamäki
21bf58f1ec
Optimisation: small optimisation of CheckClass::privateFunctions
2010-09-20 19:43:03 +02:00
Kimmo Varis
d0acc16506
Update VS2010 solution/project files.
2010-09-20 18:09:17 +03:00
Pete Johns
46b3a0f532
Autogenerated Makefile updated.
2010-09-20 21:21:33 +10:00
Pete Johns
4934cfa622
Wrapped variables in conditions
...
This allows CXX and CXXFLAGS to be overridden without patching. Added PREFIX for MacPorts compatibility, allowing staging to $(DESTDIR)$(PREFIX)/bin, leaving original behaviour unchanged.
Exit early if run in incorrect directory or if Makefile cannot be written.
2010-09-20 21:16:09 +10:00
Pete Johns
4ca795056f
Fixed syntax error
...
"./runastyle: line 4: --suffix=none: command not found"
2010-09-20 21:16:09 +10:00
Daniel Marjamäki
78e13f098e
Refactorings: Optimised the Token::multiCompare function
2010-09-19 15:14:13 +02: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
6ba5385878
CheckClass: the 'virtual destructor' checking is currently inactive
2010-09-18 19:03:15 +02:00
Daniel Marjamäki
395f10aa6d
Fixed #2053 (false positive on list erase)
2010-09-18 16:46:38 +02:00
Daniel Marjamäki
c1bf388b15
Fixed #2054 (Missing newline in 'invalid parameter' error message)
2010-09-18 16:11:46 +02:00
Daniel Marjamäki
de3c761790
Fixed #2052 (False positive: possible null pointer dereference 'else continue')
2010-09-18 14:56:07 +02:00