struct ClassToStruct { long x; }; union ClassToUnion { long x; }; class StructToClass { long x; }; union StructToUnion { long x; }; class UnionToClass { long x; }; struct UnionToStruct { long x; }; ClassToStruct class_to_struct; ClassToUnion class_to_union; StructToClass struct_to_class; StructToUnion struct_to_union; UnionToClass union_to_class; UnionToStruct union_to_struct;