mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-26 23:24:34 +00:00
Add static analyzer notes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57475 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -109,11 +109,29 @@ front-end work has started to make significant progress.</p>
|
|||||||
|
|
||||||
<div class="doc_text">
|
<div class="doc_text">
|
||||||
|
|
||||||
<p>The
|
<p>The Clang project also includes an early stage static source code analysis
|
||||||
<a href="http://clang.llvm.org/StaticAnalysis.html">static analysis tool</a>
|
tool for <a href="http://clang.llvm.org/StaticAnalysis.html">automatically
|
||||||
|
finding bugs</a> in C and Objective-C programs. The tool performs a growing set
|
||||||
|
of checks to find bugs that occur on a specific path within a program. Examples
|
||||||
|
of bugs the tool finds include logic errors such as null dereferences,
|
||||||
|
violations of various API rules, dead code, and potential memory leaks in
|
||||||
|
Objective-C programs. Since its public announcement at Apple's WWDC 2008
|
||||||
|
conference, the public feedback on the tool has been extremely positive, and
|
||||||
|
conservative estimates put the number of real bugs it has found in
|
||||||
|
industrial-quality software on the order of thousands.</p>
|
||||||
|
|
||||||
[TED]
|
<p>The tool also provides a simple web GUI to inspect potential bugs found by
|
||||||
.</p>
|
the tool. While still early in development, the GUI illustrates some of the key
|
||||||
|
features of Clang: accurate source location information, which is used by the
|
||||||
|
GUI to highlight specific code expressions that relate to a bug (including those
|
||||||
|
that span multiple lines) and built-in knowledge of macros, which is used to
|
||||||
|
perform inline expansion of macros within the GUI itself.</p>
|
||||||
|
|
||||||
|
<p>The set of checks perform by the static analyzer is gradually expanding, and
|
||||||
|
future plans for the tool include full source-level inter-procedural analysis
|
||||||
|
and deeper checks such as buffer overrun detection. There are many opportunities
|
||||||
|
to extend and enhance the static analyzer, and anyone interested in working on
|
||||||
|
this project is encouraged to get involved!</p>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user