Fariborz Jahanian | 88b6c4b | 2012-10-01 20:55:56 +0000 | [diff] [blame^] | 1 | // RUN: %clang -arch i386 -fms-extensions -rewrite-objc %s -o %t-rw.cpp |
| 2 | // RUN: FileCheck %s < %t-rw.cpp |
| 3 | // RUN: %clang -arch x86_64 -fms-extensions -rewrite-objc %s -o %t-rw-64bit.cpp |
| 4 | // RUN: FileCheck -check-prefix=LP64 %s < %t-rw-64bit.cpp |
| 5 | // rdar://12189793 |
| 6 | |
| 7 | #ifdef __cplusplus |
| 8 | |
| 9 | void *sel_registerName(const char *); |
| 10 | |
| 11 | @interface Root @end |
| 12 | |
| 13 | @interface MYINTF : Root |
| 14 | @end |
| 15 | |
| 16 | #endif |
| 17 | |
| 18 | @implementation MYINTF |
| 19 | - (id) MYMETH { return [self MYMETH]; } |
| 20 | @end |
| 21 | |
| 22 | int main() { |
| 23 | } |
| 24 | |
| 25 | // CHECK: static struct _class_ro_t _OBJC_CLASS_RO_$_MYINTF |
| 26 | // CHECK-NEXT: 0, 0, 0, |
| 27 | // CHECK-NEXT: 0, |
| 28 | // CHECK-NEST: "MYINTF", |
| 29 | |
| 30 | // CHECK-LP64: static struct _class_ro_t _OBJC_CLASS_RO_$_MYINTF |
| 31 | // CHECK-LP64-NEXT: 0, 0, 0, |
| 32 | // CHECK-LP64-NEXT: (unsigned int)0, |
| 33 | // CHECK-LP64-NEXT: 0, |
| 34 | // CHECK-LP64-NEST: "MYINTF", |