| // RUN: %clang_cc1 -triple i386-apple-darwin9 -fobjc-runtime=macosx-fragile-10.5 -emit-llvm -o %t %s | |
| // RUN: grep '.lazy_reference .objc_class_name_A' %t | count 1 | |
| // RUN: grep '.lazy_reference .objc_class_name_Unknown' %t | count 1 | |
| // RUN: grep '.lazy_reference .objc_class_name_Protocol' %t | count 1 | |
| // RUN: %clang_cc1 -triple i386-apple-darwin9 -fobjc-runtime=macosx-fragile-10.5 -DWITH_IMPL -emit-llvm -o %t %s | |
| // RUN: grep '.lazy_reference .objc_class_name_Root' %t | count 1 | |
| @interface Root | |
| -(id) alloc; | |
| -(id) init; | |
| @end | |
| @protocol P @end | |
| @interface A : Root | |
| @end | |
| @interface A (Category) | |
| +(void) foo; | |
| @end | |
| #ifdef WITH_IMPL | |
| @implementation A | |
| @end | |
| #endif | |
| @interface Unknown | |
| +test; | |
| @end | |
| int main(void) { | |
| id x = @protocol(P); | |
| [ A alloc ]; | |
| [ A foo ]; | |
| [ Unknown test ]; | |
| return 0; | |
| } | |