• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #pragma clang assume_nonnull begin
2 
3 __attribute__((objc_root_class))
4 @interface B
5 @end
6 
7 @interface C : B
8 @end
9 
10 __attribute__((objc_root_class))
11 @interface NSGeneric<T : B *> // expected-note{{type parameter 'T' declared here}}
12 - (T)tee;
13 - (nullable T)maybeTee;
14 @end
15 
16 typedef NSGeneric<C *> *Generic_with_C;
17 
18 #pragma clang assume_nonnull end
19 
20 @interface NSGeneric<T : C *>(Blah) // expected-error{{type bound 'C *' for type parameter 'T' conflicts with previous bound 'B *'}}
21 @end
22