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