New testcase for PR501
authorChris Lattner <sabre@nondot.org>
Fri, 11 Feb 2005 19:26:06 +0000 (19:26 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 11 Feb 2005 19:26:06 +0000 (19:26 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20117 91177308-0d34-0410-b5e6-96231b3b80d8

test/C++Frontend/2005-02-11-AnonymousUnion.cpp [new file with mode: 0644]

diff --git a/test/C++Frontend/2005-02-11-AnonymousUnion.cpp b/test/C++Frontend/2005-02-11-AnonymousUnion.cpp
new file mode 100644 (file)
index 0000000..b0ff7e7
--- /dev/null
@@ -0,0 +1,32 @@
+// RUN: %llvmgxx %s -S -o -
+
+// Test anonymous union with members of the same size.
+int test1(float F) {
+  union {
+     float G;
+     int i;
+  };
+  G = F;
+  return i;
+}
+
+// test anonymous union with members of differing size.
+int test2(short F) {
+  volatile union {
+     short G;
+     int i;
+  };
+  G = F;
+  return i;
+}
+
+// Make sure that normal unions work.  duh :)
+volatile union {
+  short S;
+  int i;
+} U;
+
+int test3(short s) {
+  U.S = s;
+  return U.i;
+}