| // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fobjc-nonfragile-abi -emit-llvm -o %t %s |
| // RUN: %clang_cc1 -x objective-c++ -triple x86_64-apple-darwin10 -fobjc-nonfragile-abi -emit-llvm -o %t %s |
| // rdar: // 7824380 |
| |
| @interface Super { |
| int ivar_super_a : 5; |
| } |
| @end |
| |
| @interface A : Super { |
| @public |
| int ivar_a : 5; |
| } |
| @end |
| |
| int f0(A *a) { |
| return a->ivar_a; |
| } |
| |
| @interface A () { |
| @public |
| int ivar_ext_a : 5; |
| int ivar_ext_b : 5; |
| }@end |
| |
| int f1(A *a) { |
| return a->ivar_ext_a + a->ivar_a; |
| } |
| |
| @interface A () { |
| @public |
| int ivar_ext2_a : 5; |
| int ivar_ext2_b : 5; |
| }@end |
| |
| int f2(A* a) { |
| return a->ivar_ext2_a + a->ivar_ext_a + a->ivar_a; |
| } |
| |
| @implementation A { |
| @public |
| int ivar_b : 5; |
| int ivar_c : 5; |
| int ivar_d : 5; |
| } |
| @end |
| |
| int f3(A *a) { |
| return a->ivar_d + a->ivar_ext2_a + a->ivar_ext_a + a->ivar_a; |
| } |
| |