Commit Graph

1141 Commits

Author SHA1 Message Date
Slava Semushin 3c5b13a276 Fixed #783 (Refactoring: autoVariables error message is hard coded in 3 locations)
http://sourceforge.net/apps/trac/cppcheck/ticket/783
2009-10-04 16:47:47 +07:00
Daniel Marjamäki 29e7261529 astyle formatting 2009-10-04 11:28:37 +02:00
Slava Semushin f6462abef2 src/preprocessor.h: fixed comment.
removeParantheses() doesn't throws exception.

Correction for 1a48f869c8 commit.

No code change.
2009-10-04 12:55:23 +07:00
Daniel Marjamäki ee1bcb728c use '<' comparisons instead of '>' (#610) 2009-10-04 07:51:12 +02:00
Daniel Marjamäki 1a48f869c8 Fixed #772 (Preprocessor: #if(A) is not seen equal to #if A) 2009-10-04 07:25:30 +02:00
Daniel Marjamäki 4387071eb1 Fixed #733 (New check: locking & unlocking mutex and semaphore variables) 2009-10-03 21:46:22 +02:00
Slava Semushin b0d8b6ca8b Fixed #780 (Tokenizer: replace typedef for pointers to struct)
http://sourceforge.net/apps/trac/cppcheck/ticket/780
2009-10-03 22:02:23 +07:00
Slava Semushin 803748a654 Token::Match(): made message about bug more verbose. 2009-10-03 21:35:25 +07:00
Slava Semushin 9a48efec00 Fixed #775 (###### If you see this, there is a bug ###### Token::Match() - varid was 0)
http://sourceforge.net/apps/trac/cppcheck/ticket/775
2009-10-03 21:27:16 +07:00
Slava Semushin 8dc9528a74 Tokenizer::simplifyVarDecl(): join 2 conditions.
No functional change.
2009-10-03 17:11:52 +07:00
Slava Semushin 9983066f62 Fixed #770 (Tokenizer: Var id not set for static variables in some cases)
http://sourceforge.net/apps/trac/cppcheck/ticket/770
2009-10-03 17:05:07 +07:00
Daniel Marjamäki 0448753b13 Borland C++: Fixed compiler errors 2009-10-03 09:34:38 +02:00
Reijo Tomperi 70e236bc56 Attempt to speed up preprocessing on macro-in-macro situations.
See #762 (version 1.37 of cppcheck runs extremely slowly on windows)
http://sourceforge.net/apps/trac/cppcheck/ticket/762
2009-10-02 22:17:20 +03:00
Reijo Tomperi 6989670e8f Abort comma simplification when ", %num%" is detected.
This increases speed a lot in some rare situations.
2009-10-02 15:38:41 +03:00
Daniel Marjamäki e894e37131 Fixed #679 (False positive: Unused private function produced by exception specification) 2009-10-01 19:45:48 +02:00
Reijo Tomperi b3ad712b61 Fix #421 (Memory leak not found when typeid() is used.)
http://sourceforge.net/apps/trac/cppcheck/ticket/421
2009-10-01 11:56:59 +03:00
Reijo Tomperi f1e1f9b8f7 Trivial refactoring 2009-10-01 11:37:15 +03:00
Reijo Tomperi 4650e513e1 Fix #741 (False positive: Buffer overrun with -a when index increased in multiple locations)
http://sourceforge.net/apps/trac/cppcheck/ticket/741
2009-10-01 11:33:53 +03:00
Reijo Tomperi d4a97eb2b4 Fix #419 (missleading buffer overrun)
http://sourceforge.net/apps/trac/cppcheck/ticket/419
2009-10-01 10:59:27 +03:00
Reijo Tomperi 37fb0d8c8a Removed dead code created by previous commit 2009-10-01 10:28:30 +03:00
Reijo Tomperi 39092150e2 Fix #763 (Tokenizer: Goto incorrectly simplified)
http://sourceforge.net/apps/trac/cppcheck/ticket/763
2009-10-01 10:25:32 +03:00
Reijo Tomperi f9871c2d54 Fix #745 (false positive: possible null pointer dereference , while)
http://sourceforge.net/apps/trac/cppcheck/ticket/745
2009-09-30 21:42:14 +03:00
Reijo Tomperi ec44f8f6c7 Fix #744 (False positive: (possible error) Array index out of bounds)
http://sourceforge.net/apps/trac/cppcheck/ticket/744
2009-09-30 15:51:33 +03:00
Reijo Tomperi 6ed727564c Fix #759 (Tokenizer: Incorrect var id when two variables with same name)
http://sourceforge.net/apps/trac/cppcheck/ticket/759
2009-09-30 14:40:10 +03:00
Reijo Tomperi 7852d38f54 Fix #761 (Tokenizer: typedef inside class is incorrectly simplified)
http://sourceforge.net/apps/trac/cppcheck/ticket/761
2009-09-30 14:35:00 +03:00
Reijo Tomperi bb1a9a07e4 Fix #760 (Tokenizer: Goto not simplified)
http://sourceforge.net/apps/trac/cppcheck/ticket/760
2009-09-30 14:30:53 +03:00
Reijo Tomperi 724c78fb4d Fix #750 (cppcheck wants variable outside do-loop to be only inside loop)
http://sourceforge.net/apps/trac/cppcheck/ticket/750
Fix #758 (False positive on variable scope with boost foreach)
http://sourceforge.net/apps/trac/cppcheck/ticket/758
2009-09-30 00:56:43 +03:00
Reijo Tomperi 9d9d600d43 Changed simplifyConditionOperator() to create also {} around if and else
Fixed validate() in tokenizer.
2009-09-29 23:27:10 +03:00
Reijo Tomperi 1b1047a5e4 Fix #757 (Change message: (style) The class 'KClass' has no constructor)
http://sourceforge.net/apps/trac/cppcheck/ticket/757
2009-09-29 21:27:17 +03:00
Slava Semushin 88dd9846ae Tokenizer::tokenize(): removed useless const_cast.
No functional change.
2009-09-30 00:37:56 +07:00
Daniel Marjamäki 12b29e35ad Ashim Kapoor: deal with backspace better (#694) 2009-09-29 17:02:19 +02:00
Reijo Tomperi 63523316a2 Check nullpointer check is now executed without --style flag
Added TODO test case for nullpointer check
2009-09-29 16:38:05 +03:00
Reijo Tomperi 64f0f3b308 Fix #751 (if-condition considered redundant even with else-branch)
http://sourceforge.net/apps/trac/cppcheck/ticket/751
Fix also other issue with if(a.b) delete c.b;
Fix also other issue with if(a.b.c) delete a.b.c;
2009-09-29 00:18:40 +03:00
Daniel Marjamäki 311f6dc92e Fixed #746 (False positive, Memory leak when goto is used) 2009-09-28 22:58:06 +02:00
Daniel Marjamäki 1427f0a2c7 memory leaks: fixed a TODO_ASSERT_EQUALS for a false positive 2009-09-28 22:41:45 +02:00
Reijo Tomperi 949ad462c7 Fix #739 (Pre-defined output format templates)
http://sourceforge.net/apps/trac/cppcheck/ticket/739
Patch from lanurmi. Slightly modified by me.
2009-09-28 22:48:27 +03:00
Reijo Tomperi 2d4404f030 Fix #754 (Tokenizer: transform modifier "signed" to "int")
http://sourceforge.net/apps/trac/cppcheck/ticket/754
Also fix int unsigned -> unsigned int
2009-09-28 21:25:05 +03:00
Slava Semushin b9237db9a3 Fixed #753 (Tokenizer: don't simplify variables inside do {} while loop)
http://sourceforge.net/apps/trac/cppcheck/ticket/753
2009-09-28 22:15:31 +07:00
Daniel Marjamäki a61abcbbc8 Fixed #728 (False positive, resource leak, when released in a loop) 2009-09-27 21:49:07 +02:00
Slava Semushin 342e71803f src/checkbufferoverrun.cpp: fixed regression.
test suite was broken after my
e8c83613e4 commit.
2009-09-27 23:03:11 +07:00
Slava Semushin e8c83613e4 Fixed #740 (False positive, buffer overrun with --all)
Regression since 07f41f4563 commit.

http://sourceforge.net/apps/trac/cppcheck/ticket/740
2009-09-27 22:50:59 +07:00
Slava Semushin f62e5f1672 src/checkbufferoverrun.cpp: removed useless semicolon.
No functional change.
2009-09-27 22:14:58 +07:00
Slava Semushin 661ce78b69 Fixed #738 (False Buffer overrun with -a when i is increased by more than 1 inside loop body)
http://sourceforge.net/apps/trac/cppcheck/ticket/738
2009-09-27 22:14:51 +07:00
Reijo Tomperi fdde2182b9 Fix GPL comments in all files. ">." was missing from the end. 2009-09-27 18:08:31 +03:00
Reijo Tomperi 9df2b84233 Remove redundant comparison 2009-09-27 17:53:09 +03:00
Slava Semushin 07f41f4563 Fixed #714 (False Buffer overrun with -a when i is increased by more than 1 in a loop)
http://sourceforge.net/apps/trac/cppcheck/ticket/714
2009-09-27 21:12:46 +07:00
Reijo Tomperi d1f3953cce Fix #720 (String length for strings like this "\x61" is calculated wrong)
http://sourceforge.net/apps/trac/cppcheck/ticket/720
2009-09-27 17:04:10 +03:00
Slava Semushin 7e2208b5cc Detects invalid iterator inside for() when postfix form of increment used. 2009-09-27 15:10:21 +07:00
Slava Semushin 5285635354 Fixed #735 (Detects invalid iterator after push_back() when iterator declared inside for())
http://sourceforge.net/apps/trac/cppcheck/ticket/735
2009-09-27 14:59:19 +07:00
Slava Semushin acdbb20c99 Detect buffer overruns when ?: use as sprintf() argument. 2009-09-27 00:40:58 +07:00
Slava Semushin 19ed8e9311 Fixed #729 (False positive: Buffer overrun when ? is used to select parameter)
http://sourceforge.net/apps/trac/cppcheck/ticket/729
2009-09-27 00:06:54 +07:00
Slava Semushin 50a34b8a37 Fixed #731 (False positive, strcpy copying a buffer with a null character)
http://sourceforge.net/apps/trac/cppcheck/ticket/731
2009-09-26 22:58:14 +07:00
Slava Semushin 6d56ab9df6 CheckBufferOverrun::count(): commented out debug message.
Added in 3da779725d commit.
2009-09-26 21:59:16 +07:00
Daniel Marjamäki 3da779725d Ashim Kapoor: handle %i,%f,%d,%x,%X better (#694) 2009-09-26 16:19:18 +02:00
Slava Semushin a919f4541a Fixed #732 (Tokenizer: Incorrect simplification)
Regression since 58a9e05697 commit.

http://sourceforge.net/apps/trac/cppcheck/ticket/732
2009-09-26 17:02:13 +07:00
Daniel Marjamäki 0b3a139b3b Fixed #710 (False positive: invalid vector iterator after push_back) 2009-09-26 11:49:09 +02:00
Daniel Marjamäki 482a2f9d95 Fixed #718 (False positive, resource leak when break in a loop before exit) 2009-09-26 07:19:22 +02:00
Reijo Tomperi 6a63742dde Fix #730 (False positive, buffer overrun with strncpy)
http://sourceforge.net/apps/trac/cppcheck/ticket/730
2009-09-25 23:32:18 +03:00
Daniel Marjamäki fd311e3c72 Fixed #678 (False positive: Unused private function produced by inner class) 2009-09-25 20:42:22 +02:00
Daniel Marjamäki fe3c8cab9f Ashim Kapoor: Added function that returns minimum size of format strings (#694) 2009-09-25 18:23:44 +02:00
Reijo Tomperi 2594f9b63f Merge branch 'master' of git@github.com:danmar/cppcheck 2009-09-24 23:47:28 +03:00
Reijo Tomperi 16e55f4f89 Improve C style pointer cast detection
http://sourceforge.net/apps/trac/cppcheck/ticket/724
2009-09-24 23:46:08 +03:00
Daniel Marjamäki cd94d50526 Memory leaks: fixed a TODO_ASSERT_EQUALS 2009-09-24 22:40:18 +02:00
Daniel Marjamäki fa4e0a617e Fixed #700 (False positive: Memory leak) 2009-09-23 22:42:07 +02:00
Daniel Marjamäki 36c838c0e2 Replaced UNIT_TESTING ifdef with _MSC_VER 2009-09-23 22:16:46 +02:00
Reijo Tomperi 62ccda5677 Fix #713 (Tokenizer: Simplify 0L)
http://sourceforge.net/apps/trac/cppcheck/ticket/713
Use MathLib to handle other variations of 0.
2009-09-23 22:44:52 +03:00
Reijo Tomperi 832481b36e Changed some CppcheckExecutor functions and variables protected and virtual. 2009-09-23 22:27:07 +03:00
Slava Semushin 313479cf8d Tokenizer::simplifySizeof(): use Token::getStrLength().
Fixed wrong result when string contains escaped quotes.

Correction for 0e729fedc0 commit.
2009-09-23 23:02:53 +07:00
Reijo Tomperi ef09f3475c Fix #713 (Tokenizer: Simplify 0L)
http://sourceforge.net/apps/trac/cppcheck/ticket/713
2009-09-23 00:23:11 +03:00
Daniel Marjamäki a705815a51 updated version to 1.37 2009-09-22 20:57:24 +02:00
Daniel Marjamäki 0e729fedc0 Fixed #716 (segmentation fault: sizeof string) 2009-09-22 20:50:00 +02:00
Slava Semushin 610529ab69 Tokenizer::createLinks(): fixed typo in comment.
Since commit 1c01dd64f3.
2009-09-22 23:36:12 +07:00
Daniel Marjamäki ad92aa4c20 Fixed #715 (False positive: Resource leak when exit() after if loop) 2009-09-22 18:09:29 +02:00
Daniel Marjamäki faac5bccd6 Fixed #702 (If you see this, there is a bug - varid was 0) 2009-09-22 17:49:13 +02:00
Reijo Tomperi 4d2a8608a8 Fix #706 (false positive: invalid number of character ((), can't process file)
http://sourceforge.net/apps/trac/cppcheck/ticket/706
2009-09-21 23:27:06 +03:00
Reijo Tomperi 0fff5a23bf Fix #701 (false positive: Invalid deallocation)
http://sourceforge.net/apps/trac/cppcheck/ticket/701
2009-09-20 23:38:32 +03:00
Reijo Tomperi 1c01dd64f3 Fix #703 (Tokenizer: Create links for [])
http://sourceforge.net/apps/trac/cppcheck/ticket/703
2009-09-20 23:13:06 +03:00
Reijo Tomperi 2dc1fe5dc1 astyle fix 2009-09-20 22:42:43 +03:00
Daniel Marjamäki d287a8e1d2 Version: 1.36 2009-09-20 14:14:01 +02:00
Slava Semushin 7236230228 Additional fix for better simplifying array declaration.
Pointed out by hyd_danmar@ in IRC.

Addressed to #696
2009-09-20 18:28:56 +07:00
Slava Semushin 5dee65048f Fixed #690 (False positive: (possible error) Buffer overrun)
http://sourceforge.net/apps/trac/cppcheck/ticket/690
2009-09-20 17:54:19 +07:00
Slava Semushin 58a9e05697 Fixed #696 (Tokenizer: Simplify array declaration)
http://sourceforge.net/apps/trac/cppcheck/ticket/696
2009-09-20 17:28:15 +07:00
Reijo Tomperi 003e27c10e Fix #667 (Preprocessor does not handle macro inside macro correctly)
http://sourceforge.net/apps/trac/cppcheck/ticket/667
2009-09-20 00:09:05 +03:00
Daniel Marjamäki 7f2ca357b0 Fixed #673 (False positive: null pointer dereference when dynamic cast is used) 2009-09-19 10:54:10 +02:00
Slava Semushin 4c30ab0b88 Token::stringifyList(): removed const modifier from parameter.
const useless in this case because argument passed by value.

No functional change.
2009-09-19 14:16:01 +07:00
Slava Semushin 5ab6c6cf80 Preprocessor: document that removeComments() may throws exception.
No code change.
2009-09-19 13:30:54 +07:00
Daniel Marjamäki 8f96c1992a Fixed #688 (False positive in error category when --all is used) 2009-09-19 08:23:10 +02:00
Daniel Marjamäki 14c45c2118 Preprocessor: Skip BOM 2009-09-18 19:42:06 +02:00
Daniel Marjamäki e4291a5966 Fixed #676 (The scope of variable can actually not be limited) 2009-09-17 21:05:12 +02:00
Daniel Marjamäki 1dc738b1ae Fixed #677 (False positive: Unused private function produced by class member initialization) 2009-09-16 23:04:13 +02:00
Daniel Marjamäki c5368581d9 Fixed by #675 (false positive: when operator is overloaded) 2009-09-16 20:07:03 +02:00
Reijo Tomperi 55fc473a00 Fix #684 (Tokenizer: (65536*72/100) incorrectly simplified to zero)
http://sourceforge.net/apps/trac/cppcheck/ticket/684
2009-09-15 23:38:54 +03:00
Daniel Marjamäki 5efedf85d6 Fixed #671 (False positive. Leak when loop is before exit) 2009-09-15 22:26:38 +02:00
Daniel Marjamäki 36c7108a28 Fixed #669 (possible style without --all + false positives) 2009-09-15 20:46:47 +02:00
Daniel Marjamäki 020321769c Fixed #658 (Assertion 'begin != __null' failed) 2009-09-14 21:49:41 +02:00
Reijo Tomperi 2b6955dde5 Fix #670 (Tokenizer: Simplify '\0' into 0)
http://sourceforge.net/apps/trac/cppcheck/ticket/670
2009-09-14 21:42:56 +03:00
Daniel Marjamäki e3119235e0 Tokenizer: Added a simple validation function that we can use during debugging 2009-09-13 15:35:37 +02:00
Daniel Marjamäki 62bdf032ac simplifyTemplates: assert that braces and parantheses are handled correctly 2009-09-13 15:00:48 +02:00
Slava Semushin fc7413e43d Token::getStrLength(): fixed errors from valgrind.
Correction for 13b2edd61e commit.
2009-09-13 17:50:21 +07:00
Slava Semushin 0fb89f8afa Fixed #645 (Tokenizer::simplifyCasts() breaks link() if casts function)
http://sourceforge.net/apps/trac/cppcheck/ticket/645
2009-09-13 17:31:32 +07:00