1 typedef int* _Nonnull mynonnull; 2 3 __attribute__((objc_root_class)) 4 @interface typedefClass 5 - (void) func1:(mynonnull)i; 6 @end 7 8 void func2(mynonnull i); 9 10 void func3(int *); // expected-warning{{pointer is missing a nullability type specifier}} 11 12 #define CF_RETURNS_NOT_RETAINED __attribute__((cf_returns_not_retained)) 13 typedef void *CFTypeRef; 14 void cf1(CFTypeRef * p CF_RETURNS_NOT_RETAINED); // expected-warning {{pointer is missing a nullability type specifier}} 15 16 void cf2(CFTypeRef * _Nullable p CF_RETURNS_NOT_RETAINED); 17 void cf3(CFTypeRef * _Nonnull p CF_RETURNS_NOT_RETAINED); 18 19 void cf4(CFTypeRef _Nullable * _Nullable p CF_RETURNS_NOT_RETAINED); 20 void cf5(CFTypeRef _Nonnull * _Nullable p CF_RETURNS_NOT_RETAINED); 21 22 void cf6(CFTypeRef * _Nullable CF_RETURNS_NOT_RETAINED p); 23 void cf7(CF_RETURNS_NOT_RETAINED CFTypeRef * _Nonnull p); 24 25 typedef CFTypeRef _Nullable *CFTypeRefPtr; 26 void cfp1(CFTypeRefPtr p CF_RETURNS_NOT_RETAINED); // expected-warning {{pointer is missing a nullability type specifier}} 27 void cfp2(CFTypeRefPtr _Nonnull p CF_RETURNS_NOT_RETAINED); 28