OSDN Git Service

Testcase for llvm-gcc 64510.
authorDale Johannesen <dalej@apple.com>
Sat, 14 Feb 2009 00:19:28 +0000 (00:19 +0000)
committerDale Johannesen <dalej@apple.com>
Sat, 14 Feb 2009 00:19:28 +0000 (00:19 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@64511 91177308-0d34-0410-b5e6-96231b3b80d8

test/FrontendC/2009-02-13-zerosize-union-field.c [new file with mode: 0644]

diff --git a/test/FrontendC/2009-02-13-zerosize-union-field.c b/test/FrontendC/2009-02-13-zerosize-union-field.c
new file mode 100644 (file)
index 0000000..044cbd5
--- /dev/null
@@ -0,0 +1,13 @@
+// RUN: %llvmgcc %s -m32 -S -o - | grep {i32 1} | count 1
+// RUN: %llvmgcc %s -m32 -S -o - | grep {i32 4} | count 2
+//  Every printf has 'i32 0' for the GEP of the string; no point counting those.
+typedef unsigned int Foo __attribute__((aligned(32)));
+typedef union{Foo:0;}a;
+typedef union{int x; Foo:0;}b;
+extern int printf(const char*, ...);
+main() {
+  printf("%ld\n", sizeof(a));
+  printf("%ld\n", __alignof__(a));
+  printf("%ld\n", sizeof(b));
+  printf("%ld\n", __alignof__(b));
+}