Keep track of analysis information inherited from Module pass manager.
[oota-llvm.git] / test / C++Frontend / 2005-02-11-AnonymousUnion.cpp
1 // RUN: %llvmgxx %s -S -o -
2
3 // Test anonymous union with members of the same size.
4 int test1(float F) {
5   union {
6      float G;
7      int i;
8   };
9   G = F;
10   return i;
11 }
12
13 // test anonymous union with members of differing size.
14 int test2(short F) {
15   volatile union {
16      short G;
17      int i;
18   };
19   G = F;
20   return i;
21 }
22
23 // Make sure that normal unions work.  duh :)
24 volatile union {
25   short S;
26   int i;
27 } U;
28
29 int test3(short s) {
30   U.S = s;
31   return U.i;
32 }