I propose to add type inference (similar to one for functions) for constructor calls, that is to make the following program legal: class C(T) { this(T) { } } void main() { immutable x = new C(0); } This would simplify programming eliminating the need to create a factory function or factory functions for each template class. Pro: shorter programs. Con: some consider it a good practice to make a factory function ALWAYS. Pro: even if you create a factory function, the body of this function itself would be shortened.
*** This issue has been marked as a duplicate of issue 1997 ***