llvm-project/clang/test/CodeGenCXX/2005-02-11-AnonymousUnion.cpp

33 lines
472 B
C++

// RUN: %clang_cc1 %s -emit-llvm -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 U_t {
short S;
int i;
} U;
int test3(short s) {
U.S = s;
return U.i;
}