1/* Test assignments and comparisons involving `one-off' protocols. */ 2/* Author: Nicola Pero <nicola@brainstorm.co.uk>. */ 3/* { dg-do compile } */ 4#include <objc/objc.h> 5 6@protocol MyProtocol 7- (void) method; 8@end 9 10@interface MyClass 11@end 12 13int main() 14{ 15 id obj = nil; 16 id <MyProtocol> obj_p = nil; 17 MyClass<MyProtocol> *obj_cp = nil; 18 19 obj_cp = obj; /* Ok */ 20 obj = obj_cp; /* Ok */ 21 22 obj_cp = obj_p; /* Ok */ 23 obj_p = obj_cp; /* Ok */ 24 25 if (obj_cp == obj) ; /* Ok */ 26 if (obj == obj_cp) ; /* Ok */ 27 28 if (obj_cp == obj_p) ; /* Ok */ 29 if (obj_p == obj_cp) ; /* Ok */ 30 31 return 0; 32} 33