```d union U { int i32; long i64; float f32; double f64; }
struct S { TypeEnum type; U data; } S foo0 = S(TypeEnum.Integer32, S(20)); //Ugly, but worksS foo1 = S(TypeEnum.Integer64, S(20L)); //Error: cannot implicitly convert expression
//ditto for the rest of the members ```My question is can I initialize structs like these in one line without relying on a second line? My usecase scenario doesn't really allow constructors for the struct, since it's a binding to an external library via C API.