static analysis of C/C++ code
Go to file
Daniel Marjamäki 15e9f4ae25 Unused private function: Added test 2008-11-08 13:14:16 +00:00
man man: Added xml for generating man page 2008-11-01 17:16:48 +00:00
COPYING Licensing: Using the GPL 3 license 2008-10-26 07:55:15 +00:00
CheckBufferOverrun.cpp Refactoring TOKEN: Changed from struct to class 2008-11-06 18:31:39 +00:00
CheckBufferOverrun.h Licensing: Using the GPL 3 license 2008-10-26 07:55:15 +00:00
CheckClass.cpp CheckClass: Applied patch 2220196 2008-11-06 00:00:38 +00:00
CheckClass.h Licensing: Using the GPL 3 license 2008-10-26 07:55:15 +00:00
CheckHeaders.cpp Licensing: Using the GPL 3 license 2008-10-26 07:55:15 +00:00
CheckHeaders.h Licensing: Using the GPL 3 license 2008-10-26 07:55:15 +00:00
CheckMemoryLeak.cpp Memory leak: remove the dealloc in "if dealloc ;" if it's not followed 2008-11-08 07:19:19 +00:00
CheckMemoryLeak.h cleanup the files 2008-11-07 16:25:29 +00:00
CheckOther.cpp CheckAlpha: Expanded checking to include 'isupper' and 'islower' 2008-11-06 00:04:52 +00:00
CheckOther.h Licensing: Using the GPL 3 license 2008-10-26 07:55:15 +00:00
CommonCheck.cpp Refactoring TOKEN: Changed from struct to class 2008-11-06 18:31:39 +00:00
CommonCheck.h Refactoring TOKEN: Changed from struct to class 2008-11-06 18:31:39 +00:00
FileLister.cpp FileLister.* and testtokenize.cpp, changed encoding to utf-8 2008-11-06 19:40:49 +00:00
FileLister.h FileLister.* and testtokenize.cpp, changed encoding to utf-8 2008-11-06 19:40:49 +00:00
Makefile Unused private function: Added test 2008-11-08 13:14:16 +00:00
cppcheck.cbproj Updated the Borland C++ project files 2008-11-03 18:57:53 +00:00
cppcheck.sln Added Visual C++ 2008 Express solution and project files 2008-11-03 18:57:18 +00:00
cppcheck.vcproj Added Visual C++ 2008 Express solution and project files 2008-11-03 18:57:18 +00:00
main.cpp File Listing: New handling of listing files. (Bug 2194949) 2008-11-03 18:52:39 +00:00
preprocessor.cpp preprocessor: fixed invalid character 2008-11-03 19:36:43 +00:00
preprocessor.h Preprocessor: Added elif handling. Check for invalid characters 2008-10-31 18:52:47 +00:00
readme.txt updated command syntax example 2008-02-22 14:58:53 +00:00
testbufferoverrun.cpp cleanup of UTF-8. Updated the Makefile 2008-11-06 00:11:37 +00:00
testcharvar.cpp Testing: DeallocateTokens after each test 2008-11-03 07:54:59 +00:00
testconstructors.cpp Testing: DeallocateTokens after each test 2008-11-03 07:54:59 +00:00
testdivision.cpp Testing: DeallocateTokens after each test 2008-11-03 07:54:59 +00:00
testincompletestatement.cpp cleanup of UTF-8. Updated the Makefile 2008-11-06 00:11:37 +00:00
testmemleak.cpp Memory leak: remove the dealloc in "if dealloc ;" if it's not followed 2008-11-08 07:19:19 +00:00
testpreprocessor.cpp testpreprocessor: updated the testing for multiline preprocessor statements 2008-11-03 19:39:09 +00:00
testrunner.cbproj Memory Leaks: Convert "do-while" blocks to "while" blocks to make the handling for that the same. 2008-11-07 16:19:55 +00:00
testrunner.cpp Testing: Only run tests in a specified class 2008-10-26 11:11:26 +00:00
testsuite.cpp Testing: Only run tests in a specified class 2008-10-26 11:11:26 +00:00
testsuite.h Testing: Only run tests in a specified class 2008-10-26 11:11:26 +00:00
testtokenize.cpp FileLister.* and testtokenize.cpp, changed encoding to utf-8 2008-11-06 19:40:49 +00:00
testunusedprivfunc.cpp Unused private function: Added test 2008-11-08 13:14:16 +00:00
testunusedvar.cpp Testing: DeallocateTokens after each test 2008-11-03 07:54:59 +00:00
todo.txt todo: A few short updated notes 2008-11-05 23:51:06 +00:00
tokenize.cpp Refactoring TOKEN: Changed from struct to class 2008-11-06 18:31:39 +00:00
tokenize.h - Fixed compiling on Debian with gcc ( missing includes and std:: ) 2008-11-07 20:25:07 +00:00

readme.txt


=========
C++ check
=========



Compiling

  Any C++ compiler should work. 
  There are no dependencies.

  The Makefile works under Linux.
  To make it work under Windows, change "g++" to "gxx".

  I haven't been able to test it on other platforms.



Usage

  The syntax is:
      cppcheck [--all] [--style] [--recursive] [filename1] [filename2]

  The error messages will be printed to stderr.

  Example (Check all files. Use all checks):
      cppcheck -style --all --recursive


Recommendations

  Create a shell script that checks all files.
  See "checkproj.bat" for an example of how it can be done under Windows.

  When the "--all" flag is given you may get a lot of error messages.

  To dump the messages to a textfile you can use a command like this:
      cppcheck --all filename.cpp 2> messages.txt

  If you want to filter the messages you could use:
    * grep to filter out specific types of messages
    * diff to compare old messages with new messages. There are even GUIs for
      this.



Suggestions

  I'd like to get suggestions about new checks.



Author

  Daniel Marjamäki   (danielm77@spray.se)