Commit Graph

490 Commits

Author SHA1 Message Date
Daniel Marjamäki 8533e112fe updated version to 1.31 2009-04-12 19:54:15 +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 e72a38aaa8 mathlib: Added licence text 2009-04-09 16:17:59 +02:00
Daniel Marjamäki 6fb18b3ddc simplify calculations: Don't simplify division with 0 2009-04-06 19:43:54 +02:00
Daniel Marjamäki 638d18cfc8 tokenize: use mathlib when simplifying calculations (ticket: 236) 2009-04-06 19:23:30 +02:00
Daniel Marjamäki 97f5380a2c added testing for mathlib 2009-04-06 19:08:13 +02:00
Daniel Marjamäki f0d870c52d Added math library that was created by hoangtuansu 2009-04-06 18:27:14 +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
Reijo Tomperi 051f2929b5 Fix ticket #244 (Headers from included file are searched from wrong path)
http://apps.sourceforge.net/trac/cppcheck/ticket/244
2009-04-05 21:14:02 +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 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
Reijo Tomperi 3b0643a000 Fix some potential null pointer crashes 2009-04-03 14:55:36 +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
Reijo Tomperi bd66f12e60 astyle fix 2009-03-28 23:11:03 +02: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 447c830e8f performance enhancement (patch submitted by davidmiller in ticket 231) 2009-03-28 20:33:55 +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 063f59c86c moved checks back to style (where they used to be) 2009-03-27 15:55:14 +01:00
Daniel Marjamäki 4eeac1f364 tokenizer: fix segmentation fault if end of token list is reached 2009-03-27 15:12: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 8db1ac8c5d astyle formatting 2009-03-25 07:25:33 +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
Gianluca Scacco a66cf8b20f Fixed Ticket #202: Return of the address of an auto-variable 2009-03-24 21:53:46 +01:00
Daniel Marjamäki afcaa30b51 Fixed ticket 216 (False positive: variable scope) 2009-03-24 20:59:56 +01:00
Daniel Marjamäki 6c1af7e5e6 register CheckClass 2009-03-24 20:47:43 +01:00
Daniel Marjamäki 586037ed11 fixed testcase 2009-03-24 20:28:44 +01:00
Daniel Marjamäki da0b571aee Fixed ticket 197 (false positive: condition is always true/false) 2009-03-24 19:49:01 +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 a87419f59b Fixed Ticket 199 (The error messages generated by 'unused functions' are wrong) 2009-03-22 18:57:53 +01:00
Daniel Marjamäki 09457194d9 astyle code formatting 2009-03-22 08:23:20 +01:00
Daniel Marjamäki 276c0a7b2f Merge branch 'master' of git@github.com:danmar/cppcheck 2009-03-22 08:20:41 +01:00
Daniel Marjamäki e017d5a079 refactoring - added 'getErrorMessages' to all check classes 2009-03-22 08:20:15 +01:00
Gianluca Scacco abda874944 Refactoring of CheckAutoVariables 2009-03-22 08:01:48 +01:00
Daniel Marjamäki 0a71771c6a improved the Tokenizer::setVarId to handle function parameters better 2009-03-21 21:58:39 +01:00
Daniel Marjamäki 6fc66d3e2c refactoring error messages 2009-03-21 21:33:27 +01:00
Daniel Marjamäki 729b2c1706 Fixed 188 (Return of auto variable address), applied patched submitted by gscacco 2009-03-21 18:36:41 +01:00
Daniel Marjamäki da06c12925 refactoring error messages 2009-03-21 18:31:28 +01:00
Daniel Marjamäki 468ed653e2 refactoring error messages 2009-03-21 17:58:13 +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 001cb0a7ec refactoring - added a function getErrorMessages that will be used to get a list of error messages 2009-03-21 14:07:51 +01:00
Daniel Marjamäki bcad5afb26 refactoring - fixed the unit tests 2009-03-21 14:02:58 +01:00
Daniel Marjamäki 170f817a19 refactoring: there are now 2 functions for running checks. 'runChecks' and 'runSimplifiedChecks' 2009-03-21 07:53:23 +01:00
Daniel Marjamäki 0ed425d105 refactoring 2009-03-20 20:21:54 +01:00
Daniel Marjamäki 272d455e2d refactoring: generate error message in the class 2009-03-20 20:09:44 +01:00
Daniel Marjamäki 8e4af409e7 refactoring: Added a function to the Check base class that allows easier error reporting 2009-03-20 19:52:18 +01:00
Daniel Marjamäki ccfdbfca58 improved Token::tokAt to handle negative argument too 2009-03-20 18:50:11 +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 e6e778e45f refactoring 2009-03-20 17:15:51 +01:00
Daniel Marjamäki 5565be0c74 refactoring: minor cleanup 2009-03-19 21:20:08 +01:00
Daniel Marjamäki d4fdfc0f5a astyle formatting 2009-03-19 20:53:23 +01:00
Daniel Marjamäki dfe867fded added checkautovariables and integrated it into cppcheck 2009-03-19 20:52:18 +01:00
Daniel Marjamäki 16b6a7a605 refactoring: loop through all Check instances and execute the runChecks function 2009-03-19 19:24:13 +01:00
Daniel Marjamäki 47d7ff983f refactoring: removed the changes to the error handling 2009-03-19 18:39:20 +01:00
Daniel Marjamäki a573c62cd5 refactoring: first step - started with checkstl 2009-03-18 22:40:38 +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 819953006c Astyle fix 2009-03-17 22:00:27 +02:00
Daniel Marjamäki 9c057c707b tokenize negative numbers into a single token 2009-03-17 20:50:06 +01:00
Reijo Tomperi 2a3535c04f Fix ticket #186 (runtime error when checking code that has a namespace)
http://apps.sourceforge.net/trac/cppcheck/ticket/186
2009-03-17 20:16:15 +02:00
Daniel Marjamäki 9fe8ae452a Refactoring the code for the templates handling 2009-03-17 18:55:28 +01:00
Reijo Tomperi b3dd9e699b --debug flag can be used to printout token list (for development purposes) 2009-03-16 23:31:52 +02: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 0cc7672673 Fixed Ticket #82 (detect buffer overrun; dynamic memory) 2009-03-16 18:11:09 +01: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 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
Reijo Tomperi c385b3e045 Improve creation of link() for Token class. Tokenizer::simplifyTokenList() should now return
code where Token::link() actually works.
2009-03-15 01:39:45 +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 01c39daa13 Merge branch 'ref' 2009-03-13 22:39:47 +01:00
Daniel Marjamäki daa911daeb refactoring: moved 'FindClassFunction' from CheckClass to Tokenizer 2009-03-13 22:28:44 +01:00
Reijo Tomperi 116e940214 Fixed ticket #169 (Add Token::link())
http://apps.sourceforge.net/trac/cppcheck/ticket/169
2009-03-13 23:25:56 +02: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
Daniel Marjamäki eac29d151c made the Tokenizer::simplifyCasts more generic 2009-03-10 21:26:08 +01:00
Daniel Marjamäki c7c13ce3c1 Fixed ticket 134 (memory leak not detected) caused by wrong checking if code is inside class function or not 2009-03-10 20:44:24 +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 f39e117921 removed unused private function CheckSecurity::eraseCheckLoop 2009-03-09 20:09:06 +01:00
Daniel Marjamäki f8cd34198b simplify casts 2009-03-09 19:47:21 +01:00
Vesa Pikki ccfa7ce6ee Merge branch 'WinQt' of git@github.com:danmar/cppcheck into WinQt 2009-03-09 20:00:06 +02:00