<div dir="ltr">It is not showing up for me.<div><br></div><div><div>clang -cc1 -analyzer-checker-help                                                                                                      [11:28:17]</div><div>
OVERVIEW: Clang Static Analyzer Checkers List</div><div><br></div><div>USAGE: -analyzer-checker <CHECKER or PACKAGE,...></div><div><br></div><div>CHECKERS:</div><div>  alpha.core.BoolAssignment       Warn about assigning non-{0,1} values to Boolean variables</div>
<div>  alpha.core.CastSize             Check when casting a malloc'ed type T, whether the size is a multiple of the size of T</div><div>  alpha.core.CastToStruct         Check for cast from non-struct pointer to struct pointer</div>
<div>  alpha.core.FixedAddr            Check for assignment of a fixed address to a pointer</div><div>  alpha.core.PointerArithm        Check for pointer arithmetic on locations other than array elements</div><div>  alpha.core.PointerSub           Check for pointer subtractions on two pointers pointing to different memory chunks</div>
<div>  alpha.core.SizeofPtr            Warn about unintended use of sizeof() on pointer expressions</div><div>  alpha.cplusplus.VirtualCall     Check virtual function calls during construction or destruction</div><div>  alpha.deadcode.IdempotentOperations</div>
<div>                                  Warn about idempotent operations</div><div>  alpha.deadcode.UnreachableCode  Check unreachable code</div><div>  alpha.osx.cocoa.Dealloc         Warn about Objective-C classes that lack a correct implementation of -dealloc</div>
<div>  alpha.osx.cocoa.DirectIvarAssignment</div><div>                                  Check that the invalidatable instance variables are invalidated in the methods annotated with objc_instance_variable_invalidator</div>
<div>  alpha.osx.cocoa.InstanceVariableInvalidation</div><div>                                  Check that the invalidatable instance variables are invalidated in the methods annotated with objc_instance_variable_invalidator</div>
<div>  alpha.security.ArrayBound       Warn about buffer overflows (older checker)</div><div>  alpha.security.ArrayBoundV2     Warn about buffer overflows (newer checker)</div><div>  alpha.security.MallocOverflow   Check for overflows in the arguments to malloc()</div>
<div>  alpha.security.ReturnPtrRange   Check for an out-of-bound pointer being returned to callers</div><div>  alpha.security.taint.TaintPropagation</div><div>                                  Generate taint information used by other checkers</div>
<div>  alpha.unix.Chroot               Check improper use of chroot</div><div>  alpha.unix.MallocWithAnnotations</div><div>                                  Check for memory leaks, double free, and use-after-free problems. Assumes that all user-defined functions which might free a pointer are annotated.</div>
<div>  alpha.unix.PthreadLock          Simple lock -> unlock checker</div><div>  alpha.unix.Stream               Check stream handling functions</div><div>  alpha.unix.cstring.BufferOverlap</div><div>                                  Checks for overlap in two buffer arguments</div>
<div>  alpha.unix.cstring.NotNullTerminated</div><div>                                  Check for arguments which are not null-terminating strings</div><div>  alpha.unix.cstring.OutOfBounds  Check for out-of-bounds access in string functions</div>
<div>  core.AttributeNonNull           Check for null pointers passed as arguments to a function whose arguments are marked with the 'nonnull' attribute</div><div>  core.CallAndMessage             Check for logical errors for function calls and Objective-C message expressions (e.g., uninitialized arguments, null function pointers)</div>
<div>  core.DivideZero                 Check for division by zero</div><div>  core.DynamicTypePropagation     Generate dynamic type information</div><div>  core.NullDereference            Check for dereferences of null pointers</div>
<div>  core.StackAddressEscape         Check that addresses to stack memory do not escape the function</div><div>  core.UndefinedBinaryOperatorResult</div><div>                                  Check for undefined results of binary operators</div>
<div>  core.VLASize                    Check for declarations of VLA of undefined or zero size</div><div>  core.builtin.BuiltinFunctions   Evaluate compiler builtin functions (e.g., alloca())</div><div>  core.builtin.NoReturnFunctions  Evaluate "panic" functions that are known to not return to the caller</div>
<div>  core.uninitialized.ArraySubscript</div><div>                                  Check for uninitialized values used as array subscripts</div><div>  core.uninitialized.Assign       Check for assigning uninitialized values</div>
<div>  core.uninitialized.Branch       Check for uninitialized values used as branch conditions</div><div>  core.uninitialized.CapturedBlockVariable</div><div>                                  Check for blocks that capture uninitialized values</div>
<div>  core.uninitialized.UndefReturn  Check for uninitialized values being returned to the caller</div><div>  deadcode.DeadStores             Check for values stored to variables that are never read afterwards</div><div>
  debug.ConfigDumper              Dump config table</div><div>  debug.DumpCFG                   Display Control-Flow Graphs</div><div>  debug.DumpCallGraph             Display Call Graph</div><div>  debug.DumpCalls                 Print calls as they are traversed by the engine</div>
<div>  debug.DumpDominators            Print the dominance tree for a given CFG</div><div>  debug.DumpLiveVars              Print results of live variable analysis</div><div>  debug.DumpTraversal             Print branch conditions as they are traversed by the engine</div>
<div>  debug.ExprInspection            Check the analyzer's understanding of expressions</div><div>  debug.Stats                     Emit warnings with analyzer statistics</div><div>  debug.TaintTest                 Mark tainted symbols as such.</div>
<div>  debug.ViewCFG                   View Control-Flow Graphs using GraphViz</div><div>  debug.ViewCallGraph             View Call Graph using GraphViz</div><div>  llvm.Conventions                Check code for LLVM codebase conventions</div>
<div>  osx.API                         Check for proper uses of various Mac OS X APIs</div><div>  osx.SecKeychainAPI              Check for proper uses of Secure Keychain APIs</div><div>  osx.cocoa.AtSync                Check for nil pointers used as mutexes for @synchronized</div>
<div>  osx.cocoa.ClassRelease          Check for sending 'retain', 'release', or 'autorelease' directly to a Class</div><div>  osx.cocoa.IncompatibleMethodTypes</div><div>                                  Warn about Objective-C method signatures with type incompatibilities</div>
<div>  osx.cocoa.Loops                 Improved modeling of loops using Cocoa collection types</div><div>  osx.cocoa.NSAutoreleasePool     Warn for suboptimal uses of NSAutoreleasePool in Objective-C GC mode</div><div>  osx.cocoa.NSError               Check usage of NSError** parameters</div>
<div>  osx.cocoa.NilArg                Check for prohibited nil arguments to ObjC method calls</div><div>  osx.cocoa.NonNilReturnValue     Model the APIs that are guaranteed to return a non-nil value</div><div>  osx.cocoa.RetainCount           Check for leaks and improper reference count management</div>
<div>  osx.cocoa.SelfInit              Check that 'self' is properly initialized inside an initializer method</div><div>  osx.cocoa.UnusedIvars           Warn about private ivars that are never used</div><div>  osx.cocoa.VariadicMethodTypes   Check for passing non-Objective-C types to variadic collection initialization methods that expect only Objective-C types</div>
<div>  osx.coreFoundation.CFError      Check usage of CFErrorRef* parameters</div><div>  osx.coreFoundation.CFNumber     Check for proper uses of CFNumberCreate</div><div>  osx.coreFoundation.CFRetainRelease</div><div>                                  Check for null arguments to CFRetain/CFRelease</div>
<div>  osx.coreFoundation.containers.OutOfBounds</div><div>                                  Checks for index out-of-bounds when using 'CFArray' API</div><div>  osx.coreFoundation.containers.PointerSizedValues</div>
<div>                                  Warns if 'CFArray', 'CFDictionary', 'CFSet' are created with non-pointer-size values</div><div>  security.FloatLoopCounter       Warn on using a floating point value as a loop counter (CERT: FLP30-C, FLP30-CPP)</div>
<div>  security.insecureAPI.UncheckedReturn</div><div>                                  Warn on uses of functions whose return values must be always checked</div><div>  security.insecureAPI.getpw      Warn on uses of the 'getpw' function</div>
<div>  security.insecureAPI.gets       Warn on uses of the 'gets' function</div><div>  security.insecureAPI.mkstemp    Warn when 'mkstemp' is passed fewer than 6 X's in the format string</div><div>  security.insecureAPI.mktemp     Warn on uses of the 'mktemp' function</div>
<div>  security.insecureAPI.rand       Warn on uses of the 'rand', 'random', and related functions</div><div>  security.insecureAPI.strcpy     Warn on uses of the 'strcpy' and 'strcat' functions</div>
<div>  security.insecureAPI.vfork      Warn on uses of the 'vfork' function</div><div>  unix.API                        Check calls to various UNIX/Posix functions</div><div>  unix.Malloc                     Check for memory leaks, double free, and use-after-free problems.</div>
<div>  unix.MallocSizeof               Check for dubious malloc arguments involving sizeof</div><div>  unix.cstring.BadSizeArg         Check the size argument passed into C string functions for common erroneous patterns</div>
<div>  unix.cstring.NullArg            Check for null pointers being passed as arguments to C string functions</div></div><div><br></div><div><br></div><div><br></div><div style>I just pulled and rebuilt to be sure, still nothing.</div>
<div style><br></div><div style>Sincerely,</div><div style>Todd Nowacki</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Jun 5, 2013 at 10:15 AM, Anna Zaks <span dir="ltr"><<a href="mailto:ganna@apple.com" target="_blank">ganna@apple.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word">I do see it in the list (the visible name is slightly different):<div><div style="margin:0px;font-size:11px;font-family:Menlo">
  alpha.unix.SimpleStream         Check for misuses of stream APIs</div><div style="margin:0px;font-size:11px;font-family:Menlo"><br></div><div style="margin:0px;font-size:11px;font-family:Menlo"><span style="font-family:Helvetica;font-size:12px">Cheers,</span></div>
<div style="margin:0px;font-size:11px;font-family:Menlo"><span style="font-family:Helvetica;font-size:12px">Anna.</span><div style="font-family:Helvetica;font-size:12px"></div></div><div><div><div class="h5"><div>On Jun 4, 2013, at 4:28 PM, Todd Nowacki <<a href="mailto:nowacki724@gmail.com" target="_blank">nowacki724@gmail.com</a>> wrote:</div>
<br></div></div><blockquote type="cite"><div style="letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><div><div class="h5"><div dir="ltr">I'm getting started with trying to develop a checker, and I'm trying to get aquianted with the system.<div>
<br></div><div>I am not seeing the the SimpleStreamChecker when I run <b style="font-family:monospace;line-height:18px">clang -cc1 -analyzer-checker-help</b><span style="font-family:monospace;line-height:18px">. </span> I looked and it appears as if all the steps for 'checker registration' have been completed for this checker, yet it is not showing up. While I don't need to use this checker, I was wondering what was going on here and what needs to be done to fix it.</div>
<div><br></div><div>Sincerely,</div><div>Todd Nowacki</div></div></div></div>_______________________________________________<br>cfe-dev mailing list<br><a href="mailto:cfe-dev@cs.uiuc.edu" target="_blank">cfe-dev@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev</a></div></blockquote></div><br></div></div></blockquote></div><br></div>