> Same with this code: http://dpaste.1azy.net/2c98fe95 > But there I found no workaround. This works: new C(cast(A) new B(), FloatRect(0, 1, 2, 3)); But that is ugly. o.O I think you are right and it is a bug in function overload selection. :(