xref: /minix3/external/bsd/llvm/dist/clang/test/CodeGenObjC/block-byref-debuginfo.m (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1// RUN: %clang_cc1 -fblocks -fobjc-arc -fobjc-runtime-has-weak -g -triple x86_64-apple-darwin -emit-llvm %s -o - | FileCheck %s
2
3// rdar://problem/14386148
4// Test that the foo is aligned at an 8 byte boundary in the DWARF
5// expression (256) that locates it inside of the byref descriptor:
6// CHECK: [ DW_TAG_member ] [foo] [line 0, size {{[0-9]+}}, align 64, offset 256] [from Foo]
7
8struct Foo {
9  unsigned char *data;
10};
11int func() {
12  __attribute__((__blocks__(byref))) struct Foo foo;
13  return 0;
14}
15