struct A { A() : x(5) { } int x; }; struct B { B(A a) : x(a.x) { } int x; };