2007-03-01 Paul Brook <paul@codesourcery.com>
[official-gcc.git] / gcc / testsuite / objc.dg / isa-field-1.m
blob6398b608d826aee96a5c138aeee209a72f908337
1 /* Ensure there are no bizarre difficulties with accessing the 'isa' field of objects.  */
2 /* { dg-do compile { target *-*-darwin* } } */
4 #include <objc/Object.h>
6 @interface Object (Test)
7 - (Class) test1: (id)object;
8 @end
10 @interface Derived: Object
11 - (Class) test2: (id)object;
12 @end
14 @implementation Object (Test)
16 Class test1(id object) {
17     Class cls = object->isa;
18     return cls;
20 - (Class) test1: (id)object {
21     Class cls = object->isa;
22     return cls;
25 @end
27 @implementation Derived
29 Class test2(id object) {
30     Class cls = object->isa;
31     return cls;
33 - (Class) test2: (id)object {
34     Class cls = object->isa;
35     return cls;
38 @end
40 Class test3(id object) {
41     Class cls = object->isa;
42     return cls;