Commit Graph

331 Commits

Author SHA1 Message Date
Reijo Tomperi 5721e4469b stlOutOfBounds error message created 2009-02-10 19:36:49 +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 574db37a6f uninitialized variables: added testcases and made a fix 2009-02-09 07:47:41 +00:00
Reijo Tomperi fb3c81dcd9 Fix ticket #80 (refactoring: classes ErrorMessage and ErrorLogger), note that errormessage and errorlogger were merged, errormessage.* is no more. 2009-02-08 21:20:35 +00:00
Daniel Marjamäki 1637e867de mismatching allocation size: moved to error suite 2009-02-08 18:34:04 +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
Reijo Tomperi 811d76eb31 Fixed compiler warning ( #81 ) and optimized the speed a little. Removed _cstr from Token class, use _str.c_str() instead. 2009-02-07 21:05:45 +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 e71c6aaa9f Borland C++: Fix to make it compile 2009-02-07 18:35:55 +00:00
Reijo Tomperi f14c2d6155 Fixed partially ticket #81 (getting rid of compiler warnings) 2009-02-07 15:37:01 +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 eb5d11c1c3 FileLister: Added code that I received from Jeffrey Walton to handle directories and files better 2009-02-07 07:38:22 +00:00
Daniel Marjamäki 03acc12977 mismathing allocation and deallocation: moved to error checks 2009-02-06 18:24:01 +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
Daniel Marjamäki 10abbda6a7 memleak: corrected the wrong line number (#77) 2009-02-05 20:17:01 +00:00
Daniel Marjamäki 05e330ed38 incomplete statement: minor update 2009-02-05 18:57:53 +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 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 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 460c29f6a2 memory leaks: Minor fix to output correct severity 2009-02-02 06:04:48 +00:00
Daniel Marjamäki 385c28a02e xml: generating better xml output 2009-02-01 18:00:47 +00:00
Daniel Marjamäki d29d7e60a9 errmsg: refactoring the error messages 2009-02-01 15:47:36 +00:00
Daniel Marjamäki 566e1102bc changed version to 1.28 2009-02-01 08:17:45 +00:00
Reijo Tomperi 6b16b7482a Removed some dead code and improved one function to use reference instead of a copy. 2009-01-31 21:12:24 +00:00
Reijo Tomperi b471ac2e3c Fixing files using dos-style line change to use unix-style line change. 2009-01-31 19:29:27 +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 3457b38d7a errmsg: write severity in the message 2009-01-31 08:33:31 +00:00
Daniel Marjamäki b7b055e885 tokenizer: fixed TestTokenizer::sizeof1 2009-01-28 17:38:32 +00:00
Daniel Marjamäki dd9cd9ce82 unused functions: Created command line parameter --unused-functions 2009-01-28 17:26:19 +00:00
Daniel Marjamäki 0ca38cc9fe xml results: added a command line switch for generating simple results.xml file 2009-01-28 17:12:43 +00:00
Leandro Penz b30e78e14c MatchFunctionsThatReturnArg: calling Match only once. 2009-01-28 00:23:56 +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 762ae69304 function parameters: fixed segmentation fault (derefence null) 2009-01-27 07:39:11 +00:00
Daniel Marjamäki d6ef44c73e sprintf overlapping data 2009-01-27 07:21:52 +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 6ce23670e5 sprintf overlapping data: added extra text that is shown if --verbose is given 2009-01-26 19:14:46 +00:00
Daniel Marjamäki 3d61334a8c errmsg: Moved 'function parameter parname is passed by value' to the style checks 2009-01-26 18:32:00 +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 9c51729be6 preprocessor: stringify macros 2009-01-25 13:30:15 +00:00
Reijo Tomperi ed2758b082 Updated comments in code 2009-01-25 11:11:18 +00:00
Reijo Tomperi 17eee5e4d7 Fix ticket #58 (If given path is empty it is assumed that it wasn't given) 2009-01-25 11:05:51 +00:00
Reijo Tomperi 22593adeac Fix ticket #57 (wrong path in error message) 2009-01-24 20:34:16 +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
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
Kimmo Varis a0886e693e Fix two overly long lines in command line help. 2009-01-24 18:24:04 +00:00
Daniel Marjamäki 0b95fdafb7 tokenizer: Added guard in case the preprocessor is mismatching 2009-01-24 17:15:38 +00:00
Daniel Marjamäki fa070ac73c cppcheck: printing preprocessed file to 'temp.txt' 2009-01-24 13:53:53 +00:00
Reijo Tomperi d89f804d91 Fixed ticket #54 (Make cppcheck print status e.g. 4/20 files checked) 2009-01-24 08:06:40 +00:00
Daniel Marjamäki 9d29de02d3 removed windows encodings 2009-01-23 21:34:03 +00:00
Daniel Marjamäki 42e56153a4 borland and visual c++ fixes 2009-01-23 21:28:45 +00:00
Daniel Marjamäki d9b9368238 reverted [1084] it can be fixed better 2009-01-23 21:14:41 +00:00
Daniel Marjamäki f33675288e borland: the strtol is found in <stdlib.h> 2009-01-23 21:08:51 +00:00
Daniel Marjamäki 6f40ed9796 include: Had to include <cstring> in a few places to be able to compile cppcheck 2009-01-23 20:55:06 +00:00
Reijo Tomperi c9133fb85d Add additional checking to avoid ethernal loops when someone is using incorrect different case for the same file.
It should be unlikely that anyone would actually use different files in the same project and separate them only by 
casing of some letters.
2009-01-23 20:36:43 +00:00
Reijo Tomperi 8d6f41397a Fixing ticket #35 (Get rid of #ifdefs in our code where possible) 2009-01-23 20:25:13 +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 9c94e66382 better fix to get rid of compiler warning is to comment the function parameter 2009-01-23 18:37:28 +00:00
Reijo Tomperi 6a523f2730 Fixed Ticket #52, Cppcheck hangs when checking VLC's source code 2009-01-23 18:27:04 +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 9af881d548 removed bam coding 2009-01-23 16:51:45 +00:00
Daniel Marjamäki 89f4a84c37 preprocessor: The stdlib.h is needed for the exit function 2009-01-23 11:34:19 +00:00
Daniel Marjamäki de2675b46f cppcheck: The '&&' should be '||' when checking if a check should be called 2009-01-22 21:20:40 +00:00
Reijo Tomperi 5de5eab9fe Fix Ticket #46, invalid commandline. (Also added -h and --help parameters) 2009-01-22 20:26:04 +00:00
Daniel Marjamäki 67e4ea10c9 preprocessor: handle redefinition of macro 2009-01-22 20:19:07 +00:00
Reijo Tomperi e897637c7a Fix Ticket #30, Need a way to specify include file folders (-I parameter was added) 2009-01-22 19:59:50 +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 f9191539a8 Code cleanup. 2009-01-21 22:07:22 +00:00
Reijo Tomperi 1ef2c5caf5 Fixed style 2009-01-21 21:58:06 +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
Daniel Marjamäki 5fa9fce8d4 uninitialized variables: run always 2009-01-21 19:11:27 +00:00
Nicolas Le Cam afb3bf1011 Fix CheckOther::functionVariableUsage, passing a variable to a function also means reading it. 2009-01-21 19:05:57 +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 820df7fdbd code style 2009-01-21 07:23:15 +00:00
Nicolas Le Cam 001a4b588e Fix Tokenizer::setVarId for pointers and two types variable declaration 2009-01-20 23:31:54 +00:00
Nicolas Le Cam acdc381ff3 CheckOther::functionVariableUsage: minor optimization. 2009-01-20 22:40:10 +00:00
Nicolas Le Cam 5eb89414c8 Token::Match: Allow pattern like '*|' 2009-01-20 22:39:03 +00:00
Reijo Tomperi 6d8387914b Fixes test case "file2", fixes bug with include file handling 2009-01-20 22:25:49 +00:00
Nicolas Le Cam 5d8f506d6b Tokenizer: Remove 'unlikely' keyword in simplifyTokenList;
Don't check for it in CheckMemoryLeak.
2009-01-20 21:21:12 +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 ea3094166c code cleanup 2009-01-20 06:20:55 +00:00
Reijo Tomperi df5adc5f4f Added test case preprocessor_doublesharp, executed ./runastyle for errormessage.h 2009-01-19 21:45:59 +00:00
Nicolas Le Cam 2b2152919f Update errormessage.h and code using it. 2009-01-19 19:50: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 adc116d0ef Changed output of the program to print out the file name before
preprocessor.
2009-01-19 19:00:36 +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 e90857ce0d tokenizer: activated the handling of #file and #endfile 2009-01-19 17:49:44 +00:00
Daniel Marjamäki af87fececa preprocessor: Activated the include handling 2009-01-19 17:47:43 +00:00
Kimmo Varis 0b2bd09b24 Visual Studio: Fix building resource file with Visual Studio Express. 2009-01-19 06:40:59 +00:00
Nicolas Le Cam 45478a7178 FileLister: Fix bug that prevent a file passed by with paths to be checked; Add the possibility to use \ as a directory separator on Windows closing issue #22 2009-01-18 23:51:31 +00:00
Reijo Tomperi 3cb51d6946 Fixing crash, not sure about side effects. Ticket #37 2009-01-18 23:03:28 +00:00
Reijo Tomperi 50d9a085da Added temporary bailout code, cppcheck crashes when string checking leaks out. This needs a better fix, this is just to
see the problem more easily.
2009-01-18 22:46:48 +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
Reijo Tomperi 45c1b3c3ca More work for includes, still commented out. Uncomment from tokenize.cpp and
preprocessor.cpp to take into use.
2009-01-18 18:59:58 +00:00
Reijo Tomperi 3f98024215 More work for includes, still commented out. Tokenizer needs #file handling 2009-01-18 18:01:56 +00:00
Daniel Marjamäki 0177f77505 code style fix 2009-01-18 17:47:40 +00:00
Daniel Marjamäki f409861492 strPlusChar: Fixed false positives 2009-01-18 17:42:41 +00:00
Reijo Tomperi b1250e1750 Some work for the include support (commented out for now) 2009-01-18 17:13:05 +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 8785483878 preprocessor: Reactivated the expandMacros. This time it's done after the #if #else #endif has been
processed
2009-01-18 16:42:15 +00:00
Daniel Marjamäki ea686a1da9 preprocessor: fixed so the TestPreprocessor::preprocessor_undef succeeds 2009-01-18 16:37:40 +00:00
Daniel Marjamäki 73630c4640 style updated 2009-01-18 12:19:48 +00:00
Daniel Marjamäki 6cb6e163cd preprocessor: Refactoring. Broke out some functionality of expandMacros into a class Macro 2009-01-18 12:17:26 +00:00
Daniel Marjamäki 4ee4645858 Preprocessor: Reverted [1008] - The old expandMacros was readded 2009-01-18 10:54:07 +00:00
Kimmo Varis 9bf6383c4e Fix VS build broken due to tripled version resource info. 2009-01-18 09:38:42 +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
Daniel Marjamäki 0a027a55ef preprocessor: Don't use the "expandMacros" from cppcheck 2009-01-18 07:22:17 +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
Kimmo Varis bfc82f29eb Does not understand . as current folder (Trac #4) 2009-01-17 19:34:11 +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
Reijo Tomperi 9298caa809 Patch [ 2508549 ] Add Windows version resource 2009-01-17 12:08:20 +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
Reijo Tomperi afe19dd0a2 Added .c++ to help texts also. 2009-01-16 22:42:08 +00:00
Daniel Marjamäki c279f83664 preprocessor: bail out code in expandMacros 2009-01-16 21:30:06 +00:00
Reijo Tomperi 449dcc2a60 Add support for .c++ files ( Debian Bug#512060: cppcheck: refuses to
check .c++ files )
2009-01-16 20:46:41 +00:00
Daniel Marjamäki a39eaec1cc preprocessor: Fixed a null pointer dereference 2009-01-16 19:50:39 +00:00