Daniel Marjamäki
ce595dd5c7
Merge branch 'master' of git@github.com:danmar/cppcheck
2009-07-21 07:41:43 +02:00
Reijo Tomperi
973bb164ea
Fix ticket #486 (C-style pointer casting misses const pointers)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/486
2009-07-20 22:52:27 +03:00
Daniel Marjamäki
0e208eb52f
null pointer dereferencing: fixed another false positive ( #485 )
2009-07-20 19:59:55 +02:00
Daniel Marjamäki
05a1c50ff2
null pointer dereferencing: removed a few false positives in the new check that I added ( #485 )
2009-07-20 19:30:33 +02:00
Daniel Marjamäki
b7ba49114c
Fixed #485 (detect when code is checking for null after dereferencing)
2009-07-20 18:53:41 +02:00
Daniel Marjamäki
74699cab66
memory leak for struct member: made the checking more sensitive. Skip bail-out execution paths were the member is properly deallocated
2009-07-20 14:39:24 +02:00
Daniel Marjamäki
ddaea3244d
memleak: implemented simple checking for leaking struct members
2009-07-19 16:51:31 +02:00
Slava Semushin
d961e4b5c1
test/testrunner.cpp: fixed exit code when count of fails tests equals to 256.
...
When 256 tests fails return code was 0 and it was wrong. Now exit code
may be only 0 or 1 and not show how many tests fails.
Thanks to aggro80@ for pointing to this!
2009-07-19 03:12:55 +07:00
Daniel Marjamäki
ffac9281c4
astyle formatting
2009-07-18 20:35:22 +02:00
Slava Semushin
2ba0897ecb
src/checkmemoryleak.cpp: added fchmod() function to white list.
2009-07-18 23:48:48 +07:00
Slava Semushin
d3490abd64
Finally fixed ticket #284 (style check: redundant condition improvement)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/284
2009-07-18 21:42:08 +07:00
Slava Semushin
d04eeb4fd4
Fixed ticket #481 (testrunner should exit with non-zero status if one of tests fails)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/481
2009-07-18 19:08:10 +07:00
Slava Semushin
a0a526a205
Fixed ticket #464 (resource leak not detected when getc is used on the file handle)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/464
2009-07-18 18:32:55 +07:00
Slava Semushin
53c120c701
Fixed ticket #479 (varId not assigned to reference to standart container)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/479
2009-07-18 17:41:46 +07:00
Slava Semushin
aab06eaeab
Fixed ticket #477 (Bug in Token::Match() during process TestStl::pushback3)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/477
2009-07-18 17:06:51 +07:00
Daniel Marjamäki
2ccc01f5ed
tokenizer: improved the Tokenizer::simplifyIfNot
2009-07-18 10:18:46 +02:00
Slava Semushin
5dea30519c
Fixed ticket #459 (false positive::Member variable not initialized in constructor)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/459
2009-07-17 23:50:49 +07:00
Kimmo Varis
40ccd4d1ac
Add QMake project files for core and tests.
...
Ticket #472 (QMake project file to build cppcheck core).
2009-07-14 14:36:05 +03:00
Daniel Marjamäki
456c20b705
fixed todo test case - detect iterator usage after push_front|push_back
2009-07-14 12:40:47 +02:00
Daniel Marjamäki
69b1df3bb8
tokenizer: simplify the '?:' operator
2009-07-14 12:06:38 +02:00
Daniel Marjamäki
f4de77cefc
simplify tokens: simplify test cases
2009-07-14 11:37:26 +02:00
Daniel Marjamäki
17008879ac
minor refactoring: header cleanup. use forward declarations instead of includes
2009-07-13 19:11:31 +02:00
Daniel Marjamäki
18f9e05f5a
refactoring: Renamed checking classes
2009-07-13 16:00:15 +02:00
Kimmo Varis
6393498966
Astyle fixes.
2009-07-13 16:51:35 +03:00
Daniel Marjamäki
7d35447d80
refactoring: renamed the severity "all" to "possible error"
2009-07-13 10:16:31 +02:00
Daniel Marjamäki
03f3ee62a0
cleanup: removed deprecated files. security checking and errmsg
2009-07-12 19:18:38 +02:00
Daniel Marjamäki
b86b07827a
unused private functions: don't check classes declared in header files unless it is known that their whole implementation is seen
2009-07-12 14:23:01 +02:00
Daniel Marjamäki
36896e1ca0
better description for the message with id strncatUsage
2009-07-11 12:16:38 +02:00
Daniel Marjamäki
59372199e3
Revert "cppcheck: Now it's possible to change the output format, for example to a visual studio compliant format"
...
This reverts commit 91a8dbd7b9
.
2009-07-10 22:38:26 +02:00
Daniel Marjamäki
91a8dbd7b9
cppcheck: Now it's possible to change the output format, for example to a visual studio compliant format
2009-07-08 14:38:13 +02:00
Daniel Marjamäki
0ea09b1cb6
templates: simplified a todo test case by removing a redundant function from the code
2009-07-08 09:38:59 +02:00
Daniel Marjamäki
2a02041fd8
memleak: fixed todo test case
2009-07-07 15:22:37 +02:00
Daniel Marjamäki
ddc1ad7d4d
Fixed #431 (Unused private function, wrong line when two functions with same name)
2009-07-07 08:55:14 +02:00
Daniel Marjamäki
9d1d7ebf8d
Fixed #382 (False positive: public function flagged as 'Unused private function')
2009-07-07 08:30:23 +02:00
Daniel Marjamäki
7b2f6b6173
addon to previous commit - changed ASSERT_EQUALS to TODO_ASSERT_EQUALS for the todo test case
2009-07-06 12:38:04 +02:00
Daniel Marjamäki
5efb834f36
Memory leaks: Added a simple todo test case
2009-07-06 12:33:31 +02:00
Daniel Marjamäki
9beb73824b
Fixed #446 (memory leak false positive when variable is static)
2009-07-06 12:20:13 +02:00
Daniel Marjamäki
a6ac747830
tokenizer: Don't simplify declarations of static variables
2009-07-06 11:45:14 +02:00
Reijo Tomperi
8b0e481d46
Refactoring: Rename member functions to follow naming guidelines.
2009-07-05 23:16:43 +03:00
Reijo Tomperi
f676deb208
Test case improvement, unused function removed from tokenizer.
2009-07-05 22:37:53 +03:00
Reijo Tomperi
e858ab2f0d
Fix ticket #457 (False positive: Member variable not assigned a value in copy constructor)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/457
Simplify "a = 0, b = 0;" into "a = 0; b = 0;"
2009-07-05 21:29:09 +03:00
Reijo Tomperi
290aefaa3d
TODO Test case TestSimplifyTokens::remove_comma added
2009-07-04 18:06:25 +03:00
Reijo Tomperi
26358debcf
Fix ticket #448 (false positive:: resource leak)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/448
Tokenizer improved to simplify "if( (p)==-1 )"
2009-07-03 21:57:44 +03:00
Reijo Tomperi
b2474fd980
Fix ticket #452 (Failure to detect "member var not initialized in constructor" if class inherits)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/452
2009-07-03 21:22:14 +03:00
Reijo Tomperi
751a31ed91
Fix ticket #445 (simple to avoid false positive for buffer overflow)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/445
Simple bailout in case "if" is found inside the for-loop.
2009-06-30 00:42:46 +03:00
Daniel Marjamäki
7ec8e2396f
Fix ticket #267 (Glued define and define name in output text)
...
The handling of ifdef configurations where rewritten. Either a
configuration is handled properly or it is not handled at all.
2009-06-26 13:19:55 +02:00
Daniel Marjamäki
13ca5f89be
added test case
2009-06-23 18:29:43 +02:00
Reijo Tomperi
bdf1987cc4
Fix ticket #435 (False positive: Invalid number of character when ({}) is used in code)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/435
2009-06-22 23:54:11 +03:00
Slava Semushin
13e805f332
Fixed ticket #399 (Add detection for resource leaks after open() usage)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/399
2009-06-21 22:01:43 +07:00
Daniel Marjamäki
8715ba1458
CheckMemoryLeakInFunction: More sensitive checking when the code calls an unknown function
2009-06-21 14:12:59 +02:00
Daniel Marjamäki
f28dec1f5a
detect memory leak when all is given when calling an unknown function
2009-06-21 13:48:39 +02:00
Daniel Marjamäki
a0ba52ccf1
Preprocessor: Replace "#if !defined(A)" with "#ifndef A"
2009-06-21 08:03:42 +02:00
Reijo Tomperi
ac6e7b40e5
Fix ticket #426 (Problem with include)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/426
2009-06-20 23:13:19 +03:00
Daniel Marjamäki
8a3ec4549b
Fixed #425 (False positive: usage of char variable.. c = c & 0x03)
...
Using char variables in bit operations are ok if:
* the result is stored in a char
* the variable is and'ed with a number that is less than 0x100
2009-06-20 19:24:58 +02:00
Daniel Marjamäki
453a5cdd47
Fixed ticket #411 (false positive: resource leak in while loop)
2009-06-20 13:58:30 +02:00
Daniel Marjamäki
13b8f10906
refactoring testcases for Tokenizer::simplifyAddBraces
2009-06-20 13:20:51 +02:00
Daniel Marjamäki
03944f1b96
Tokenizer: Fixed problem when simplifying casts
2009-06-19 19:25:56 +02:00
Reijo Tomperi
5f7d88b36c
Fix ticket #416 (False positive: Redundant code)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/416
2009-06-19 19:03:09 +03:00
Daniel Marjamäki
6e1281ec34
Preprocessor: Better handling of macros that has parantheses but not parameters such as "#define AAA( ) aaa"
2009-06-19 16:42:47 +02:00
Daniel Marjamäki
58c7414ce0
Fixed ticket #417 (Crashes in windows because of invalid char value)
...
negative char values are allowed in strings and comments. but not in other code.
2009-06-19 15:43:46 +02:00
Daniel Marjamäki
12c9f09780
Fixed #420 (WarningOldStylePointerCast() needs a test case)
2009-06-19 12:01:27 +02:00
Kimmo Varis
3da3c74f6f
Revert "Fix ticket #417 (Crashes in Windows because of invalid char value)"
...
This reverts commit 70db2562f4
.
See the ticket - the fix was not correct fix.
2009-06-19 10:20:15 +03:00
Kimmo Varis
1619b6cb0f
Merge branch 'master' of git@github.com:danmar/cppcheck
2009-06-19 00:11:17 +03:00
Daniel Marjamäki
d5d96d2535
Merge branch 'master' of git@github.com:danmar/cppcheck
2009-06-18 23:10:16 +02:00
Kimmo Varis
48ac595ae0
Merge branch 'master' of git@github.com:danmar/cppcheck
2009-06-19 00:09:37 +03:00
Daniel Marjamäki
12f3ac5a2f
Preprocessor: better handling of "..." and "__VA_ARGS__" in macros
2009-06-18 23:09:11 +02:00
Kimmo Varis
70db2562f4
Fix ticket #417 (Crashes in Windows because of invalid char value)
...
8-bit characters and UTF-8 characters are now converted to spaces. They can only appear in the code files in comments or string/char constants. So we cannot just ignore them as that would change length.
2009-06-19 00:09:05 +03:00
Reijo Tomperi
e8d1905e6d
Fix ticket #418 (delete a,b; not tokenized correctly)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/418
2009-06-19 00:00:16 +03:00
Reijo Tomperi
b7171c3cd2
Fix ticket #413 (false positive: C-style pointer casting for pure virtual function)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/413
2009-06-18 23:26:21 +03:00
Reijo Tomperi
c28cd3f82e
astyle fix
2009-06-18 21:05:42 +03:00
Slava Semushin
fafc261611
Fixed ticket #278 (variable id: references are not handled correctly)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/278
2009-06-18 23:30:04 +07:00
Daniel Marjamäki
5d0d21d668
Fixed a false positive (memory leak)
...
This false positive was first discovered in the VLC sourcecode. The TestMemoryLeakInFunction::simple11 test case is a simplified test code of that code.
2009-06-17 21:42:49 +02:00
Reijo Tomperi
f8b3a57682
Fix ticket #309 (false positive::is not assigned a value in 'A::operator=')
...
http://sourceforge.net/apps/trac/cppcheck/ticket/309
2009-06-17 00:58:16 +03:00
Daniel Marjamäki
b7c9a4ed8c
Created a new class for detecting leaks (forgetting to free struct members)
2009-06-16 22:01:04 +02:00
Daniel Marjamäki
ed98f1b367
Fixed #131 (Regression: leak reported by 1.27 is not reported by 1.29)
...
The leak will be reported as a definite bug again. Not just a possible bug.
cppcheck don't know if the execution path is possible, but it knows that if the execution path is taken the memory leak will be certain.
2009-06-16 19:05:05 +02:00
Daniel Marjamäki
a81b6487bf
Improved the "CheckMemoryLeak::functionReturnType"
2009-06-15 21:13:39 +02:00
Daniel Marjamäki
433ff048a4
Fixed #264 (Memory Leak: alloc by assigning to a return value)
...
The fix was inspired by the previous patch submitted by hoangtuansu
2009-06-15 17:44:59 +02:00
Reijo Tomperi
7c4423889c
Fixed ticket #405 (#ifdef A and #if defined A should be handled as same configuration)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/405
2009-06-14 23:37:18 +03:00
Slava Semushin
8c327f82b3
Fixed ticket #346 (adding a "const" token prevents detection of memory leak)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/346
2009-06-15 00:32:34 +07:00
Daniel Marjamäki
af7c63155e
Fixed #387 (Templates: template functions that return a pointer are not simplified correctly)
...
* Fixed so that the tokenizer handle variable declarations better when the variable is assigned the return value of a template function
* Fixed so that the simplifyTemplates detect that a template function is used when its return value is taken
2009-06-14 14:57:47 +02:00
Daniel Marjamäki
c56c913635
Merge branch 'master' of git@github.com:danmar/cppcheck
2009-06-14 11:30:22 +02:00
Daniel Marjamäki
be52e573f3
Fixed ticket #387 (Templates: template functions that return a pointer are not simplified correctly)
2009-06-14 11:28:25 +02:00
Slava Semushin
bc32d04efa
Replace tok->previous()->previous() call to tok->tokAt(-2).
...
Done by command:
git grep -l 'previous()->previous()' | xargs sed -i 's|previous()->previous()|tokAt(-2)|'
No functional change.
2009-06-14 13:33:45 +07:00
Slava Semushin
4245047674
Replace tok->next()->next() call to tok->tokAt(2).
...
Done by command:
git grep -l 'next()->next()' | xargs sed -i 's|next()->next()|tokAt(2)|'
No functional change.
2009-06-14 13:33:45 +07:00
Slava Semushin
4dd3835617
Embed errout.str() into ASSERT_EQUALS() call.
...
Get rid of useless variables.
No functional change.
2009-06-14 13:33:44 +07:00
Daniel Marjamäki
2307395d6e
Fixed ticket #373 (False unused functions)
...
Skip template functions when checking for unused functions
2009-06-14 07:58:36 +02:00
Slava Semushin
084b3c002f
Fixed ticket #403 (false positive::Array index out of range)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/403
2009-06-14 11:21:20 +07:00
Daniel Marjamäki
777790ebc7
Fixed ticket #367 (Deallocating a deallocated pointer false positive when va_list used)
...
The overall matching of functions when calls are made were improved.
2009-06-12 17:31:29 +02:00
Daniel Marjamäki
35b6b2588e
Fixed ticket #374 (False positive: The scope of variable can be limited)
...
A few refactorings and fixes were made
2009-06-12 16:17:51 +02:00
Slava Semushin
cba0d9e130
Fixed ticket #392 (false positive and wrong allocation and deallocation not detected)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/392
2009-06-12 21:14:01 +07:00
Slava Semushin
7bee0cd2df
Fixed ticket #390 (wrong allocation and deallocation not detected)
...
http://sourceforge.net/apps/trac/cppcheck/ticket/390
2009-06-12 20:04:58 +07:00
Reijo Tomperi
092bd79ec4
Fix ticket #386 (False positive (memory leak) with comma)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/386
2009-06-11 00:12:26 +03:00
Daniel Marjamäki
d8f95f68c3
Fixed ticket #377 (False positive with "char a[]")
...
Updated the tokenizer so "char a[]" is tokenized into "char *a"
2009-06-10 19:36:00 +02:00
Slava Semushin
fe5d0c56ba
Merge branch 'master' of git@github.com:danmar/cppcheck
2009-06-10 01:56:26 +07:00
Slava Semushin
d9f2dd385b
test/testrunner.cpp: removed unused headers.
...
No functional change.
2009-06-10 01:52:42 +07:00
Daniel Marjamäki
a71d260308
Refactoring: Moved CheckOther::returnPointerToLocalVariable to CheckAutoVariables
2009-06-09 19:45:58 +02:00
Daniel Marjamäki
2c07c22d9e
Refactoring: Split up the CheckMemoryLeak into CheckMemoryLeakInFunction and CheckMemoryLeakInClass
2009-06-08 20:20:43 +02:00
Daniel Marjamäki
15dbf9c085
Refactoring: Renaming the CheckMemoryLeakClass to CheckMemoryLeak. Deleted testmemleakmp
2009-06-08 18:51:17 +02:00
Daniel Marjamäki
51736bae8b
deleted the testmemleakmp file
2009-06-08 18:36:54 +02:00
Daniel Marjamäki
d7fa3e6dda
Refactoring: Renamed CheckFunctionUsage to CheckUnusedFunctions
2009-06-07 22:12:20 +02:00
Reijo Tomperi
9bac4aca75
Fix ticket #371 (Resource leak when exit() and if() uses together)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/371
2009-06-07 09:55:20 +03:00
Daniel Marjamäki
5747133fa8
Fix #370 (Assign auto variable to parameter false positive)
2009-06-06 21:25:41 +02:00
Daniel Marjamäki
a8c5526c84
Fix #368 (Leak detected when allocated memory assigned to member of structure which returned from function)
...
The return value of strcpy wasn't handled very well
2009-06-06 20:55:16 +02:00
Daniel Marjamäki
acaa22ff6c
Refactoring: Simple code cleanup
2009-06-06 14:48:48 +02:00
Daniel Marjamäki
dd473b074a
Fix #153 (Unsigned divide)
...
The "unsigned i" variable declaration wasn't handled well. So I added an "int" token.
2009-06-06 10:40:48 +02:00
Reijo Tomperi
9cd5558f5e
Fix ticket #364 (false positive:: division by zero)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/364
2009-06-06 00:33:13 +03:00
Reijo Tomperi
90b786b09c
Fix ticket #353 (No pair for character (').)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/353
2009-06-05 23:45:31 +03:00
Daniel Marjamäki
cfb4e91986
Fix #359 (Incorrect unused function)
2009-06-05 15:02:26 +02:00
Daniel Marjamäki
d0f3dccc6d
Fixed #354 (false positive: memory leak)
2009-06-05 08:56:46 +02:00
Slava Semushin
21e0639443
Fixed ticket #360 (Teach about new(std::nothrow) form)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/360
2009-06-05 11:03:48 +07:00
Slava Semushin
58781c761c
Fixed ticket #329 (snprintf size is out of bounds when two variables in one scope with similar names)
...
FIXME:
Because it's fix for simplifyTokenList() test should be moved to
test/testsimplifytokens.cpp file.
http://apps.sourceforge.net/trac/cppcheck/ticket/329
2009-06-05 09:53:34 +07:00
Slava Semushin
52a8368b02
Strip redundant std::string usage from tests.
...
Second round: handle empty strings.
Done by command:
git grep -l ASSERT_EQUALS | xargs sed -i 's|ASSERT_EQUALS(std::string(\(".*"\)),|ASSERT_EQUALS(\1,|'
Should be no functional change.
2009-06-05 07:43:55 +07:00
Slava Semushin
6745d9b8ef
Fixed ticket #358 (Local typedef flagged as uninitialized member)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/358
2009-06-05 07:34:12 +07:00
Reijo Tomperi
1bb7b01a06
Fix ticket #352 (Memory leaks: Missed memory leak when "--all" is not given)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/352
Detect memory leaks without --all when there is "alloc ; assign callfunc ;
2009-06-03 23:20:33 +03:00
Reijo Tomperi
3428584925
Fix ticket #351 (false positive::resource leak)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/351
2009-06-03 22:02:16 +03:00
Daniel Marjamäki
b4c637c58b
Fixed #350 (False positive: Array index out of bounds)
2009-06-02 18:56:53 +02:00
Daniel Marjamäki
6ef87e8eab
Fixed #339 (Buffer overrun not detected with pointer arrays)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/339
2009-06-01 19:21:08 +02:00
Slava Semushin
37a485f4f0
Fixed ticket #349 (Add detection for resource leaks after tmpfile() usage)
...
https://apps.sourceforge.net/trac/cppcheck/ticket/349
2009-06-01 17:40:24 +07:00
Slava Semushin
09fce76e30
Fixed ticket #348 (Simplify sizeof for pointers)
...
https://apps.sourceforge.net/trac/cppcheck/ticket/348
2009-06-01 17:01:45 +07:00
Slava Semushin
e5c0383594
Strip redundant std::string usage from tests.
...
Done by command:
git grep -l ASSERT_EQUALS | xargs sed -i 's|ASSERT_EQUALS(std::string(\(".\+"\)),|ASSERT_EQUALS(\1,|'
Should be no functional change.
2009-06-01 02:50:25 +07:00
Reijo Tomperi
2de4c516e9
Fixed ticket #338 (Simplify sizeof for pointer arrays) by patch submitted by php-coderrr
...
http://apps.sourceforge.net/trac/cppcheck/ticket/338
2009-05-31 22:33:44 +03:00
Daniel Marjamäki
2120edb89b
Variable Id: structs must not have variable id
2009-05-31 18:46:32 +02:00
Reijo Tomperi
3fe1b50e60
Fix ticket #344 (Tokenizer crash in Windows)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/344
2009-05-31 15:55:06 +03:00
Daniel Marjamäki
aba7518aeb
Fixed ticket #345 ('!' and 'not' tokens interpreted differently even though they mean the same)
2009-05-31 10:42:27 +02:00
Daniel Marjamäki
8b76301ee2
Fix ticket #318 ('..' in include will cause conflicting slashes in messages)
2009-05-31 10:12:19 +02:00
Daniel Marjamäki
375dfeab06
Fix for #341 (Functions passed as pointer not detected as used)
2009-05-31 08:01:16 +02:00
Daniel Marjamäki
bf98ff85e5
Memory leaks: calling function that deallocates the memory and allocates new memory
...
https://apps.sourceforge.net/trac/cppcheck/ticket/336
2009-05-30 20:30:44 +02:00
Reijo Tomperi
58eda6e978
Fix ticket #325 (Replace developer names in source files with AUTHORS file)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/325
2009-05-30 08:48:12 +03:00
Reijo Tomperi
8876f0ee57
Fix ticket #342 (Simplify "if( (true) == true )")
...
http://apps.sourceforge.net/trac/cppcheck/ticket/342
2009-05-30 00:04:01 +03:00
Reijo Tomperi
a015704591
Changed expected result for test case TestTokenizer::removeParantheses3 to simplify it more
2009-05-28 23:13:15 +03:00
Reijo Tomperi
a3be307c03
Fix bug related to ticket #330 , cppcheck hanged with some files containing "(("
...
http://apps.sourceforge.net/trac/cppcheck/ticket/330
2009-05-28 23:03:36 +03:00
Daniel Marjamäki
a3990648a9
Tokenizer: Simplifying redundant parantheses
...
http://apps.sourceforge.net/trac/cppcheck/ticket/330
2009-05-28 19:37:39 +02:00
Reijo Tomperi
adb1ed4947
Fix ticket #319 (Function names are tagged as variables)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/319
2009-05-27 23:34:08 +03:00
Reijo Tomperi
d6a34dafb2
Added test case TestMemleak::dealloc_and_alloc_in_func
2009-05-27 22:16:54 +03:00
Daniel Marjamäki
ca6d927dfa
Fix ticket 330 (found memory leak when __builtin_expect uses)
2009-05-27 20:49:29 +02:00
Daniel Marjamäki
e89c03da92
Fix ticket 308 (cppcheck msg:: invalid number of ((). Cant process file)
2009-05-27 20:07:18 +02:00
Daniel Marjamäki
650d58e3de
Fix for ticket 337 ('scope can be limited' false positive with variables referenced by pointers)
2009-05-27 19:38:26 +02:00
Reijo Tomperi
ea4232fb06
Fix ticket #334 (segmentation fault on boost 1.39.0)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/334
2009-05-26 23:22:00 +03:00
Daniel Marjamäki
b9b542d05b
Fixed ticket #333 (tokenizer: incorrect removal of decrement/increment)
2009-05-25 14:21:58 +02:00
Daniel Marjamäki
2d2c0e42cc
Fix ticket #317 (pre-increment causes style false positive)
2009-05-25 08:31:20 +02:00
Daniel Marjamäki
7fdd497c44
Fix ticket #317 (pre-increment causes style false positive)
2009-05-25 08:26:11 +02:00
Reijo Tomperi
977e31786d
Fix ticket #332 (White space between macro name and '(' causes macro simplification to fail)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/332
2009-05-24 23:57:12 +03:00
Slava Semushin
2654a4aa54
Added support to search resource leaks after opendir()/fdopendir() usage.
2009-05-24 02:53:02 +07:00
Slava Semushin
f5300ae56c
Part of fix for ticket #284 (style check: redundant condition improvement)
...
Fixed case "if (p) delete [] p;" and also added test case for it.
http://apps.sourceforge.net/trac/cppcheck/ticket/284
2009-05-24 00:32:53 +07:00
Slava Semushin
bc62472a18
Part of fix for ticket #284 (style check: redundant condition improvement)
...
Fixed case "if (p != NULL) delete p;" and also added test case for it.
http://apps.sourceforge.net/trac/cppcheck/ticket/284
2009-05-24 00:30:27 +07:00
Slava Semushin
bfd49e21e7
Added 17 functions which work with FILE structure to white list.
...
Inspired by previous commit.
2009-05-23 18:01:18 +07:00
Slava Semushin
b5c7316666
Fixed ticket #327 (File descriptor leak not detected when feof() used)
...
Thanks to aggro80@ for help.
http://apps.sourceforge.net/trac/cppcheck/ticket/327
2009-05-23 17:20:26 +07:00
Reijo Tomperi
bbf63b7970
Fix ticket #304 (#include <file.h> should be searched from paths given with -I parameter.)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/304
Note that the ticket is same as with previous commit, but task description was changed a little.
2009-05-23 00:18:48 +03:00
Reijo Tomperi
93d9400f63
Fix ticket #304 (#include <file.h> should be parsed like #include "file.h" is being parsed)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/304
2009-05-22 23:59:07 +03:00
Reijo Tomperi
0f9b2efa43
Fix ticket #326 (Reported memory leak when pointer returned by assign to function's parameter)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/326
2009-05-22 23:36:03 +03:00
Slava Semushin
a2a6eebb01
Fixed ticket #324 (Teach about fcloseall() function)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/324
2009-05-22 21:47:40 +07:00
Slava Semushin
3a40c33d7b
Updated wrong comments (looks like after copy&paste).
...
No code change.
2009-05-22 21:13:01 +07:00
Reijo Tomperi
e6017ad54b
Fix #299 (Memory leak not detected when parameters contain ::)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/299
2009-05-21 22:51:19 +03:00
Reijo Tomperi
bb2b2e000b
Fix ticket #316 (\n is tokenized into \\ in a string when macro is used)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/316
2009-05-20 21:36:59 +03:00
Reijo Tomperi
9c60391375
Apply patch #320 from php-coderrr ([PATCH] Determine memory leaks after strndup() usage)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/320
2009-05-19 23:29:10 +03:00
Reijo Tomperi
a3f469d339
Fix ticket #315 (Segmentation fault when checking Linux kernel) (previous fix was only partial fix)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/315
2009-05-19 22:19:15 +03:00
Reijo Tomperi
d6d55c2db4
Fix ticket #315 (Segmentation fault when checking Linux kernel)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/315
2009-05-18 23:32:04 +03:00
Reijo Tomperi
927918f9b0
astyle fix
2009-05-18 23:30:43 +03:00
Daniel Marjamäki
bad464ae9b
Classes: Static variables don't need to be initialized or assigned in constructors etc
...
http://apps.sourceforge.net/trac/cppcheck/ticket/307
2009-05-17 19:27:16 +02:00
Daniel Marjamäki
2e61201c18
STL: It is ok to compare vector iterators with <
...
https://apps.sourceforge.net/trac/cppcheck/ticket/313
2009-05-17 18:58:32 +02:00
Daniel Marjamäki
2bd80a7335
Fix for ticket 291 - preprocessor: better handling of defines
...
http://apps.sourceforge.net/trac/cppcheck/ticket/291
2009-05-17 18:51:29 +02:00
Reijo Tomperi
36cdac1b96
Fix ticket #312 (division by pointer value causes wrong tokenizing)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/312
2009-05-14 22:53:49 +03:00
Daniel Marjamäki
2508f3c721
Preprocessor: Added test case for #291 . One of the assertions is a TODO and it should be fixed.
...
http://apps.sourceforge.net/trac/cppcheck/ticket/291
2009-05-13 21:38:57 +02:00
Reijo Tomperi
e5e82274dc
Fix ticket #306 (Invalid multi-line comment produces cryptic internal error)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/306
2009-05-13 22:18:02 +03:00
Reijo Tomperi
997a784bb6
Added TODO test case TestPreprocessor::multiline_comment
...
Made tokenizer to printout token list in case of syntax error, if debug is used
2009-05-13 00:01:53 +03:00
Reijo Tomperi
31f315d2ec
Added TODO test case TestMemleak::stdstring
2009-05-12 22:04:49 +03:00
Reijo Tomperi
24d96b188e
Fix ticket #305 (Negative value passed to ASSERT_EQUALS)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/305
Moved also test case from testtokenizer to testtoken.
2009-05-12 21:28:02 +03:00
Reijo Tomperi
e83db8ac7b
Fix ticket #288 (Tokenizer::syntaxError should use error logger instead of std::cout)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/288
2009-05-11 22:52:04 +03:00
Reijo Tomperi
fede702bf5
Fix ticket #302 (White space between "\" and newline not handled correctly)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/302
2009-05-11 21:12:29 +03:00
Daniel Marjamäki
1ae24066fe
null pointer dereferencing: check that its a pointer that is dereferenced to avoid false positives when using classes that behave almost like pointers ( #295 )
2009-05-10 08:43:16 +02:00
Daniel Marjamäki
daea0547fa
memory leaks: Handling exit ( #297 )
2009-05-10 08:01:38 +02:00
Reijo Tomperi
f2a5527e60
Fix #289 (if() is not properly tokenized)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/289
2009-05-09 23:12:14 +03:00
Reijo Tomperi
63da926ed2
Fix ticket #294 (### Error: Invalid number of character ()
...
http://apps.sourceforge.net/trac/cppcheck/ticket/294
2009-05-09 22:32:29 +03:00
Daniel Marjamäki
e9eba16053
templates: fixed problem when for example calling static member function in a template class ( #293 )
2009-05-09 08:02:59 +02:00
Daniel Marjamäki
dae530d8de
template: no usage -> no expansion ( #292 )
2009-05-08 16:19:22 +02:00
Reijo Tomperi
dd8b738f7f
Initial fix for ticket #283 (segmentation fault when checking xterm sources)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/283
It should print out error message now instead of crashing. Cleanup is needed.
2009-05-07 23:17:29 +03:00
Reijo Tomperi
a12fd4ff5e
Fix ticket #282 (protected destructor - false positive)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/282
2009-05-06 23:22:26 +03:00
Daniel Marjamäki
80fe293c19
stl: removed false positives for STL buffer overruns. Bailing out when it can't be checked if the index is ok or not. ( #285 )
2009-05-06 21:55:04 +02:00
Daniel Marjamäki
a32114b15c
memleak: removed false positives for pclose ( #286 )
2009-05-06 21:31:31 +02:00
Daniel Marjamäki
51beadd81c
templates: instantiations in a template class ( #280 )
2009-05-06 21:03:11 +02:00
Reijo Tomperi
177aeba0cf
Added TODO test case TestMemleak::assign_pclose
2009-05-06 21:20:25 +03:00
Reijo Tomperi
e098bffd28
Added test case TestSimplifyTokens::template7
2009-05-05 23:09:15 +03:00
Daniel Marjamäki
feba87187a
templates: speedup by breaking out inner loops ( #257 )
2009-05-05 20:16:57 +02:00
Daniel Marjamäki
fd0e592767
Preprocessor: Handling newlines when using # to stringify parameters ( #281 )
2009-05-05 17:19:06 +02:00
Reijo Tomperi
0f59ef9064
Fix #276 (simplification: Variable value)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/276
2009-05-03 21:57:27 +03:00
Reijo Tomperi
cb209bbd41
Fix #279 (Refactoring: replace and remove Token::aaaa , Token::aaaa0 and Token::aaaa1)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/279
2009-05-03 21:10:59 +03:00
Daniel Marjamäki
f6d6a3855e
varid: updated handling of variable id for class variables ( #26 )
2009-05-03 13:50:26 +02:00
Daniel Marjamäki
3819c66f36
stl: Fixed ticket #277 - dereferencing an iterator that has been erased
2009-05-03 07:37:39 +02:00
Daniel Marjamäki
6a009f7084
tokenizer: give class member variables varId ( #26 )
2009-05-02 22:57:18 +02:00
Daniel Marjamäki
0dacb4b1ca
stl: added a ticket for the todo test case TestStl::eraseDereference
2009-05-02 21:35:35 +02:00
Daniel Marjamäki
50567c164f
stl: added todo test case, invalid iterator after insert
2009-05-02 20:49:58 +02:00
Daniel Marjamäki
b46777235d
stl: added todo test case, erasing invalid iterator
2009-05-02 20:39:51 +02:00
Daniel Marjamäki
e11449bd58
stl: added test case, dereferencing an iterator that has been erased
2009-05-02 19:58:57 +02:00
Daniel Marjamäki
7803466079
testing mathlib: Test that conversion to numbers work
2009-05-02 11:12:49 +02:00
Daniel Marjamäki
6f4c5ab71c
refactoring: Replaced 'aaaa'
2009-05-01 22:41:55 +02:00
Reijo Tomperi
26c193f9bc
Fix ticket #204 (false positive::memory leak with --all when free is guarded by simple if)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/204
2009-05-01 21:31:07 +03:00
Reijo Tomperi
bc4fb21325
tokenizer: simplify assembler ( #270 ), fix _asm also.
...
http://apps.sourceforge.net/trac/cppcheck/ticket/270
2009-05-01 20:53:08 +03:00
Reijo Tomperi
a46de47158
Fix ticket #196 (False positive: Resource leak)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/196
2009-05-01 14:39:57 +03:00
Daniel Marjamäki
e37da13c26
tokenizer: simplify assembler ( #270 )
2009-05-01 12:39:14 +02:00
Reijo Tomperi
241ad528a9
Fix ticket #275 Simplify if( a == 0 ), if( 0 == a ) into if( !a )
...
http://apps.sourceforge.net/trac/cppcheck/ticket/275
2009-05-01 13:07:10 +03:00
Daniel Marjamäki
1ad5cf1ec5
astyle formatting
2009-05-01 12:03:25 +02:00
Daniel Marjamäki
8dba34d580
class checking: enabled test case. The --all setting must be provided
2009-05-01 12:01:55 +02:00
Reijo Tomperi
7002af6c9a
astyle fix
2009-05-01 12:29:49 +03:00
Reijo Tomperi
34540fee04
Fix partially ticket #196 False positive: Resource leak
...
And add few test cases related to it. Move one failing test behind TODO
http://apps.sourceforge.net/trac/cppcheck/ticket/196
2009-05-01 12:28:33 +03:00
Daniel Marjamäki
534d0e9939
class checking: Checking that vectors/lists/strings etc are modified in the assignment function
2009-05-01 07:28:58 +02:00
Reijo Tomperi
7e5c32b7f4
Fix ticket #269 (Incorrect variable id, when delete is used.)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/269
2009-04-29 22:45:57 +03:00
Reijo Tomperi
d4a7256686
Added test case TestTokenizer::varid_delete for ticket #269
...
http://apps.sourceforge.net/trac/cppcheck/ticket/269
2009-04-29 22:22:56 +03:00
Reijo Tomperi
a8f296bb6e
Added test case TestMemleak::free_member_in_sub_func for ticket #253
...
http://apps.sourceforge.net/trac/cppcheck/ticket/253
2009-04-29 21:40:21 +03:00
Daniel Marjamäki
ad4c7993d1
stl: checking that iterator is used against a single container
2009-04-29 20:16:04 +02:00
Daniel Marjamäki
2a200cff00
stl: added todo test case about using same iterator with different containers
2009-04-29 17:32:38 +02:00
Daniel Marjamäki
b90fdfed1d
changed todo comment to TODO_ASSERT_EQUALS
2009-04-28 21:44:31 +02:00
Daniel Marjamäki
f9795988eb
checkstl: Check for invalid pointer to vector element
2009-04-28 21:18:02 +02:00
Daniel Marjamäki
8075cd8b9d
added todo test case for detecting unmodified containers in the operator= function
2009-04-28 20:50:10 +02:00
Daniel Marjamäki
bb154da394
memory leaks: handling std::auto_ptr ( #266 )
2009-04-28 20:01:35 +02:00
Daniel Marjamäki
67eb54c4c0
Merge branch 'abc'
2009-04-27 21:29:29 +02:00
Daniel Marjamäki
b49997e69d
bail out instead of crash when parsing unicode code ( #207 )
2009-04-27 21:29:03 +02:00
Reijo Tomperi
d8f6636673
Improve fix to ticket #261 : Allow macro definition to have uncoupled double quote.
...
http://apps.sourceforge.net/trac/cppcheck/ticket/261
2009-04-26 22:19:08 +03:00
Daniel Marjamäki
7b58e09a07
Preprocessor: Report correct file and line in message 'No pair for character..' ( #261 )
2009-04-26 11:05:32 +02:00
Daniel Marjamäki
ebd15cec0f
push_back: updated the checking of push_back ( #263 )
2009-04-25 17:14:02 +02:00
Daniel Marjamäki
49430afabe
varid: Set variable id for stl containers and iterators
2009-04-25 16:55:00 +02:00
Daniel Marjamäki
ef54e446db
push_back: added a few todo test cases for the checking of push_back
2009-04-25 16:32:37 +02:00
Daniel Marjamäki
8e15a9e79d
xml generator: handle '<' and '>' ( #263 )
2009-04-23 21:59:26 +02:00
Reijo Tomperi
14eff64194
Fix ticket #258 (segmentation fault)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/258
2009-04-20 21:38:05 +03:00
Daniel Marjamäki
ca8f25fced
return pointer to local array: fixed false positive when return value is converted to for instance a std::string ( #255 )
2009-04-19 16:47:54 +02:00
Daniel Marjamäki
7cddc52d8f
mathlib: Fixed todo 3/2=1
2009-04-16 22:06:17 +02:00
Daniel Marjamäki
3c3a56bfca
private functions: don't report false positives when using initialization lists ( #254 )
2009-04-14 21:46:13 +02:00
Daniel Marjamäki
7750f327ff
STL boundries: added new check written by Bill Eggert ( #247 )
2009-04-13 17:48:13 +02:00
Daniel Marjamäki
9a086c118f
math lib: 3/2 should result in 1
2009-04-12 18:45:42 +02:00
Reijo Tomperi
1f53fb7149
Fix ticket #248 (STL erase check broken?)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/248
2009-04-10 14:27:36 +03:00
Daniel Marjamäki
97f5380a2c
added testing for mathlib
2009-04-06 19:08:13 +02:00
Reijo Tomperi
51d97fa831
Fix ticket #212 (Tokenizer: Handle L "text")
...
http://apps.sourceforge.net/trac/cppcheck/ticket/212
2009-04-05 22:21:38 +03:00
Leandro Lisboa Penz
82cb229871
checkmemoryleak: fixed and reactivated forwhile9 and forwhile10 tests.
2009-04-04 20:55:45 -03:00
Reijo Tomperi
11858129d0
Fix ticket #243 (boundary checking)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/243
2009-04-04 21:05:48 +03:00
Reijo Tomperi
07af9cf7c8
astyle fix
2009-04-03 22:10:27 +03:00
Reijo Tomperi
7a11f0e61f
Fix ticket #242 (Preprocessor: Bail out on failure instead of terminating the program)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/242
2009-04-03 22:09:12 +03:00
Daniel Marjamäki
ebee7928e2
operator=: changed error message when variable is not assigned
2009-03-31 19:00:56 +02:00
Reijo Tomperi
14bdf1ee62
Fix ticket #239 (missing function implementation in namespace causes crash)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/239
2009-03-31 00:59:33 +03:00
Daniel Marjamäki
263c5b9e5a
division with zero => division by zero
2009-03-29 20:27:10 +02:00
Daniel Marjamäki
d7aee72fcd
zero division: it's an error
2009-03-29 18:47:05 +02:00
Daniel Marjamäki
e45bb20f92
tokenizer: don't replace sizeof when size can't be determined ( #233 )
2009-03-29 16:36:34 +02:00
Gianluca Scacco
f5104d6d0a
Added new test to autovariable
2009-03-28 21:54:12 +01:00
Gianluca Scacco
c88a362893
Fixed ticket #228 : false positive with usage of an auto-variable
2009-03-28 21:47:38 +01:00
Daniel Marjamäki
6f7f8c4b4f
Tokenizer: Don't treat typedefs as variable declarations ( #234 )
2009-03-28 21:07:33 +01:00
Daniel Marjamäki
4c4f138639
Memory leaks: refactoring the TODO test cases
2009-03-28 20:50:09 +01:00
Nicolas Le Cam
ad7df1cbe0
Add TestMemleak::realloc4 that currently fail.
...
Change TestMemleak::if10, TestMemleak::forwhile8 and TestMemleak::realloc2 as they are currently leaking memory, mark them as TODO.
Comment out TestMemleak::forwhile9 and TestMemleak::forwhile10 as they are wrong (infinite loops).
2009-03-28 16:21:55 +01:00
Daniel Marjamäki
022dbc651e
removed TestOther::zeroDiv3 - it is not valid
2009-03-28 08:02:15 +01:00
Daniel Marjamäki
4059a2ad05
added check for zero division. The code was written by Nguyen Duong Tuan
2009-03-28 07:49:47 +01:00
Daniel Marjamäki
c0b608059a
possible null pointer dereference after a while-loop
2009-03-27 17:19:34 +01:00
Daniel Marjamäki
7afccc395a
testing: new handling of todo test cases. If they use TODO_ASSERT_EQUALS instead we can detect when they are fixed
2009-03-25 18:31:40 +01:00
Daniel Marjamäki
0cfa241abb
variable id: enabled test case for function parameters
2009-03-25 18:15:49 +01:00
Daniel Marjamäki
c74da7bab9
variable id: give std::string variables an id
2009-03-25 18:10:03 +01:00
Daniel Marjamäki
b9f4a773b8
Buffer overrun: Added check to detect when size argument to memset is a char constant ( #213 )
2009-03-25 07:25:10 +01:00
Daniel Marjamäki
9f3634412e
simplify tokens (known variable values in conditions)
2009-03-25 07:10:17 +01:00
Daniel Marjamäki
afcaa30b51
Fixed ticket 216 (False positive: variable scope)
2009-03-24 20:59:56 +01:00
Daniel Marjamäki
c0039a2551
added testcase
2009-03-24 20:24:03 +01:00
Daniel Marjamäki
6580e0eb21
fixed snprintf false positive ( #210 )
2009-03-24 18:43:39 +01:00
Daniel Marjamäki
65070cc067
Simplify if conditions more.. simplifyIfAssign + simplifyIfNot
2009-03-24 18:23:21 +01:00
Daniel Marjamäki
44c952873e
Fixed ticket 205 (False positive: char variable used in bit operation)
2009-03-23 19:04:51 +01:00
Daniel Marjamäki
06776c6ac7
Fixed the testcase TestMemleak::realloc3
2009-03-23 18:34:59 +01:00
Daniel Marjamäki
7905cbc5e7
simplify tokens: move assignment out from condition (Ticket #201 )
2009-03-23 18:20:56 +01:00
Daniel Marjamäki
c9d02273b8
added todo test case for ticket 200
2009-03-22 21:42:01 +01:00
Vesa Pikki
f04bdccee4
Astyle formatting.
2009-03-22 15:15:16 +02:00
Gianluca Scacco
416115e38f
Fixed error compiling testautovariables
2009-03-22 12:00:21 +01:00
Daniel Marjamäki
da06c12925
refactoring error messages
2009-03-21 18:31:28 +01:00
Daniel Marjamäki
aee39ae929
refactoring - handling the stlOutOfBounds error message the new way
2009-03-21 14:20:10 +01:00
Daniel Marjamäki
bcad5afb26
refactoring - fixed the unit tests
2009-03-21 14:02:58 +01:00
Daniel Marjamäki
9f1c3cc535
refactoring the rest of the classes
2009-03-20 18:16:21 +01:00
Daniel Marjamäki
21dff96e7b
refactoring checkbufferoverrun
2009-03-20 17:35:53 +01:00
Daniel Marjamäki
5914af4481
refactoring CheckClass
2009-03-20 17:30:24 +01:00
Daniel Marjamäki
3fab99a5cb
astyle formatting
2009-03-19 19:35:47 +01:00
Daniel Marjamäki
75171cae08
refactoring: fixed the teststl so it is runnable again
2009-03-19 19:35:08 +01:00
Daniel Marjamäki
09ff4fa35f
Merge branch 'master' of git@github.com:danmar/cppcheck
2009-03-18 22:41:01 +01:00
Daniel Marjamäki
a573c62cd5
refactoring: first step - started with checkstl
2009-03-18 22:40:38 +01:00
Nicolas Le Cam
2b199ffb9b
Fix compilation on 64bit systems
2009-03-18 22:13:27 +01:00
Daniel Marjamäki
f37dd4f143
Fixed ticket 184 (Tokenizer - Simplification: Split up variable declarations)
2009-03-18 20:32:05 +01:00
Reijo Tomperi
2fb4c52728
Fixed tokenizer: "return - 2 ;" --> "return -2 ;"
2009-03-18 20:48:06 +02:00
Reijo Tomperi
ca055dc830
Fix ticket #191 (semicolon after #endif stop tokenizing of function)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/191
2009-03-18 01:10:26 +02:00
Reijo Tomperi
896abcb569
Fixed some memory leaks in test cases
2009-03-17 21:59:40 +02:00
Daniel Marjamäki
9c057c707b
tokenize negative numbers into a single token
2009-03-17 20:50:06 +01:00
Daniel Marjamäki
128215d692
Added test case for detecting false positive in the STL size handling
2009-03-17 18:54:50 +01:00
Reijo Tomperi
c413c8d4b3
Fix ticket #179 (preprocessor issues)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/179
2009-03-16 23:20:55 +02:00
Daniel Marjamäki
f9b481ae3a
Ticket #184 (Tokenizer - Simplification: Split up variable declarations), added testcases
2009-03-16 19:03:23 +01:00
Daniel Marjamäki
0cc7672673
Fixed Ticket #82 (detect buffer overrun; dynamic memory)
2009-03-16 18:11:09 +01:00
Reijo Tomperi
1c74978a92
test case stringify3 added
2009-03-15 23:39:58 +02:00
Reijo Tomperi
21b687b301
Improved tokenizer to handle '#' better. Previously everything after # was combined into a single token,
...
now # is considered more like an alphabet, with few exceptions, e.g. "##" tokens.
2009-03-15 23:09:27 +02:00
Daniel Marjamäki
a6ad972aad
Fix Ticket 180 (Templates: Expanding member functions that are not implemented inline)
2009-03-15 20:03:29 +01:00
Daniel Marjamäki
9b06b22053
templates: replace constructor/destructor names when expanding template classes
2009-03-15 17:07:05 +01:00
Reijo Tomperi
b26955b9f8
Test case stringify2() added.
2009-03-15 16:05:23 +02:00
Reijo Tomperi
ca7870af33
Fix ticket #177 (Tokenizer doesn't add braces around if-scope)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/177
2009-03-15 14:44:57 +02:00
Reijo Tomperi
bb3316a45b
Fix ticket #181 (#pragma causes wrong line numbers)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/181
2009-03-15 14:23:12 +02:00
Daniel Marjamäki
6eadbaae04
templates: better handling of templates with multiple type arguments
2009-03-14 21:26:32 +01:00
Daniel Marjamäki
75d0e8687b
Memory leak: handle allocation in deallocation list
2009-03-14 20:19:36 +01:00
Daniel Marjamäki
02df14ec37
Memory leaks: Refactoring to use Tokenizer::FindClassFunction. Enabled test case, the memory leak is now detected
2009-03-14 18:21:37 +01:00
Daniel Marjamäki
3b29125d65
added testcase for 'Tokenizer::FindClassFunction'
2009-03-13 22:38:42 +01:00
Daniel Marjamäki
0a6a0ae46e
TestMemleak: added two testcases for checking for leaks in classes
2009-03-13 19:52:01 +01:00
Reijo Tomperi
3c4704a00c
Fix ticket #151 (Handling of namespaces)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/151
2009-03-13 01:07:05 +02:00
Daniel Marjamäki
4c28882a12
expanding template classes
2009-03-12 22:17:42 +01:00
Daniel Marjamäki
f96e2deb1a
uninitialized const pointer member variables
2009-03-12 21:33:10 +01:00
Daniel Marjamäki
1514e65464
astyle style fixes
2009-03-11 19:14:45 +01:00
Daniel Marjamäki
77cf2213fe
templates: simplify template functions with 1 type argument
2009-03-11 18:50:24 +01:00
Reijo Tomperi
657495b825
astyle fix
2009-03-11 00:49:16 +02:00
Daniel Marjamäki
eac29d151c
made the Tokenizer::simplifyCasts more generic
2009-03-10 21:26:08 +01:00
Daniel Marjamäki
cd54a0ed3b
Fixed ticket 147 (Invalid line number for error message)
2009-03-09 20:29:25 +01:00
Daniel Marjamäki
f8cd34198b
simplify casts
2009-03-09 19:47:21 +01:00
Reijo Tomperi
1c626c53c2
Added test case for #147 (Invalid line number for error message)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/147
macro_linenumbers() in test/testpreprocessor.cpp
2009-03-08 22:28:12 +02:00
Reijo Tomperi
765da17132
Astyle fix
2009-03-08 09:49:04 +02:00
Reijo Tomperi
5be85d71a0
Fix ticket #145 (Line numbers are invalid if file is included inside #ifdef)
...
http://apps.sourceforge.net/trac/cppcheck/ticket/145
2009-03-08 09:45:53 +02:00
Daniel Marjamäki
cc8a6168e7
astyle formatting
2009-03-06 18:13:41 +01:00
Daniel Marjamäki
d7cd09cb6e
added internal support for handling list of classes that are automaticly deallocated
2009-03-06 07:22:07 +01:00
Reijo Tomperi
6fcb89f136
Fix segmentation fault that happens with invalid code.
2009-03-05 23:22:00 +02:00
Reijo Tomperi
42a9eb9e53
Fix ticket #133 (Segmentation fault when static_cast is in for loop)
2009-03-05 21:32:02 +02:00
Daniel Marjamäki
547f120ee9
known variables: better handling of ++ and --
2009-03-04 06:03:51 +00:00
Reijo Tomperi
832275bc37
Fix #132 (False positive returning memcpy())
2009-03-03 20:39:17 +00:00
Reijo Tomperi
69c23301db
Fix ticket Add/Change #125 (the printout of the token list is wrong)
2009-03-03 20:17:23 +00:00
Daniel Marjamäki
37c889ab30
unused private function: better handling of initialization lists in constructors
2009-03-02 20:40:24 +00:00
Daniel Marjamäki
86050cccdb
unused private function: fixed false positive (ticket: 129)
2009-03-02 17:16:02 +00:00
Daniel Marjamäki
87b0314e72
memory leak: fixed issue with reporting wrong location
2009-03-01 20:34:04 +00:00
Reijo Tomperi
fc8f47145a
Copyrights updated
2009-03-01 19:52:33 +00:00
Daniel Marjamäki
c7b068c174
variable id: fixed so that the variable ids are assigned correctly (ticket:126)
2009-03-01 16:37:02 +00:00
Daniel Marjamäki
4e465f7073
variable declarations: don't simplify when declaring and assigning array in the same statement
2009-02-28 20:40:37 +00:00
Daniel Marjamäki
c3bbd603c0
variable id: handling 'return' and 'else' better
2009-02-28 20:21:48 +00:00
Daniel Marjamäki
045477e6ac
moved sizeof tests to the TestSimplifyTokens class
2009-02-28 09:09:55 +00:00
Daniel Marjamäki
c7197aed8c
refactoring unit tests
2009-02-28 08:59:48 +00:00
Daniel Marjamäki
7d9bf491ec
sizeof: fixed a problem with 'sizeof(varname)' but there are more to fix with it
2009-02-28 08:34:02 +00:00
Daniel Marjamäki
6b7b27a2e8
simplify known variable: don't simplify this ';i++;'
2009-02-27 18:25:47 +00:00
Daniel Marjamäki
dddfc50dff
Reverted changes made in [1289]
2009-02-27 07:50:39 +00:00
Daniel Marjamäki
f4a8bc85f2
simplify tokens: fixed bug when removing redundant parantheses around variable
2009-02-27 06:07:38 +00:00
Daniel Marjamäki
91011b8450
array index out of bounds: Added todo test case TestBufferOverrun::array_index_13 for ticket #118
2009-02-26 19:46:59 +00:00
Daniel Marjamäki
c1da4ae57d
simplify tokens: remove redundant parantheses around variable.. 'p = (q);'
2009-02-25 19:55:24 +00:00
Daniel Marjamäki
35583293ec
memory leak: Fixed a false positive when all is given
2009-02-25 19:20:23 +00:00
Daniel Marjamäki
dac1e91013
unused private function: Handle 'embedded' function implementations better
2009-02-25 18:03:17 +00:00
Daniel Marjamäki
66c13c7173
reverted [1282] because some changes were committed by mistake
2009-02-24 17:49:43 +00:00
Daniel Marjamäki
8c3e3faa07
checkclass: refactoring
2009-02-24 17:48:11 +00:00
Daniel Marjamäki
1e3047b9c2
simplify tokens: simplify known variable value handles ++ and -- better
2009-02-24 16:11:37 +00:00
Daniel Marjamäki
d15aea1b0c
memory leak: fixed false positive when using 'return strcpy'
2009-02-24 06:23:21 +00:00
Daniel Marjamäki
44a5cecd99
memory leaks: improved handling of --vcl
2009-02-23 19:32:54 +00:00
Daniel Marjamäki
d8927e720d
constructors: don't warn about missing constructor if class only has static variable members
2009-02-21 13:35:55 +00:00
Daniel Marjamäki
08f76279ed
buffer overrun: catch cases when using cin to read to a char array
2009-02-21 12:22:04 +00:00
Daniel Marjamäki
5269e38ae2
security: renamed classes
2009-02-21 12:12:31 +00:00
Daniel Marjamäki
b826d2e41b
security: Renamed files
2009-02-21 12:07:19 +00:00
Daniel Marjamäki
a9009ebf7d
TestClass: Added test for uninitialized "mutable int i"
2009-02-21 08:24:57 +00:00
Daniel Marjamäki
ed86d924df
buffer overrun: dangerous usage of strncpy+strncat
2009-02-20 21:16:07 +00:00
Daniel Marjamäki
15e86db3ed
buffer overrun: Added checking of strncat
2009-02-20 21:00:59 +00:00
Daniel Marjamäki
0e1ef1f45f
added todo testcases for strncat checking
2009-02-20 20:00:49 +00:00
Daniel Marjamäki
439b8c4051
simplify known variables: variable used as array index
2009-02-20 17:27:57 +00:00
Daniel Marjamäki
385be6d0d9
memory leak: Added command line flag '--vcl' that is used to suppress error messages for VCL code
2009-02-20 06:28:18 +00:00
Reijo Tomperi
4fc774deda
Multicore cpu support for Linux (currently disabled and compiling produces warnings)
...
"no errors" output removed.
2009-02-19 22:21:18 +00:00
Daniel Marjamäki
efeaac736d
security: added simple gui checking
2009-02-19 17:57:27 +00:00
Daniel Marjamäki
4e1f19a366
input validation: added checking
2009-02-19 08:03:14 +00:00
Daniel Marjamäki
a844fa017e
fixed failed tests
2009-02-18 20:04:34 +00:00
Daniel Marjamäki
19c8473294
reverted [1254] it was made by mistake
2009-02-18 20:01:44 +00:00
Daniel Marjamäki
dc2ecb8980
stl push_back: Added check (invalid iterator)
2009-02-18 19:58:50 +00:00
Daniel Marjamäki
2b04c94b95
stl push_back: Added check (invalid iterator)
2009-02-18 19:57:43 +00:00
Daniel Marjamäki
1043b76d31
Added Tokenizer::elseif for breaking up 'else if' into 'else { if ..'
2009-02-17 19:18:26 +00:00
Daniel Marjamäki
5b24319cf1
varid: Added a todo test case for giving function parameters varid
2009-02-16 20:46:24 +00:00
Daniel Marjamäki
4aef89c311
tokenizer: fixed issues related to variable ids
...
* use setVarId in simplifyTokenList
* make sure function parameters and variables declared in for example for loops get variable ids
2009-02-16 17:41:33 +00:00
Daniel Marjamäki
b1982b2041
tokenizer: improved the simplification of '*(var+num)' => 'var[num]'
2009-02-15 14:02:57 +00:00
Daniel Marjamäki
56d685c179
tokenizer: Remove redundant parantheses around number. Ticket: #105
2009-02-15 13:28:54 +00:00
Daniel Marjamäki
265ef0f4a5
Tokenizer: Fixed bug in tokenizer that removed '\' from preprocessor lines
...
Ticket: #106
2009-02-15 11:42:04 +00:00
Reijo Tomperi
669913568c
Added test case TestTokenizer::sizeof5
2009-02-14 21:49:36 +00:00
Reijo Tomperi
1e07847ecf
Constant variable converting converted struct members (foo.a => foo.45) also, fixed that.
2009-02-14 21:33:28 +00:00
Reijo Tomperi
fba8c54758
Fix ticket #107 (Convert + + into + and + - into -) and add test case for it
2009-02-14 20:56:08 +00:00
Reijo Tomperi
413bf32cf2
Fixed typos in test case and enabled it.
2009-02-14 18:44:50 +00:00
Daniel Marjamäki
4a1488b1a9
tokenizer: tokenize '++', '--' and '>>' correctly
2009-02-14 10:13:50 +00:00
Reijo Tomperi
d1e9efc66a
Fix ticket #104 (Change (error) Uninitialized member variable -> (style) Member variable not initialized in the constructor)
2009-02-14 08:52:03 +00:00
Daniel Marjamäki
5c1995ca81
memory leak: handle 'delete (p)' and 'delete [] (p)'. Fixes ticket 102
2009-02-14 06:54:23 +00:00
Daniel Marjamäki
881460f71b
simplify tokens: added todo test case, the varid is lost when simplifying variable declarations
2009-02-13 17:25:23 +00:00
Daniel Marjamäki
3b194ff851
simplify token list: Added a TODO test case. variable id is lost
2009-02-13 16:23:02 +00:00
Leandro Penz
de80baeea1
Preprocessor: support for ##-comma-eating in variadic macros; passing now fmt2 test.
2009-02-13 13:34:24 +00:00
Leandro Penz
127a910516
Tokenizer: fixed ## tokenization.
2009-02-13 13:33:12 +00:00
Leandro Penz
d511863b57
Preprocessor: initial variadic macro support; passing now on fmt1 case.
2009-02-13 13:31:40 +00:00
Daniel Marjamäki
8485e95341
Token::stringifyList: Added function that stringifies a token list
2009-02-13 06:25:29 +00:00
Reijo Tomperi
916090b389
Improved test case "double_plus"
2009-02-12 20:49:05 +00:00
Reijo Tomperi
030b35c975
Added test case double_plus and improved Token::printOut
2009-02-12 20:32:59 +00:00
Reijo Tomperi
5d3574bb03
Fix ticket #100 (Simplify constants simplifies leaks out from variable scope and simplifies whole file)
2009-02-12 19:26:42 +00:00
Daniel Marjamäki
4f121daca4
buffer overruns: added simple support for initialized array
2009-02-12 19:11:52 +00:00
Leandro Penz
62a49282eb
Incomplete statements: removed false positive when setting array of structures or multi-dimensional arrays.
2009-02-12 12:59:43 +00:00
Reijo Tomperi
de2ee0a29d
Test case TestTokenizer::simplify_constants added (commented out)
2009-02-11 22:15:22 +00:00
Daniel Marjamäki
f4a3119c18
stl dangerous usage of erase: Added test cases about using return and goto
2009-02-11 16:20:32 +00:00
Daniel Marjamäki
ba3752feb6
buffer overrun: improved checking of global variables
2009-02-11 16:12:29 +00:00
Leandro Penz
4c93b4928b
Incomplete statement: fixed and enabled intarray test case.
2009-02-11 15:17:13 +00:00
Leandro Penz
d1af0b6478
Incomplete statement: test case for statement that begins with numeric constant.
2009-02-11 15:16:32 +00:00
Daniel Marjamäki
eda1290e40
dangerous usage of erase: added check
2009-02-11 05:08:29 +00:00
Reijo Tomperi
9b9223480d
Refactoring: reportErr takes now only one parameter, ErrorLogger::ErrorMessage, which contains all required information and also some help
...
functions for formatting it for output.
2009-02-10 21:51:52 +00:00
Daniel Marjamäki
71b4e5a912
stl: added testcase for bad iterator usage
2009-02-10 20:01:39 +00:00
Reijo Tomperi
4660b7648d
Moved stloutofbounds check to CheckStl class.
2009-02-10 19:56:00 +00:00
Daniel Marjamäki
c1638996f9
STL: added check for iterator usage
2009-02-10 19:40:21 +00:00
Reijo Tomperi
9dff3f4c52
Fix ticket #94 (STL container overrun). Check is currently behind --all
2009-02-09 22:25:44 +00:00
Reijo Tomperi
1373e14bc9
Fix ticket #93 (Write xml results into error stream instead of results.xml file.) and also refactor the
...
code to use ErrorLogger::reportErr() for all errors, for both xml and plain text. And move xml formatting
from Cppcheck to CppcheckExecutor.
2009-02-09 20:51:04 +00:00
Daniel Marjamäki
a5f88862b4
memory leak: keep track of --all better
2009-02-09 20:16:00 +00:00
Daniel Marjamäki
0cdb537a6a
incomplete statement: added a testcase for a false positive
2009-02-09 20:15:14 +00:00
Daniel Marjamäki
574db37a6f
uninitialized variables: added testcases and made a fix
2009-02-09 07:47:41 +00:00
Daniel Marjamäki
e572cb3c1d
Memory leak: Test code was supposed to call unknown function
2009-02-08 18:50:34 +00:00
Daniel Marjamäki
1637e867de
mismatching allocation size: moved to error suite
2009-02-08 18:34:04 +00:00
Daniel Marjamäki
d8e8e2c7ee
Memory leaks: Make sure leak is found even when using unknown functions
2009-02-08 18:31:09 +00:00
Daniel Marjamäki
81ed48562c
Memory leak: find memory leak in TestMemleak::unknownFunction2
2009-02-08 18:27:09 +00:00
Daniel Marjamäki
0361c9d338
Memory leak: Handling function that can't be traced into
2009-02-08 11:59:04 +00:00
Reijo Tomperi
cb5974e94e
Fixed issue about 4+5 being made a single token, problem appeared in recent commits.
2009-02-08 10:56:20 +00:00
Reijo Tomperi
c345fa6186
Fix ticket #89 (False positive, (style) Redundant code - begins with numeric constant (e-value))
2009-02-08 10:39:55 +00:00
Reijo Tomperi
da3efe8fa2
Improve fix made for Ticket #85 to handle strings that are in 3 parts also.
2009-02-08 10:25:33 +00:00
Reijo Tomperi
4305d749ff
Fixed ticket #88 (False positive, (style) Redundant code - begins with numeric constant)
2009-02-08 09:51:45 +00:00
Reijo Tomperi
200a159c67
Fix ticket #85 (False positive (style) Redundant code, begins with string)
2009-02-08 08:52:03 +00:00
Daniel Marjamäki
7ee193490f
Memory leaks: Added todo testcase - handle function calls that can't be followed
2009-02-08 08:21:15 +00:00
Reijo Tomperi
d48671bdfb
Fixed more of ticket #81 (getting rid of compiler warnings)
2009-02-07 20:55:25 +00:00
Reijo Tomperi
b211b8cbe8
Fix ticket #84 (unit testing: use "protected" instead of preprocessor)
2009-02-07 20:06:00 +00:00
Reijo Tomperi
798d86216a
Fix ticket #83 (cppcheck hangs) and add a test case for it
2009-02-07 19:15:10 +00:00
Daniel Marjamäki
3c289e52c5
memory allocation: check for mismatching size
2009-02-07 10:54:39 +00:00
Daniel Marjamäki
bb71f9e83e
TestMemleak: fixed problems with wrong linenumbers. This fixes ticket 79
2009-02-07 09:44:57 +00:00
Daniel Marjamäki
67ad1d8c64
TestMemleak: Fixed tests
2009-02-06 18:49:30 +00:00
Daniel Marjamäki
3c7e40fe13
errmsg: use the error message dealloc-use
2009-02-06 06:22:44 +00:00
Daniel Marjamäki
7299d3e5b1
memleak: removed false positives for mismatching allocation and deallocation
2009-02-06 06:11:47 +00:00
Reijo Tomperi
a06861948b
Fixed: Ticket #78 Change (always) into (error) in error messages
2009-02-05 21:06:32 +00:00
Reijo Tomperi
09c13d844e
Added test case linenumbers2
2009-02-05 20:29:55 +00:00
Daniel Marjamäki
10abbda6a7
memleak: corrected the wrong line number ( #77 )
2009-02-05 20:17:01 +00:00
Reijo Tomperi
7589dc3d16
testcppcheck.cpp file added, test case "linenumbers" added, codeblocks project file updated
2009-02-05 20:06:39 +00:00
Daniel Marjamäki
05e330ed38
incomplete statement: minor update
2009-02-05 18:57:53 +00:00
Daniel Marjamäki
9707217c15
activated TestClass:function
2009-02-04 19:42:40 +00:00
Daniel Marjamäki
7ccb6217bf
remove casts: Added test case to ensure that function declarations are not reduced
2009-02-04 19:40:48 +00:00
Daniel Marjamäki
8187504cbb
testclass: added todo testcase for #74
2009-02-04 19:31:25 +00:00
Daniel Marjamäki
aeb573d529
returning pointer to local array
2009-02-04 18:49:19 +00:00
Daniel Marjamäki
bd73d0913f
charvar: fixed todo testcase
2009-02-04 17:12:53 +00:00
Daniel Marjamäki
d73e6c398f
testbufferoverrun: activated test
2009-02-04 16:58:44 +00:00
Daniel Marjamäki
c46c4c50e9
memory leak: fixed ticket #9
2009-02-04 06:11:36 +00:00
Reijo Tomperi
142a21973a
Fixed varid is 0 bug which happened with sizeof(var[0]) and added testcase for it
2009-02-03 21:42:50 +00:00
Daniel Marjamäki
59f95d311b
tokenizer: setvarid handle variable declaration at start of token list
2009-02-02 19:19:36 +00:00
Daniel Marjamäki
0059ceefb9
Tokenizer: sizeof handling of 'sizeof(var[0])'
2009-02-02 18:59:32 +00:00
Daniel Marjamäki
d0af67a1b1
Tokenizer: setVarId improved to handle declaration at the first token
2009-02-02 17:35:46 +00:00
Daniel Marjamäki
27c0f786bc
tokenizer: improved sizeof handling
2009-02-02 17:27:34 +00:00
Daniel Marjamäki
0e291c772c
TestTokenize: Added testcase sizeof2 (TODO)
2009-02-02 06:26:20 +00:00
Daniel Marjamäki
dc994c346e
testtokenize: sizeof handling
2009-02-02 06:21:48 +00:00
Daniel Marjamäki
bbf4641304
testmemleak: fixed a test case
2009-02-02 06:21:00 +00:00
Daniel Marjamäki
f66750c9f1
TestMemleak: Added test cases
2009-02-02 05:58:50 +00:00
Daniel Marjamäki
385c28a02e
xml: generating better xml output
2009-02-01 18:00:47 +00:00
Reijo Tomperi
7da34ed249
Running astyle for the previous commits
2009-01-31 18:54:34 +00:00
Leandro Penz
7adcd0c355
dangerousfunctions: added check for mktemp (ticket #69 ), and refatored gets and scanf check from bufferoverrun into dangerousfunctions.
2009-01-31 18:24:48 +00:00
Daniel Marjamäki
81174a4817
mismatching allocation / deallocation: moved to --all
2009-01-31 17:54:31 +00:00
Daniel Marjamäki
f6f72fc022
errmsg: output severity in messages. a fix to track severity in the memory leaks check
2009-01-31 13:57:27 +00:00
Daniel Marjamäki
25607d9f71
mismatching allocation and deallocation: added test case that currently generates false positives
2009-01-31 11:51:47 +00:00
Daniel Marjamäki
3457b38d7a
errmsg: write severity in the message
2009-01-31 08:33:31 +00:00
Daniel Marjamäki
7d98c74d40
added test case TestBufferOverrun::sizeof2
2009-01-30 06:11:31 +00:00
Daniel Marjamäki
988d4c0d66
added todo testcase
2009-01-30 06:06:03 +00:00
Daniel Marjamäki
e9d19840d2
preprocessor: Added testcase fmt2 that is commented out because it doesn't work yet
2009-01-28 20:19:46 +00:00
Daniel Marjamäki
b7b055e885
tokenizer: fixed TestTokenizer::sizeof1
2009-01-28 17:38:32 +00:00
Daniel Marjamäki
12b6cf8c70
bad sizeof handling
2009-01-28 05:31:26 +00:00
Reijo Tomperi
2f7dec2fc3
Partial support for sizeof x, by converting it into sizeof(x). Does not handle complex structures. Closing ticket #65
2009-01-27 20:47:00 +00:00
Reijo Tomperi
64e3250f00
Fixed bug in multiCompare, which fixes ticket #66 ([False positive] "Buffer overrun" with "--all")
2009-01-27 19:30:01 +00:00
Daniel Marjamäki
8cd2979468
uninitialized member: don't check private constructors
2009-01-27 17:39:06 +00:00
Reijo Tomperi
e764cc4f95
Fix ticket #25 (simplify "void f(x) int x; {" into "void f(int x) {")
2009-01-26 22:26:50 +00:00
Daniel Marjamäki
068b1458c2
memleak: class function usage (fixing #63 )
2009-01-26 18:15:44 +00:00
Daniel Marjamäki
ca0f007ca4
tokenizer: simplify redundant paranthesis
2009-01-26 16:38:08 +00:00
Leandro Penz
9fb11bbfcc
memleak: strcat_result_assignment fixed by checking some functions for "x = func(x[),]".
2009-01-25 20:57:34 +00:00
Daniel Marjamäki
7037a3b4f6
testmemleak: removed the test case that was added in [1105]. It has been moved to the TestTokenizer instead
2009-01-25 19:40:29 +00:00
Daniel Marjamäki
4bb43e7e4d
testtokenize: Added test case for simplifying '((x))' to '(x)'
2009-01-25 19:39:05 +00:00
Daniel Marjamäki
bada255c80
testpreprocessor: removed unused test case
2009-01-25 19:18:18 +00:00
Reijo Tomperi
da63428961
Added test case complex_free
2009-01-25 16:29:51 +00:00
Reijo Tomperi
7631b0b339
Test case added: strcat_result_assignment
2009-01-25 15:56:19 +00:00
Daniel Marjamäki
9c51729be6
preprocessor: stringify macros
2009-01-25 13:30:15 +00:00
Daniel Marjamäki
5acc6aca31
preprocessor: insert space. '#if(' => '#if ('
2009-01-24 19:28:30 +00:00
Leandro Penz
04faae2882
memleak: *x=malloc(); func(&x) is no longer reported as a leak (eliminated &use2).
2009-01-24 18:55:56 +00:00
Leandro Penz
835a749026
snprintf: more tests.
2009-01-24 18:55:07 +00:00
Reijo Tomperi
98d7f02ebc
Added test case preprocessor_and_operation for ticket #55 (also fixed style from previous commit)
2009-01-24 18:50:09 +00:00
Daniel Marjamäki
8e7ff3bace
testtokenize: updated 'TestTokenize::simplify_function_parameters'
2009-01-24 18:21:16 +00:00
Reijo Tomperi
67f30376e1
Added test case simplify_function_parameters
2009-01-24 07:56:47 +00:00
Daniel Marjamäki
ca56520c29
memory leak: don't give false positive when deallocating member variable this->i ( #53 )
2009-01-23 19:24:52 +00:00
Daniel Marjamäki
f31bd86a05
removed compiler warning
2009-01-23 18:55:40 +00:00
Daniel Marjamäki
193cffdb0b
preprocessor: fixed bug with mixed macros ABC and ABCD
2009-01-23 17:14:42 +00:00
Daniel Marjamäki
67e4ea10c9
preprocessor: handle redefinition of macro
2009-01-22 20:19:07 +00:00
Daniel Marjamäki
a9e84c5cd5
preprocessor: handle include guards by not checking for configurations in header files
2009-01-22 18:19:17 +00:00
Nicolas Le Cam
b7e4f1319c
Fix Preprocessor::read to handle char constant of more than one char, fixing issue #45 ; Fix the test that handle the case.
2009-01-21 21:45:17 +00:00
Nicolas Le Cam
42c608b6f0
Remove checks that are already covered well by most compilers (Unreachable Code; Assignment in Condition; Unused Variable).
2009-01-21 21:31:47 +00:00
Reijo Tomperi
53d02c0804
Fix Ticket #43 , preprocessor: include file doesn't work so good in subfolders (note, because of other issues, checking will be very slow now
...
that this is fixed)
2009-01-21 21:03:46 +00:00
Reijo Tomperi
176dd41306
Fixed Ticket #40 , Check copyright texts in files, now that we have new developers.
2009-01-21 20:04:20 +00:00
Reijo Tomperi
9f63e2227b
Added test case multi_character_character
2009-01-21 19:12:28 +00:00
Daniel Marjamäki
76cb2310af
preprocessor: handled problem with parsing strings when expanding macros
2009-01-21 17:11:24 +00:00
Daniel Marjamäki
1622922384
preprocessor: Added todo test. It crashes when it's used
2009-01-21 07:22:44 +00:00
Reijo Tomperi
6d8387914b
Fixes test case "file2", fixes bug with include file handling
2009-01-20 22:25:49 +00:00
Daniel Marjamäki
d82314b365
preprocessor: Handle ##
2009-01-20 18:28:24 +00:00
Daniel Marjamäki
fad65663e5
tokenizer: tokenize ## better
2009-01-20 17:26:16 +00:00
Daniel Marjamäki
45661fed21
tokenizer: added testcase with include files. It should be fixed.
2009-01-20 17:05:42 +00:00
Reijo Tomperi
df5adc5f4f
Added test case preprocessor_doublesharp, executed ./runastyle for errormessage.h
2009-01-19 21:45:59 +00:00
Reijo Tomperi
4d0e3dac45
Added a test case and fixed bug. If #include was inside a string, cppcheck hanged in preprocessor.
2009-01-19 19:24:41 +00:00
Reijo Tomperi
de28502bb1
Fixed bug in line numbers and enabled test case that spots it.
2009-01-19 18:51:27 +00:00
Daniel Marjamäki
7b90246198
testtokenize: Added test "file1". It currently fails.
2009-01-19 18:40:24 +00:00
Daniel Marjamäki
835fa1f007
testtokenize: Removed unneeded test case "define1"
2009-01-19 17:47:12 +00:00
Daniel Marjamäki
a9851f44c1
testpreprocessor: Removed test that doesn't work now that the preprocessor handles includes
2009-01-19 16:42:20 +00:00
Nicolas Le Cam
f6d121443e
unreachableCode: Moved warning of a break statement following a return in --style; Added a test case; Minor optimization.
2009-01-18 21:19:02 +00:00
Leandro Penz
e930525aa4
functionVariableUsage: no longer SIGSEGVs on unfinished struct. Fixes Ticket #31 .
2009-01-18 19:45:43 +00:00
Daniel Marjamäki
f409861492
strPlusChar: Fixed false positives
2009-01-18 17:42:41 +00:00
Daniel Marjamäki
c7311b4b3c
preprocessor: make sure macros are not expanded when they are found in strings
2009-01-18 16:58:57 +00:00
Daniel Marjamäki
965daabe60
preprocessor: Make sure that "#define ABC (a+b+c)" is expanded correctly
2009-01-18 16:56:12 +00:00
Daniel Marjamäki
ea686a1da9
preprocessor: fixed so the TestPreprocessor::preprocessor_undef succeeds
2009-01-18 16:37:40 +00:00
Reijo Tomperi
d31e0ae8a1
Fix compile warning signed-unsigned
2009-01-18 11:14:35 +00:00
Reijo Tomperi
8155b9272f
Refactoring: Style applied
2009-01-18 11:13:25 +00:00
Daniel Marjamäki
4ee4645858
Preprocessor: Reverted [1008] - The old expandMacros was readded
2009-01-18 10:54:07 +00:00
Daniel Marjamäki
e315595c36
Tokenizer: Added unit test to check that define is tokenized correctly
2009-01-18 08:52:20 +00:00
Daniel Marjamäki
a269cfc8d9
tokenizer: The tokenizer shouldn't handle comments nor preprocessor directives. The preprocessor will take care of
...
that
2009-01-18 08:38:25 +00:00
Daniel Marjamäki
86c95c27d2
Preprocessor: Removed "Preprocessor::expandMacros" and commented all its tests
2009-01-18 07:32:06 +00:00
Reijo Tomperi
58b398a4a8
Fix Ticket #32 False positive with --style: Uninitialized member variable (when stream is used)
2009-01-17 20:17:57 +00:00
Reijo Tomperi
f6452e3613
Test case for Ticket #32
2009-01-17 19:26:58 +00:00
Daniel Marjamäki
b9b250f4cc
unused var: fixed false positives when using shift operator
2009-01-17 14:32:02 +00:00
Daniel Marjamäki
8780fbf8bb
bounds checking: Added error message "snprintf size is out of bounds"
2009-01-17 13:09:02 +00:00
Daniel Marjamäki
a5e2787f72
errmsg: added varname to the message "deallocating a deallocated pointer"
2009-01-17 11:15:46 +00:00
Daniel Marjamäki
121c0ee58f
unused variable: reading the value of variable in a for loop.. "for(;a;)" see ticket #18
2009-01-17 11:12:15 +00:00
Daniel Marjamäki
f562f588fb
memory leak: detect memory leak ( #6 )
2009-01-17 07:55:40 +00:00
Daniel Marjamäki
666fc82011
Memory leak: Fixed false positives about deallocating pointer that has already been deallocated
2009-01-16 16:29:41 +00:00
Daniel Marjamäki
4cfb8ad1cb
memory leaks: Added checking of deallocate to see that the pointer isn't deallocated already
2009-01-15 20:34:39 +00:00
Daniel Marjamäki
66e93b24e2
str plus char: added simple variable handling
2009-01-15 17:12:33 +00:00
Daniel Marjamäki
8bbd4b9401
str plus char: Added check and error message for str + ch
2009-01-15 16:57:51 +00:00
Daniel Marjamäki
03cfe18c9b
errmsg: Added 'condition is always true/false'
2009-01-14 19:43:28 +00:00
Daniel Marjamäki
22583269c1
Uninitialized member variables: Checking enum variables
2009-01-14 19:34:10 +00:00
Daniel Marjamäki
97a7bc383d
memory leak: Added test case
2009-01-14 16:40:07 +00:00
Daniel Marjamäki
a604f56f19
buffer overruns: added sprintf checking
2009-01-14 06:29:35 +00:00
Daniel Marjamäki
f7e4f13ecd
Memory leak: Readded some checking to classes
2009-01-14 05:58:20 +00:00
Leandro Penz
1a14cd527c
functionVariableUsage: support for nested struct/union declaration.
2009-01-14 00:45:44 +00:00
Daniel Marjamäki
e664f255a4
Memory leak: Fixed a false positive
2009-01-13 18:30:39 +00:00
Daniel Marjamäki
c1a4e9b000
testpreprocessor: commented the "undef" test that doesn't work
2009-01-12 19:23:01 +00:00
Reijo Tomperi
ee54d4da91
Added test case which currently fails, #undef is not handled
2009-01-12 18:23:53 +00:00
Daniel Marjamäki
15a32103e2
testdivision: The 'unsigned division' is a style check
2009-01-12 17:20:32 +00:00
Daniel Marjamäki
980b10bfc9
errmsg: Added 'unsigned division'
2009-01-12 17:12:14 +00:00
Daniel Marjamäki
153487d504
preprocessor: Style updates
2009-01-12 06:43:56 +00:00
Daniel Marjamäki
eb8675ab76
preprocessor: Handle newlines better
2009-01-12 06:33:06 +00:00
Daniel Marjamäki
ea6c48b2bd
preprocessor: fixed a small bug when expanding macro without parameter
2009-01-11 16:06:37 +00:00
Daniel Marjamäki
da881fdd0a
preprocessor: Fixed bug when expanding macros without parameters
2009-01-11 15:51:46 +00:00
Daniel Marjamäki
ecdfee850d
preprocessor: expand macro without parameters
2009-01-11 15:07:13 +00:00
Daniel Marjamäki
da46e4bd96
struct member usage: bail out the check if the struct contain any functions
2009-01-11 14:39:52 +00:00
Daniel Marjamäki
2e77f3bf04
setVarId: Fixed bug (variable id for struct member not correctly set)
2009-01-11 10:03:21 +00:00
Daniel Marjamäki
e42953bd3b
preprocessor: Added a test to see that "<backslash><newline>" is handled correctly inside strings
2009-01-11 08:16:15 +00:00
Daniel Marjamäki
94667320e8
preprocessor: Handle "<backslash><newline>" better
2009-01-11 07:19:28 +00:00
Leandro Penz
764e44790f
match: skip initial !! patterns if on first token.
2009-01-10 21:13:10 +00:00
Daniel Marjamäki
7b10b0ff4d
errmsg: Added "Unused private function ..."
2009-01-10 17:35:41 +00:00
Daniel Marjamäki
dc6317878e
errmsg: Added "uninitialized member variable"
2009-01-10 17:11:47 +00:00
Leandro Penz
5570f06075
checkmemoryleak: no longer flag "dealloc ; alloc ; if continue ;" as a leak, even with --all
2009-01-10 16:28:04 +00:00
Daniel Marjamäki
1a4cfc6c4f
unused struct member: fixed false positive for member "const int a;"
2009-01-10 14:39:20 +00:00
Daniel Marjamäki
a2a8378749
astyle: updated the code style
2009-01-10 14:29:59 +00:00
Daniel Marjamäki
8c4260519c
sprintf: fixed bug "false positive when variable is used again after snprintf"
2009-01-10 14:27:31 +00:00
Daniel Marjamäki
0c3c00daec
errmsg: Added errormessage for 'the class 'classname' doesn't have a constructor'
2009-01-10 13:08:44 +00:00
Daniel Marjamäki
985b8fa05f
sprintf: fixed false positives with "sprintf(buf, "%i", sizeof(buf));
2009-01-10 11:19:17 +00:00
Leandro Penz
febdc3fe6e
token: when Token::Match reached the end of input, it returned true if the next pattern was !!. It now returns true only if all remaining patterns are !!.
2009-01-10 00:33:48 +00:00
Reijo Tomperi
c7730044c7
Added test case for preprocessor which currently fails. codeblocks project file updated, tools-files added.
2009-01-08 22:28:54 +00:00
Reijo Tomperi
42b661630b
astyle changes, missed from previous commits
2009-01-08 21:08:14 +00:00
Daniel Marjamäki
5d0f8f0cfa
errormessage: Added a few more messages for checkother.cpp
2009-01-08 20:56:51 +00:00
Daniel Marjamäki
24530ebd60
sprintf: check for dangerous usage with sprintf|snprintf with
...
overlapping data
2009-01-08 06:24:08 +00:00
Daniel Marjamäki
8f86a941aa
Simplify tokens: add a ";" after case and default
2009-01-07 17:49:21 +00:00
Reijo Tomperi
e435a1f1d6
Refactoring: Added src/ and test/ folders. Moved source files to those folders, updated makefile and codeblocks project file.
2009-01-06 14:18:36 +00:00