------8<------- bug.d ----
static import std.stdio;
union A {
short a;
long b;
}
void main() {
A x = 0x12345;
std.stdio.writefln("a %s, b %s", x.a, x.b);
}
------8<------- bug.d ----
> dmd -run bug.d
a 0, b 0
A simple numeric initializer is accepted but union members are not initialized accordingly. This should be a compile-time error.