diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/template/new8.C')
-rw-r--r-- | gcc/testsuite/g++.dg/template/new8.C | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/template/new8.C b/gcc/testsuite/g++.dg/template/new8.C new file mode 100644 index 000000000..b8f3f97e6 --- /dev/null +++ b/gcc/testsuite/g++.dg/template/new8.C @@ -0,0 +1,29 @@ +// PR c++/34336 +// { dg-do compile } + +struct A; + +template <class T> +struct S +{ + T *m; + T &operator* () { return *m; } +}; + +struct B +{ + B (const A &); +}; + +template <class T> +struct C +{ + C (); + S<A> c; +}; + +template <class T> +C<T>::C () +{ + B *b = new B (*c); +} |