diff options
Diffstat (limited to 'test/CodeGenObjC/block-over-align.m')
-rw-r--r-- | test/CodeGenObjC/block-over-align.m | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/test/CodeGenObjC/block-over-align.m b/test/CodeGenObjC/block-over-align.m new file mode 100644 index 000000000000..2747040ac031 --- /dev/null +++ b/test/CodeGenObjC/block-over-align.m @@ -0,0 +1,25 @@ +// RUN: %clang_cc1 -fblocks -triple x86_64-apple-darwin -emit-llvm -o /dev/null %s +// rdar://17878679 + +typedef struct +{ + int i; +} GAXBackboardState __attribute__ ((aligned(32))); // minimum alignment is 32-byte boundary + +@interface GAXSpringboard @end + +@implementation GAXSpringboard +{ + GAXBackboardState _reflectedBackboardState; +} + +- (void) MyMethod +{ + GAXBackboardState newBackboardState; + ^{ + _reflectedBackboardState = newBackboardState; + return newBackboardState.i; + }(); +} +@end + |