Home | History | Annotate | Download | only in inlining
      1 // RUN: %clang_cc1 -analyze -analyzer-checker=core -analyzer-config ipa=dynamic-bifurcate -analyzer-config objc-inlining=false -verify %s
      2 // expected-no-diagnostics
      3 
      4 typedef signed char BOOL;
      5 typedef struct objc_class *Class;
      6 typedef struct objc_object {
      7     Class isa;
      8 } *id;
      9 @protocol NSObject  - (BOOL)isEqual:(id)object; @end
     10 @interface NSObject <NSObject> {}
     11 +(id)alloc;
     12 -(id)init;
     13 -(id)autorelease;
     14 -(id)copy;
     15 - (Class)class;
     16 -(id)retain;
     17 @end
     18 
     19 // Vanila: ObjC class method is called by name.
     20 @interface MyParent : NSObject
     21 + (int)getInt;
     22 @end
     23 @interface MyClass : MyParent
     24 + (int)getInt;
     25 @end
     26 @implementation MyClass
     27 + (int)testClassMethodByName {
     28     int y = [MyClass getInt];
     29     return 5/y; // no-warning
     30 }
     31 + (int)getInt {
     32   return 0;
     33 }
     34 @end