1 /* Test assignments and comparisons involving category protocols. */
2 /* Author: Nicola Pero <nicola@brainstorm.co.uk>. */
3 /* { dg-do compile } */
13 @interface MyClass (Addition) <MyProtocol>
17 @interface MyOtherClass : MyClass
22 id <MyProtocol> obj_p = nil;
23 MyClass *obj_cp = nil;
24 MyOtherClass *obj_cp2 = nil;
26 obj_cp = obj_p; /* { dg-warning "incompatible pointer type" } */
27 obj_cp2 = obj_p; /* { dg-warning "incompatible pointer type" } */
28 obj_p = obj_cp; /* Ok */
29 obj_p = obj_cp2; /* Ok */
31 if (obj_cp == obj_p) ; /* Ok */
32 if (obj_cp2 == obj_p) ; /* Ok */
33 if (obj_p == obj_cp) ; /* Ok */
34 if (obj_p == obj_cp2) ; /* Ok */