Index: gcc/gcc/testsuite/objc.dg/isa-field-1.m |
diff --git a/gcc/gcc/testsuite/objc.dg/isa-field-1.m b/gcc/gcc/testsuite/objc.dg/isa-field-1.m |
index 6398b608d826aee96a5c138aeee209a72f908337..377280f0d992a8c30533d35b239df64a084821aa 100644 |
--- a/gcc/gcc/testsuite/objc.dg/isa-field-1.m |
+++ b/gcc/gcc/testsuite/objc.dg/isa-field-1.m |
@@ -1,7 +1,7 @@ |
/* Ensure there are no bizarre difficulties with accessing the 'isa' field of objects. */ |
-/* { dg-do compile { target *-*-darwin* } } */ |
+/* { dg-do compile } */ |
-#include <objc/Object.h> |
+#include "../objc-obj-c++-shared/Object1.h" |
@interface Object (Test) |
- (Class) test1: (id)object; |
@@ -14,11 +14,19 @@ |
@implementation Object (Test) |
Class test1(id object) { |
+#ifdef __NEXT_RUNTIME__ |
Class cls = object->isa; |
+#else |
+ Class cls = object->class_pointer; |
+#endif |
return cls; |
} |
- (Class) test1: (id)object { |
+#ifdef __NEXT_RUNTIME__ |
Class cls = object->isa; |
+#else |
+ Class cls = object->class_pointer; |
+#endif |
return cls; |
} |
@@ -27,17 +35,29 @@ Class test1(id object) { |
@implementation Derived |
Class test2(id object) { |
+#ifdef __NEXT_RUNTIME__ |
Class cls = object->isa; |
+#else |
+ Class cls = object->class_pointer; |
+#endif |
return cls; |
} |
- (Class) test2: (id)object { |
+#ifdef __NEXT_RUNTIME__ |
Class cls = object->isa; |
+#else |
+ Class cls = object->class_pointer; |
+#endif |
return cls; |
} |
@end |
Class test3(id object) { |
+#ifdef __NEXT_RUNTIME__ |
Class cls = object->isa; |
+#else |
+ Class cls = object->class_pointer; |
+#endif |
return cls; |
} |