diff options
Diffstat (limited to 'test/CodeGenObjC/reorder-synthesized-ivars.m')
-rw-r--r-- | test/CodeGenObjC/reorder-synthesized-ivars.m | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/test/CodeGenObjC/reorder-synthesized-ivars.m b/test/CodeGenObjC/reorder-synthesized-ivars.m new file mode 100644 index 0000000..747265d --- /dev/null +++ b/test/CodeGenObjC/reorder-synthesized-ivars.m @@ -0,0 +1,58 @@ +// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fobjc-default-synthesize-properties -emit-llvm -x objective-c %s -o - | FileCheck %s +// rdar://13192366 +typedef signed char BOOL; +@interface NSObject +{ + id isa; +} +@end + +@interface MyClass : NSObject + +@property (readwrite) BOOL boolean1; +@property (readwrite, copy) id object1; +@property (readwrite) BOOL boolean2; +@property (readwrite, copy) id object2; +@property (readwrite) BOOL boolean3; +@property (readwrite, copy) id object3; +@property (readwrite) BOOL boolean4; +@property (readwrite, copy) id object4; +@property (readwrite) BOOL boolean5; +@property (readwrite, copy) id object5; +@property (readwrite) BOOL boolean6; +@property (readwrite, copy) id object6; +@property (readwrite) BOOL boolean7; +@property (readwrite) BOOL MyBool; +@property (readwrite, copy) id object7; +@property (readwrite) BOOL boolean8; +@property (readwrite, copy) id object8; +@property (readwrite) BOOL boolean9; +@property (readwrite, copy) id object9; +@end + +@implementation MyClass +{ + id MyIvar; + BOOL _MyBool; + char * pc; +} +@end + +// CHECK: @"{{.*}}" = internal global [10 x i8] c"_boolean1 +// CHECK-NEXT: @"{{.*}}" = internal global [10 x i8] c"_boolean2 +// CHECK-NEXT: @"{{.*}}" = internal global [10 x i8] c"_boolean3 +// CHECK-NEXT: @"{{.*}}" = internal global [10 x i8] c"_boolean4 +// CHECK-NEXT: @"{{.*}}" = internal global [10 x i8] c"_boolean5 +// CHECK-NEXT: @"{{.*}}" = internal global [10 x i8] c"_boolean6 +// CHECK-NEXT: @"{{.*}}" = internal global [10 x i8] c"_boolean7 +// CHECK-NEXT: @"{{.*}}" = internal global [10 x i8] c"_boolean8 +// CHECK-NEXT: @"{{.*}}" = internal global [10 x i8] c"_boolean9 +// CHECK-NEXT: @"{{.*}}" = internal global [9 x i8] c"_object1 +// CHECK-NEXT: @"{{.*}}" = internal global [9 x i8] c"_object2 +// CHECK-NEXT: @"{{.*}}" = internal global [9 x i8] c"_object3 +// CHECK-NEXT: @"{{.*}}" = internal global [9 x i8] c"_object4 +// CHECK-NEXT: @"{{.*}}" = internal global [9 x i8] c"_object5 +// CHECK-NEXT: @"{{.*}}" = internal global [9 x i8] c"_object6 +// CHECK-NEXT: @"{{.*}}" = internal global [9 x i8] c"_object7 +// CHECK-NEXT: @"{{.*}}" = internal global [9 x i8] c"_object8 +// CHECK-NEXT: @"{{.*}}" = internal global [9 x i8] c"_object9 |