union u{
char ch[41];
int b[10];
}un;
LLVM はこれにコンパイルします
%union.u = type { [10 x i32], [4 x i8] }
この
union un{
struct s{
int a;
float f;
double d;
}st;
int intArr[10];
}uno;
これにコンパイルされます
%union.un = type { %struct.s, [24 x i8] }
%struct.s = type { i32, float, double }
ユニオン型がどのように派生するかを説明できる人はいますか?