<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Sep 9, 2010, at 2:57 AM, Julian Kania wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">Hi.<br><br>I have very good results in code quality review with clang.<br>What I would like to have is a list of checks that scan-build can report.<br>It looks like the need of such a list already appeared here: <a href="http://clang-analyzer.llvm.org/available_checks.html">http://clang-analyzer.llvm.org/available_checks.html</a><br>
yet is not yet done.<br><br>Is the checks list documented somewhere?<br>Or can I extract it from the source code?<br><br>thanks! Julian Kania<br clear="all"><br></blockquote><br></div><div>Hi Julian,</div><div><br></div><div>As you point out, that list has not been updated (or created) yet. I'm very sorry about that, and I hope to get around to creating that page soon. Most of the available checks can be gleamed from looking at lib/Checker:</div><div><br></div><div><div><div>$ ls | grep 'Checker.cpp'</div><div>AdjustedReturnValueChecker.cpp</div><div>AnalyzerStatsChecker.cpp</div><div>ArrayBoundChecker.cpp</div><div>AttrNonNullChecker.cpp</div><div>BuiltinFunctionChecker.cpp</div><div>CStringChecker.cpp</div><div>CallAndMessageChecker.cpp</div><div>CastSizeChecker.cpp</div><div>CastToStructChecker.cpp</div><div>Checker.cpp</div><div>DereferenceChecker.cpp</div><div>DivZeroChecker.cpp</div><div>FixedAddressChecker.cpp</div><div>IdempotentOperationChecker.cpp</div><div>LLVMConventionsChecker.cpp</div><div>MacOSXAPIChecker.cpp</div><div>MallocChecker.cpp</div><div>NSAutoreleasePoolChecker.cpp</div><div>NSErrorChecker.cpp</div><div>NoReturnFunctionChecker.cpp</div><div>OSAtomicChecker.cpp</div><div>ObjCAtSyncChecker.cpp</div><div>ObjCUnusedIVarsChecker.cpp</div><div>PointerArithChecker.cpp</div><div>PointerSubChecker.cpp</div><div>PthreadLockChecker.cpp</div><div>ReturnPointerRangeChecker.cpp</div><div>ReturnUndefChecker.cpp</div><div>StackAddrLeakChecker.cpp</div><div>StreamChecker.cpp</div><div>UndefBranchChecker.cpp</div><div>UndefCapturedBlockVarChecker.cpp</div><div>UndefResultChecker.cpp</div><div>UndefinedArraySubscriptChecker.cpp</div><div>UndefinedAssignmentChecker.cpp</div><div>UnixAPIChecker.cpp</div><div>UnreachableCodeChecker.cpp</div><div>VLASizeChecker.cpp</div></div><div><br></div><div>This is an over approximation of what checks are on by default, as some are experimental checks that are still too immature to be on be default.</div></div></body></html>