I can't help with free tools, but I've used and evaluated several
static analysis tools over the years.

Codewizard seems more a coding standards checker than a lint tool.  It
has features to check that names follow various rules for
capitalization, etc. but seemed to have little in checking the code
itself, at least reviewing the list of messages generated.

FlexeLint / PC-Lint is an excellent product with generally excellent
support, well worth the money.  The flow analysis generates a lot of
extraneous messages, though they are divided into 3 levels of
severity.  It's very good at finding problems with operator precedence
or macro oddities.  I last used FlexeLint on a 1 million+ line of code
product, finding a number of bugs (this is a very extensively tested
product).  My experience is with C code, but what I've seen of the C++
portion looks good.

For completeness, I'm also aware of a service called InstantQA
(www.reasoning.com), it may be C only.  Obviously not in your price
range.  I've seen reports from real code they checked.  What I saw was
very impressive, finding some fairly obscure pointer problems.  As a
service I don't know how they do it, they could have some very
sophisticated analysis tools or they may run the code through a
typical lint tool and manually identify the real problems.

Thomas Wicklund


Ryan Mapes writes:
 > Hiya,
 > 
 > Does anyone know of a good 'lint' for use with C++ code?
 > (OS: Windows 2000)
 > 
 > Does SPLint already support C++ code analysis? If so, please let me know
 > since I'm not seeing how to set it up. Although, on a per-file basis I have
 > been mildly successful with 'C' related stuff but class inheritance and
 > overloaded functions cause all sorts of warnings (beyond the "normal"
 > warnings:).
 > 
 > Meanwhile, I'm aware of a couple of commercial packages:
 > - Parasoft's' CodeWizard (~$1000)
 > - Gimpel Software's FlexeLint and PC-Lint for C/C++ (~$250)

Reply via email to