https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93922
--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Testcase modified to be usable in the testsuite: // PR c++/93922 // { dg-do link { target c++11 } } template <typename T> struct A { A () {} template <typename U> A (A<U> const &) {} ~A () {} }; int t; struct B {}; struct C : B { C (B const &) { if (t) throw 1; } }; struct S { A<B const> x; C y; }; A<B> bar (B *) { return A<B> (); } S * foo (B *x, B const &y) { return new S {bar (x), y}; } int main () { }