mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-29 06:30:39 +00:00
48c255d7f8
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70233 91177308-0d34-0410-b5e6-96231b3b80d8
45 lines
785 B
Objective-C
45 lines
785 B
Objective-C
// RUN: %llvmgcc -S -x objective-c -m64 -fobjc-abi-version=2 %s -o %t
|
|
// RUN: grep {OBJC_CLASS_RO_\\\$_I4} %t | grep {i32 0, i32 1, i32 2, i32 0}
|
|
// RUN: grep {OBJC_CLASS_RO_\\\$_I2} %t | grep {i32 0, i32 1, i32 1, i32 0}
|
|
// RUN: grep {OBJC_CLASS_RO_\\\$_I5} %t | grep {i32 0, i32 0, i32 0, i32 0}
|
|
// XTARGETS: darwin
|
|
|
|
// Test instance variable sizing when base class ends in bitfield
|
|
@interface I3 {
|
|
unsigned int _iv2 :1;
|
|
}
|
|
@end
|
|
|
|
@interface I4 : I3 {
|
|
char _iv4;
|
|
}
|
|
@end
|
|
|
|
// Test case with no instance variables in derived class
|
|
@interface I1 {
|
|
unsigned int _iv2 :1;
|
|
}
|
|
@end
|
|
|
|
@interface I2 : I1 {
|
|
}
|
|
@end
|
|
|
|
// Test case with no instance variables anywhere
|
|
@interface I6 {
|
|
}
|
|
@end
|
|
|
|
@interface I5 : I6 {
|
|
}
|
|
@end
|
|
|
|
@implementation I4
|
|
@end
|
|
|
|
@implementation I2
|
|
@end
|
|
|
|
@implementation I5
|
|
@end
|