// RUN: %clang_cc1 -S -emit-llvm -fobjc-runtime=gcc -o - %s | FileCheck %s @protocol NSCopying @end @interface NSObject { struct objc_object *isa; } + (id) new; - (id) init; @end @interface NSString : NSObject + (NSString *)foo; @end @interface TestClass : NSObject { @public NSString *_stringIvar; int _intIvar; } @end @implementation TestClass @end int main() { TestClass *c = [TestClass new]; return 0; } // CHECK: @0 = private unnamed_addr constant [12 x i8] c"_stringIvar\00" // CHECK: @1 = private unnamed_addr constant [12 x i8] c"@\22NSString\22\00" // CHECK: @2 = private unnamed_addr constant [9 x i8] c"_intIvar\00" // CHECK: @3 = private unnamed_addr constant [2 x i8] c"i\00" @interface Class1 { int : 3; short : 2; long long ll; char : 1; } @end @implementation Class1 @end // CHECK: @{{.*}} = private unnamed_addr constant [5 x i8] c"b0i3\00" // CHECK: @{{.*}} = private unnamed_addr constant [5 x i8] c"b3s2\00" // CHECK: @{{.*}} = private unnamed_addr constant [2 x i8] c"q\00" // CHECK: @{{.*}} = private unnamed_addr constant [{{7|6}} x i8] c"b{{128|96}}c1\00"