This wiki is about Cppcheck development
The debug messages are not official and you can't expect that any plugins will handle them. The debug messages are not described nor listed anywhere. The debugging interface is not guaranteed to be compatible in the future so your shell scripts etc might break at any time if you use it.
The --debug-warnings flag enable warnings about unhandled code, bailouts, etc.
To see extensive debug output use --debug. This is most useful on small code samples because it is verbose. The code that is shown should be as simplified as possible. Any calculations that are known at compile time should be reduced. So if you see something in the code that can be simplified report it.
Creating new tickets
- false positive
- hang / crash
- fail to compile
- new checks
- an existing check fails to detect bug (use the component "improve check")
- suggestions about different output
Priority: Use 'Normal' by default. Use 'High' when:
- Defects: crash when scanning compilable code.
- Enhancements: Detecting more errors (not warning/style/etc).
documentation is available
- online editable in another wiki - with a few sections translated into German
- Generated from the DocBook? sources in two flavors
Latest version is available on github. You can use svn/git:
git clone git://github.com/danmar/cppcheck.git
svn checkout https://github.com/danmar/cppcheck/trunk
Simple issues to fix
If you want to help us you can start by looking at the tickets that we consider to be simple. http://sourceforge.net/apps/trac/cppcheck/query?status=new&col=id&col=summary&keywords=~simple
How to submit a patch
Create a ticket that describes the problem. Then add your patch as a file attachment.
Version 1.60 is planned to be released on June 1st.
Cppcheck is basically a pattern matcher. The input code will be matched against various patterns that are known to be bugs.
Analyzing a file is made in 3 steps:
- Run all checks - pattern matching of the tokens
- More information is available through this webpage: http://cppcheck.sourceforge.net/devinfo/
- List of current ErrorMessages and suggestions how they could be improved.
- Design decisions
- Coding style
When you have a question concerning development, read (or expand) our QuestionsAndAnswers article.