[Gluster-devel] Proposal: Using LLVM clang-analyzer in gluster development

Atin Mukherjee atin.mukherjee83 at gmail.com
Tue May 26 17:30:25 UTC 2015


On 26 May 2015 17:30, "Prasanna Kalever" <pkalever at redhat.com> wrote:
>
> Hi gluster team,
>
> Proposal:
>
> Using Clang static analyzer tool for gluster project
>
>
> About Clang:
>
> From a very high level view, Clang has two features
>
> 1. Clang as a compiler
> 2. Clang as a code analyzer
>
> The Idea hear is to use second point i.e Clang as code analyzer and still
gcc
> will be our default compiler.
>
> The Clang Static Analyzer is a source code analysis tool that finds bugs
in C,
> C++, and Objective-C programs. Given the exact same code base,
clang-analyzer
> reported ~70 potential issues. clang is an awesome and free tool.
>
> The reports from clang-analyzer are in HTML and there's a single file for
each
> issue and it generates a nice looking source code with embedded comments
about
> which flow that was followed all the way down to the problem.
>
>
> Why Clang-Analyzer: (Advantages)
>
>  1. Since its is an open source tool:
>
>   * Available to all the developers
>   * Easy Access, we can run the tool while we compile the code (say $
scan-build make)
>   * No restrictions on Number of Runs per week/day/hour/min ..
>   * Defects are Identified before submitting a patch, thus very less
chance of
>     defect injection into project
>
>  2. The Html view of clang is very impressive with all the source code
including
>     comments of clang-analyzer, which lead to defect line number directly
.
>
>
>
> I have attached a sample clang results for geo-replication module run on
latest
> 3.7+ glusterfs code, please find them above.
>
>
> Thanks for your time.
On a relative note, I feel we should try to integrate any of these static
analyzer as part of our checkpatch.pl and compare the pre and post report
and proceed if the change doesn't introduce any new defects. Thoughts?
>
>
> Best Regards,
> Prasanna Kumar K.
>
>
> _______________________________________________
> Gluster-devel mailing list
> Gluster-devel at gluster.org
> http://www.gluster.org/mailman/listinfo/gluster-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gluster.org/pipermail/gluster-devel/attachments/20150526/840a2a7a/attachment.html>


More information about the Gluster-devel mailing list