1 // PR c++/78771 2 // { dg-do compile { target c++17 } } 3 4 // ICE instantiating a deleted inherited ctor 5 6 struct Base 7 { 8 template <typename U> Base (U); 9 10 Base (int); 11 }; 12 13 struct Derived; 14 15 struct Middle : Base 16 { 17 using Base::Base; 18 19 Middle (Derived); 20 }; 21 22 struct Derived : Middle 23 { 24 using Middle::Middle; 25 }; 26 Middle(Derived)27Middle::Middle (Derived) : Middle (0) {} 28