Commit Graph

4091 Commits

Author SHA1 Message Date
Arpit Chaudhary 67e40a85e5 Improved check for shifting by negative values and removed false positives 2012-09-05 16:09:40 +02:00
PKEuS f969530e1f Revert "Fixed #4087" which was committed by accident.
This reverts commit 0bbef8d803.
2012-09-05 13:57:57 +02:00
Nilesh Kumar c7633fc73c Fixed #3645 2012-09-05 13:48:00 +02:00
gaurav kaushik 9ad7dfd5fd Fixed #211 and #214 2012-09-05 12:58:09 +02:00
PKEuS e5b1a6ceb1 Merge branch 'master' of github.com:danmar/cppcheck 2012-09-05 12:18:11 +02:00
Zachary Blair 8546bcc94e Fixed #2029 (new check: free invalid address) 2012-09-04 23:31:23 -07:00
PKEuS 0bbef8d803 Fixed #4087 2012-09-04 21:50:50 +02:00
Daniel Marjamäki 4eeec75b73 TestPreprocessor: Encode extended ASCII characters to avoid VS compiler warnings. 2012-09-04 16:29:06 +02:00
PKEuS 8924e8af43 Fixed #4143: Give correct line numbers in checkunusedvar.cpp 2012-09-04 14:53:24 +02:00
anuraggarg011 913670d254 Fixed #3304 (simple cases) 2012-09-04 13:41:14 +02:00
kbajaj91 be716e81d3 Fixed #4138 - False positive about variable assigned a value that is never
used in loops
2012-09-04 13:06:04 +02:00
Edoardo Prezioso f8591f9004 CheckOther::clarifyStatement: improved message to show what's the 'bad' and the 'good' expression. 2012-09-04 02:07:55 +02:00
Edoardo Prezioso 6fd60eebb0 Tokenizer: added a workaround for #3690 (Support MSVC's 'for each'). 2012-09-03 20:23:53 +02:00
anuraggarg011 bf11248a09 Fixed #1620 (tokenizer: simplify well known math functions) 2012-09-03 18:51:15 +02:00
anuraggarg011 b156c727b0 Fixed #3939: Support ****foo++; 2012-09-03 17:10:27 +02:00
Ankita Gupta c3a65dca40 Fixed #3793 (improve check: calculation in sizeof) 2012-09-03 15:56:10 +02:00
Edoardo Prezioso 04661fd7d0 Fixed test changes I forgot in previous commit. 2012-09-03 15:20:34 +02:00
XhmikosR cd7c4df622 consistency changes 2012-09-03 13:52:06 +03:00
PKEuS 27cafd495a Don't bailout for noreturn functions in checkRedundantAssignments outside switch. 2012-09-03 12:03:30 +02:00
PKEuS b6c1528566 Test case for #4135 2012-09-03 11:32:15 +02:00
Kartik Bajaj ea0cbbcf78 Fixed #1481 2012-09-02 18:50:17 +02:00
deepak gupta 24659dee92 Fixed #4087 2012-09-02 14:26:39 +02:00
PKEuS 2d64b69cf4 New check: Detect redundant assignment to a variable and redundant copying to a buffer
This check partially replaces the check for redundant assignments in switch
2012-09-02 13:09:32 +02:00
Deepak Gupta 4202866100 Fixed #4096 (Improve check: Buffer overrun in for loop, postfix increment in array access) 2012-09-01 19:17:28 +02:00
pranav1509 6f6baa67e4 Added more patterns to redundant condition check. 2012-09-01 13:39:32 +02:00
PKEuS c20adf91bf Moved simplification of wide character string literals (L"foo") to tokenize(). Token::isLong flag used to indicate that string is a wchar_t literal. 2012-09-01 13:12:47 +02:00
Ankita-gupta ff7373f46f Fixed bug in Token::Match (#3720) 2012-08-30 13:33:19 +02:00
Edoardo Prezioso 0d26a79f2c Tokenizer::simplifyEmptyNamespaces: new function.
It removes from the token list, if found, the following tokens: 'namespace %var% { }'. It won't involve C code.
2012-08-28 22:40:25 +02:00
PKEuS ea85dd305a Fixed #4086: Set varId in initialization list. 2012-08-28 12:44:40 +02:00
Daniel Marjamäki 9fe9944adb Fixed #4034 (false positive:(error) Dereferencing 'cfileP' after it is deallocated / released) 2012-08-28 06:38:38 +02:00
Daniel Marjamäki 0d82b08080 Fixed #4040 (false positive: (error) Uninitialized variable: iter) 2012-08-27 15:48:21 +02:00
PKEuS 671f1b83d9 Fixed false positive: Return value of std::remove() ignored when std::remove(char*) is called (#4093) 2012-08-27 14:28:16 +02:00
PKEuS 046712aaec Removed --doc formating hack that removes more than three newlines and added format testing of Check::classInfo instead.
- Fixed test failures shown by new test.
Use const_iterator instead of iterator in testcppcheck.cpp when possible
2012-08-26 16:22:46 +02:00
PKEuS 1fbaae948c Added regression test cases for #404. 2012-08-26 11:39:17 +02:00
PKEuS 4b1075b34b Fixed #3729: Don't suggest recursive call to optimize away c_str() 2012-08-26 10:56:46 +02:00
PKEuS 6893948c72 Bugfix: Reset property info when Token::link() is set (< can be a bracket or a comparison operator). Fixes #4075. 2012-08-26 10:23:16 +02:00
PKEuS 662b0d2dbe Simplify 0[foo] to *(foo) (fixes #4083) 2012-08-26 10:03:05 +02:00
PKEuS 9fa7e15fb4 Fixed setVarId for nested templates (#3976, #3769) and support C++11 right angle brackets in TemplateSimplifier::templateParameters() 2012-08-26 09:49:38 +02:00
Daniel Marjamäki f127728582 Enable --std=c11 and --std=c++11 by default 2012-08-25 21:57:45 +02:00
Daniel Marjamäki 41797d409d Fixed #4036 (cppcheck hangs with 100% cpu load) 2012-08-25 13:24:17 +02:00
Daniel Marjamäki 7975ffba21 Fixed #3980 (Variable not assigned a value) 2012-08-25 13:07:33 +02:00
PKEuS bb068d2f78 Fixed false positive #4039: Handle operator precedence in CheckStl::size() 2012-08-25 12:36:13 +02:00
Daniel Marjamäki 985ac662ee Fixed #4035 (False positive: Memory leak: pTempFile) 2012-08-25 12:00:25 +02:00
Daniel Marjamäki 730935efdd Fixed testrunner assertions in TestPreprocessor 2012-08-25 11:45:18 +02:00
Daniel Marjamäki 5051837c1a Reverted last commit. I pushed it by mistake. 2012-08-25 11:00:51 +02:00
Daniel Marjamäki 5e1ccfaf90 Fixed #4035 (False positive: Memory leak: pTempFile) 2012-08-25 10:55:20 +02:00
PKEuS 808c3468c9 New check: detect suspicious comparison of string literal with char* variable
Bugfix: Update Token type when varId is set
2012-08-24 14:25:17 +02:00
PKEuS 76fbcce13f Restored (intentional) content of screwed up commits 1bcdf4ce3d and 674f7980d519712ff16d8f874dfe55a84deb4b5b:
- New check (Inconclusive): Array filled incompletely with memset/memcpy/memmove
-- This check only warns if the number of elements is given as size in bytes to memset, memcpy or memmove and if the size of an element is larger than 1 Byte. It does not warn for random numbers

- New check: Detect ineffective statements like '*foo++;' (Should be: '(*foo)++;')

Sorry for the inconveniences.
2012-08-24 11:28:50 +02:00
Edoardo Prezioso 0f1accc2da Revert latest two commits as they break the compilation and the style. PKEuS??? 2012-08-24 00:10:19 +02:00
PKEuS 1bcdf4ce3d New check: Detect ineffective statements like '*foo++;' (Should be: '(*foo)++;') 2012-08-23 12:28:40 -07:00