Home | History | Annotate | Download | only in Analysis
      1 // RUN: %clang_cc1 -analyze -analyzer-checker=core,experimental.core -analyzer-constraints=basic -analyzer-store=region -verify -Wno-objc-root-class %s
      2 
      3 typedef struct Foo { int x; } Bar;
      4 
      5 @interface MyClass {}
      6 - (Bar)foo;
      7 @end
      8 @implementation MyClass
      9 - (Bar)foo { 
     10   struct Foo f = { 0 };
     11   return f;
     12 }
     13 @end
     14 
     15 void createFoo() {
     16   MyClass *obj = 0;  
     17   Bar f = [obj foo]; // no-warning
     18 }
     19 
     20 void createFoo2() {
     21   MyClass *obj = 0;  
     22   [obj foo]; // no-warning
     23   Bar f = [obj foo]; // no-warning
     24 }
     25 
     26