summaryrefslogtreecommitdiff
path: root/clang/test/CodeGen/2009-06-18-StaticInitTailPadPack.c
diff options
context:
space:
mode:
Diffstat (limited to 'clang/test/CodeGen/2009-06-18-StaticInitTailPadPack.c')
-rw-r--r--clang/test/CodeGen/2009-06-18-StaticInitTailPadPack.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/clang/test/CodeGen/2009-06-18-StaticInitTailPadPack.c b/clang/test/CodeGen/2009-06-18-StaticInitTailPadPack.c
new file mode 100644
index 0000000..be103ec
--- /dev/null
+++ b/clang/test/CodeGen/2009-06-18-StaticInitTailPadPack.c
@@ -0,0 +1,26 @@
+// RUN: %clang_cc1 %s -emit-llvm -o -
+// rdar://6983634
+
+ typedef struct A *Foo;
+#pragma pack(push, 2)
+ struct Bar {
+ Foo f1;
+ unsigned short f2;
+ float f3;
+ };
+ struct Baz {
+ struct Bar f1;
+ struct Bar f2;
+ };
+ struct Qux {
+ unsigned long f1;
+ struct Baz f2;
+ };
+extern const struct Qux Bork;
+const struct Qux Bork = {
+ 0,
+ {
+ {0},
+ {0}
+ }
+};