blob: c12006cab1d5f5d21049fca7a073d8b15d9951c5 [file] [log] [blame]
// 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 ()
{
}