diff options
author | Nicola Pero <nicola.pero@meta-innovation.com> | 2010-12-24 15:32:25 +0000 |
---|---|---|
committer | Nicola Pero <nicola@gcc.gnu.org> | 2010-12-24 15:32:25 +0000 |
commit | 877bf1953af3383597ad4f76971539e5e05c6d31 (patch) | |
tree | 446ade8fb58c3ae9ed224c5430645dbb30deddb2 /gcc | |
parent | eb277bf19cea73ab2ca031fdb650013d666529f6 (diff) | |
download | gcc-877bf1953af3383597ad4f76971539e5e05c6d31.zip gcc-877bf1953af3383597ad4f76971539e5e05c6d31.tar.gz gcc-877bf1953af3383597ad4f76971539e5e05c6d31.tar.bz2 |
In libobjc/: 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/:
2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
* objc/runtime.h (class_conformsToProtocol,
class_copyProtocolList): Updated documentation.
In gcc/testsuite/:
2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
* obj-c.dg/gnu-api-2-class.m: Test that class_conformsToProtocol()
does not check the superclasses.
* obj-c++.dg/gnu-api-2-class.mm: Same change.
From-SVN: r168226
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/obj-c++.dg/gnu-api-2-class.mm | 11 | ||||
-rw-r--r-- | gcc/testsuite/objc.dg/gnu-api-2-class.m | 11 |
3 files changed, 28 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 2cc045b..1324aeb 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com> + + * obj-c.dg/gnu-api-2-class.m: Test that class_conformsToProtocol() + does not check the superclasses. + * obj-c++.dg/gnu-api-2-class.mm: Same change. + 2010-12-24 Alexander Monakov <amonakov@ispras.ru> PR rtl-optimization/47036 diff --git a/gcc/testsuite/obj-c++.dg/gnu-api-2-class.mm b/gcc/testsuite/obj-c++.dg/gnu-api-2-class.mm index da25663..b86396f 100644 --- a/gcc/testsuite/obj-c++.dg/gnu-api-2-class.mm +++ b/gcc/testsuite/obj-c++.dg/gnu-api-2-class.mm @@ -42,6 +42,12 @@ - (id) variable { return variable_ivar; } @end +@interface MyOtherSubClass : MySubClass +@end + +@implementation MyOtherSubClass +@end + @interface DifferentClass : MyRootClass - (id) myClass; - (id) self; @@ -188,6 +194,11 @@ int main () if (!class_conformsToProtocol (objc_getClass ("MySubClass"), @protocol (MyProtocol))) abort (); + + /* Test that class_conformsToProtocol checks the class, but not + superclasses. */ + if (class_conformsToProtocol (objc_getClass ("MyOtherSubClass"), @protocol (MyProtocol))) + abort (); } std::cout << "Testing class_copyIvarList ()...\n"; diff --git a/gcc/testsuite/objc.dg/gnu-api-2-class.m b/gcc/testsuite/objc.dg/gnu-api-2-class.m index d38d9c2..ff04259 100644 --- a/gcc/testsuite/objc.dg/gnu-api-2-class.m +++ b/gcc/testsuite/objc.dg/gnu-api-2-class.m @@ -42,6 +42,12 @@ - (id) variable { return variable_ivar; } @end +@interface MyOtherSubClass : MySubClass +@end + +@implementation MyOtherSubClass +@end + @interface DifferentClass : MyRootClass - (id) myClass; - (id) self; @@ -188,6 +194,11 @@ int main(int argc, void **args) if (!class_conformsToProtocol (objc_getClass ("MySubClass"), @protocol (MyProtocol))) abort (); + + /* Test that class_conformsToProtocol checks the class, but not + superclasses. */ + if (class_conformsToProtocol (objc_getClass ("MyOtherSubClass"), @protocol (MyProtocol))) + abort (); } printf ("Testing class_copyIvarList ()...\n"); |