1 class Base 2 { this()3 this() shared 4 {} 5 this()6 this() 7 {} 8 } 9 10 class Derived1 : Base 11 { this()12 this() 13 { 14 // implicit super(); 15 } 16 } 17 18 class Derived2 : Base 19 { 20 // implicit this() 21 } 22 23 class Base2 24 { this()25 this() shared 26 {} 27 } 28 29 class Derived3 : Base2 30 { 31 // implicit this() shared 32 } 33 test()34void test() 35 { 36 auto d2 = new Derived2; 37 auto d3 = new shared(Derived3); 38 } 39