Commit Graph

2746 Commits

Author SHA1 Message Date
Daniel Marjamäki ea57e10c7f Tokenizer::simplifyCalculations: simplify division result if it's a whole number, even though it doesn't have precedence 2011-04-02 12:52:11 +02:00
Daniel Marjamäki 855b01cd5a Clarify precedence 'a*b?c:d' : warn for addition, subtraction and division also. tried to clarify the message more 2011-04-02 11:43:20 +02:00
Daniel Marjamäki f34e9e6623 Tokenizer: better simplification of calculations in conditions 2011-04-02 11:08:58 +02:00
Robert Reif cf65a73c47 fix CheckClass::operatorEq to check return type more closely (to match check description) 2011-03-31 19:40:28 -04:00
Daniel Marjamäki b8cda19ca6 Fixed #2655 (false positive: (warning) Redundant code: Found a statement that begins with numeric constant) 2011-03-30 21:57:01 +02:00
Daniel Marjamäki ae2a8d839b Fixed #2693 (__declspec attribute not removed properly) 2011-03-30 19:49:55 +02:00
Stefan Weil 675e63b6a7 Spell checks 2011-03-30 16:45:31 +02:00
Stefan Weil 0e4cf7a2d6 Spell checks 2011-03-30 16:44:16 +02:00
Kimmo Varis 4d4b28b075 Remove './' at begin of path in Path::simplifyPath.
The './' is not needed at begin of path for files we check. And it
only makes paths longer. This also makes it easier to match paths.
2011-03-29 20:53:18 +03:00
Daniel Marjamäki 0a2f11c2cd Fixed #2695 (False positive: null pointer dereference and ternary operator (?:)) 2011-03-29 18:45:32 +02:00
Robert Reif e9a23d9cb5 fix #2692 (False positive: if parsed as function in operator >>) 2011-03-28 20:02:06 -04:00
Robert Reif 1aca09a8bf add support for checking struct/class member container in CheckStl::size() 2011-03-28 19:31:23 -04:00
Kimmo Varis b889f663ae Add Path::removeQuotationMarks() to clean path. 2011-03-28 22:14:19 +03:00
Daniel Marjamäki d539cf59ca Null pointer: Added TODO test case for ticket #2681 2011-03-28 19:27:07 +02:00
Daniel Marjamäki a1dba61cee Null pointer: prefer longer error message that says 'otherwise condition at line X is redundant' 2011-03-28 18:48:27 +02:00
Daniel Marjamäki 7426bd3daf Null pointer: prefer longer error message that says 'otherwise condition at line X is redundant' 2011-03-28 18:44:25 +02:00
Daniel Marjamäki 4a7b60942b Fixed #2691 (False positive: struct dereference and check (switch-break)) 2011-03-28 17:28:21 +02:00
Robert Reif 31f8ff723b skip nested anonymous unions when searching for variables in symbol database 2011-03-27 18:37:31 -04:00
Daniel Marjamäki 57056bcf61 Fixed #2689 (False positive: Possible null pointer dereference) 2011-03-27 21:29:49 +02:00
Robert Reif 1e1434e191 make member variable change detection simpler and more accurate for CheckClass::checkConst 2011-03-27 13:59:12 -04:00
Daniel Marjamäki c87037c29d Fixed #2674 (False positive: possible null pointer dereference (check if pointer is null in one function, dereference it in another function)) 2011-03-27 11:04:58 +02:00
Daniel Marjamäki e89f6d6ec0 Fixed #2660 (False positive: Variable 'v' is assigned a value that is never used) 2011-03-27 08:19:09 +02:00
Markus Elfring ce198f85fc Addition of a file name in a CMake script (bug #2524, #1690)
A few source files were added because of the feature request "Ability to
exclude files and directories from checks".
6401271ceb

A CMake build script was updated for these changes.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
2011-03-26 20:41:01 +01:00
Daniel Marjamaki c6b176014b cmake: removed the non-working pcre. ticket: #2679 2011-03-26 19:03:11 +01:00
Daniel Marjamäki 3c2d3ca3a4 Fixed #2653 (segmentation fault of cppcheck 'x=b=0;') 2011-03-26 12:20:23 +01:00
Daniel Marjamäki 7d9872a134 Tokenizer::setVarId: Prevent that wrong varid is given when uncertain. Ticket: #2680 2011-03-26 10:05:07 +01:00
Daniel Marjamäki 2b1277aa64 Fixed #2680 (setVarId: variables with class qualification don't get varid) 2011-03-26 08:56:41 +01:00
Robert Reif 168db82fd6 better checking of assignment to array element in CheckClass::checkConstFunc 2011-03-25 23:02:13 -04:00
Robert Reif f8e1735b0f add support to CheckClass::checkConstFunc for ++/-- array elements 2011-03-25 22:37:32 -04:00
Sebastien Debrard 29b7d4b9c3 sync cmake files with the master branch 2011-03-26 02:03:52 +01:00
Robert Reif 6e6c86365f add some missing ; at end of class and struct definitions in checkclass tests 2011-03-25 07:58:51 -04:00
Daniel Marjamäki 5058cc6aa1 Reverted non-CMake changes in previous 'Added CMake files' commit 2011-03-25 07:59:48 +01:00
Markus Elfring 9301ee28a8 Added CMake files 2011-03-25 07:14:53 +01:00
Robert Reif 710eb8ffd9 add support for global namespace to Tokenizer::simplifyVarDecl() 2011-03-24 23:06:20 -04:00
Robert Reif fc258164cd fix #2675 (false positive: syntax error) 2011-03-24 22:26:42 -04:00
Daniel Marjamäki 74105f5d83 Fixed #2673 (false positive: memory leak (address stored in list)) 2011-03-24 17:14:12 +01:00
Robert Reif 61e720c82b fix #1288 (Use of memset on struct - nested structs not handled) 2011-03-23 21:58:58 -04:00
Robert Reif cbc81e20f5 fix Tokenizer::simplifyVarDecl() template assignment 2011-03-23 21:15:49 -04:00
Robert Reif 7e3e5d628d better fix for #2672 (False positive: function can be const, nested classes declared in one line) 2011-03-23 20:19:32 -04:00
Daniel Marjamäki 5f36ede4f5 Fixed #2662 (Segfault: overloaded function call function with same name) 2011-03-23 18:45:47 +01:00
Robert Reif 3259239dfe fix #2672 (False positive: function can be const, nested classes declared in one line) 2011-03-23 07:48:18 -04:00
Robert Reif ac7f1f874e add some more CheckClass::noMemset tests 2011-03-22 22:45:19 -04:00
Robert Reif d36ed9aff1 fix #2670 (False positive: function can be const, overloaded functions) 2011-03-22 19:23:36 -04:00
Ettl Martin 8308fb72e3 fixed performance issues, found by selfcheck with cppcheck. 2011-03-22 23:15:15 +01:00
Ettl Martin ff1de4c896 extended checkmemoryleak-whitelist 2011-03-22 22:13:29 +01:00
Robert Reif c043e6e1a2 fix 2011-03-21 20:57:17 -04:00
Robert Reif dc0dfea079 fix invalid bitfield match and simplification that created invalid code 2011-03-21 20:17:14 -04:00
Robert Reif 3c5134bb21 run astyle 2011-03-21 19:59:53 -04:00
Ettl Martin 7e31c91a79 extended checkmemoryleak white list 2011-03-21 23:59:43 +01:00
Ettl Martin 38cf9f26df #2667 added open(), _open() and _wopen() function to checkmemoryleak whitelist, incl. unittests; 2011-03-21 23:20:46 +01:00
Ettl Martin 78bcb07e19 #2667 added perror to checkmemoryleak white list; added unit-tests. 2011-03-21 17:43:26 +01:00
Ettl Martin f242cb639e #2668 fixed memory leak ( freopen() ) 2011-03-21 15:12:21 +01:00
Ettl Martin a975301ce4 #2659 added chown,chmod and chdir functions to checkmemoryleak white list; added unittests for each case; 2011-03-21 00:07:37 +01:00
Ettl Martin 01249d4f48 #2659 added access()-function to checkmemoryleak white-list and provided untittests. 2011-03-20 23:39:44 +01:00
Ettl Martin 3407561df6 #2667 removed wrong unittests; 2011-03-20 23:02:18 +01:00
Ettl Martin c9a5051ea0 #2667 created unit-tests 2011-03-20 22:31:29 +01:00
Ettl Martin 7afc0978c2 #2659 added stat function to white list and provide unit tests. 2011-03-20 22:17:51 +01:00
Ettl Martin ab6888dbfe fixed ticket 2659: added lstat function to white list; provided unit-tests. 2011-03-20 21:52:25 +01:00
Robert Reif 2277cb6965 fix #2663 (False negative: function can be const (changing unknown or uninitialised variable)) 2011-03-20 13:29:52 -04:00
Robert Reif 41d80b5c8d fix #2664 (False negative: function can be const (using type from another namespace)) 2011-03-20 12:53:37 -04:00
Daniel Marjamäki 6dd9676d43 FileLister: Updated Visual Studio files 2011-03-20 14:47:15 +01:00
Daniel Marjamäki c60edb5af6 FileLister: updated qmake files 2011-03-20 14:37:28 +01:00
Daniel Marjamäki 8caf96be63 FileLister: Moved back the code into a single cpp file 2011-03-20 14:25:11 +01:00
Daniel Marjamäki 27506b4231 Fixed #2661 (False positive: object destroyed immediately) 2011-03-20 09:55:26 +01:00
Daniel Marjamäki 2613780b85 Fixed #2662 (Segfault: overloaded function call function with same name) 2011-03-20 09:16:52 +01:00
Robert Reif fc13854095 fix #1280 (Pointer to function support) 2011-03-19 16:21:26 -04:00
Robert Reif 92316e5745 fix #1987 (Internal error:: CheckClass::SpaceInfo::getVarList found variable 'element_size' with varid 0.) 2011-03-19 16:00:43 -04:00
Daniel Marjamäki 2dcd0128b0 Fixed #2213 (false negative: resource leak (calling allocating subfunction twice)) 2011-03-19 14:05:22 +01:00
Daniel Marjamäki 31af3a64bc Tokenizer::setVarId: Fixed problem with same variable name in multiple classes 2011-03-19 11:09:51 +01:00
Daniel Marjamäki 61d5229d06 Refactoring: Renamed showAll flag to inconclusive 2011-03-19 10:51:38 +01:00
Daniel Marjamäki 45a3828da7 Tokenizer::setVarId: Better handling of class declarations when variable usage comes before variable declaration 2011-03-19 09:04:03 +01:00
Robert Reif afc7fd82ed #2630 (segmentation fault of cppcheck (template <typedef A>) 2011-03-18 20:44:58 -04:00
Robert Reif 1de35c168d fix #2657 (segmentation fault of cppcheck ( gcc-testsuite: return f(){} )) 2011-03-17 20:10:56 -04:00
Robert Reif 7b63da4964 fix #2651 (Segmentation fault (typedef)) 2011-03-17 20:00:49 -04:00
Daniel Marjamäki dab09aedee Fixed #2648 (Tokenizer::simplifyTemplates: Segmentation fault (gcc-testsuite)) 2011-03-17 21:45:03 +01:00
Robert Reif 7e04ea0859 fix removal of throw() from const functions 2011-03-16 19:54:52 -04:00
Daniel Marjamäki fec9edf628 Tokenizer::simplifyTemplates: First simple fix for problems when using sizeof in template parameter 2011-03-16 22:16:30 +01:00
Robert Reif f7cbc90c84 fix #2581 (### Internal error in Cppcheck. Please report it.) 2011-03-15 23:28:45 -04:00
Robert Reif 47531dd99c fix #2637 (segmentation fault of cppcheck ( {} const const )) 2011-03-15 22:33:14 -04:00
Robert Reif ba0b3e6451 fix #2651 function typedef with extra ()s 2011-03-15 19:24:30 -04:00
Greg Hewgill fa868e44ae Support use of 'this->' when checking operator=() return type 2011-03-15 20:19:30 +13:00
Daniel Marjamäki 07fe361964 Fixed #2638 (Tokenizer::setVarId : varid is wrongly given when unknown macro is used) 2011-03-13 17:52:45 +01:00
Daniel Marjamäki f26bc6a75c Fixed #2621 (Segmentation fault for GCC statement expression) 2011-03-13 10:34:54 +01:00
Daniel Marjamäki ed11a9e3cb Fixed #2639 (False positive: confusion between struct and function) 2011-03-13 08:38:40 +01:00
Robert Reif 27f4b8b88b Convert CheckClass::noMemset to use the symbol database to lookup types. This adds better support for namespaces and nested classes. 2011-03-12 22:41:21 -05:00
Daniel Marjamäki f3728c0b76 Fixed #2647 (False positive: Possible null pointer dereference (member function call)) 2011-03-12 20:57:19 +01:00
Daniel Marjamäki 6bd56dbe20 Fixed #2643 (False positive: iterator increment and insert) 2011-03-12 20:29:54 +01:00
Robert Reif 6a2848e50f fix another false negative introduced by fix for #2641 2011-03-12 12:27:19 -05:00
Robert Reif 384bd96766 fix false negative introduced by fix for #2641 2011-03-12 11:42:58 -05:00
Daniel Marjamäki 0a28b7309f Fixed #2641 (False positive: Possible null pointer dereference (global pointer, function call)) 2011-03-12 15:02:06 +01:00
Daniel Marjamäki 29ab409af5 Merge branch '2390b' of https://github.com/elfring/cppcheck into elfring-2390b 2011-03-12 11:58:24 +01:00
Greg Hewgill 2716b856f4 throwing an exception is a valid immediate exit from switch 2011-03-12 07:27:31 +13:00
Robert Reif 79f0fe7d1c refactor symbol database and checks to use list of Scope rather than list of Scope pointers 2011-03-10 19:43:29 -05:00
Greg Hewgill 256e7dee21 Allow suppressing all warnings (using *) for specified file or files 2011-03-10 22:00:48 +13:00
Greg Hewgill 1ec6a642dc Revert "Check for memset on nested structs (ticket #1288)"
Turns out this fix is incomplete.

This reverts commit a084697410.
2011-03-10 20:19:31 +13:00
Daniel Marjamäki db48158b28 Suspicious condition: Added new check for conditions that contains assignment+comparison 2011-03-09 22:20:14 +01:00
Daniel Marjamäki 5a0ec56fc2 Fixed #2632 (segmentation fault of cppcheck ( void>(); void>() )) 2011-03-09 21:25:44 +01:00
Daniel Marjamäki bea3875386 Fixed #2607 (segmentation fault of cppcheck ( struct C {} {} x)) 2011-03-09 21:00:28 +01:00
Daniel Marjamäki be33f6b945 Fixed #2635 (False positive: resource leak) 2011-03-09 19:53:59 +01:00
Greg Hewgill a084697410 Check for memset on nested structs (ticket #1288) 2011-03-09 23:02:49 +13:00