```d ubyte a; const(ubyte) b; auto x = true ? a : b; pragma(msg, typeof(x)); // int ``` Why? This isn't a VRP problem, as both are `ubyte`. Related issue https://issues.dlang.org/show_bug.cgi?id=19817 -Steve