Jarrett Billingsley wrote:
The second is worse. __ctor (if it exists) is not virtual, so it's not possible to get a list of overloads of it with __traits.
This is a simple one: final class Finalize(C) : C { this(A...)(A args) if (is(new C(args)) { super(args); } } Andrei