Fix PR c++/109958: ICE taking the address of bound static member function brought...
[official-gcc.git] / gcc / testsuite / obj-c++.dg / comp-types-6.mm
blob071a7563b8928f2d8c2e29356c6e0d39fcc9d81e
1 /* Test assignments and comparisons involving `one-off' protocols.  */
2 /* Author: Nicola Pero <nicola@brainstorm.co.uk>.  */
3 /* { dg-do compile } */
4 // { dg-additional-options "-Wno-objc-root-class" }
6 #include <objc/objc.h>
8 @protocol MyProtocol
9 - (void) method;
10 @end
12 @interface MyClass
13 @end
15 int main()
17   id obj = nil;
18   id <MyProtocol> obj_p = nil;
19   MyClass<MyProtocol> *obj_cp = nil;
21   obj_cp = obj; /* Ok */
22   obj = obj_cp; /* Ok */
24   obj_cp = obj_p; /* Ok */
25   obj_p = obj_cp; /* Ok */
26   
27   if (obj_cp == obj) ; /* Ok */
28   if (obj == obj_cp) ; /* Ok */
30   if (obj_cp == obj_p) ; /* Ok */
31   if (obj_p == obj_cp) ; /* Ok */
33   return 0;