MantisBT - CDash
View Issue Details
0010208CDashpublic2010-01-30 11:082011-08-10 14:33
Sean McBride 
 
normalminorhave not tried
newopen 
 
 
0010208: Add support for Clang Static Analyzer (similar to 1st class valgrind support)
CTest/CDash currently have great integrated support for valgrind. It can be invoked to run tests, and the HTML dashboard page shows those results in a special section.

I'd like to see something similar for the Clang Static Analyzer.

If you're not familiar with it, see:
http://clang-analyzer.llvm.org/ [^]

Here is their summary:
"The term "static analysis" is conflated, but here we use it to mean a collection of algorithms and techniques used to analyze source code in order to automatically find bugs. The idea is similar in spirit to compiler warnings (which can be useful for finding coding errors) but to take that idea a step further and find bugs that are traditionally found using run-time debugging techniques such as testing.

Static analysis bug-finding tools have evolved over the last several decades from basic syntactic checkers to those that find deep bugs by reasoning about the semantics of code. The goal of the Clang Static Analyzer is to provide a industrial-quality static analysis framework for analyzing C and Objective-C programs that is freely available, extensible, and has a high quality of implementation."

The project is cross platform and open source. One downside is that it does not yet support C++.

I used it to find 4 bugs in freetype, a component of VTK.

I imagine two possible UIs
 - a special section for analyzer warnings, like for valgrind
 - an additional column to the right of compiler warnings, showing the number of warnings flagged by the analyzer
No tags attached.
Issue History
2010-01-30 11:08Sean McBrideNew Issue
2010-03-11 09:51Stefan SablatnoegNote Added: 0019841
2011-08-10 14:33Sean McBrideNote Added: 0027187

Notes
(0019841)
Stefan Sablatnoeg   
2010-03-11 09:51   
It would be great if this feature would include support for different static analyzers (pc-lint, splint, ...)
(0027187)
Sean McBride   
2011-08-10 14:33   
The clang static analyzer now supports C++, in addition to C and Objective-C, making it more widely useful.