Hi, should the below work? struct A { public this(B b) {} } struct B {} void foo(A a) {} void main() { B b; foo(b); // Fails } The constructor parameter doesn't need to be a struct, it could be an int. The workaround is to explicity call the constructor.