diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/overload/ellipsis1.C')
-rw-r--r-- | gcc/testsuite/g++.dg/overload/ellipsis1.C | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/overload/ellipsis1.C b/gcc/testsuite/g++.dg/overload/ellipsis1.C new file mode 100644 index 000000000..3dedaa6be --- /dev/null +++ b/gcc/testsuite/g++.dg/overload/ellipsis1.C @@ -0,0 +1,18 @@ +// PR c++/15142 +// Bug: We were aborting after giving a warning about passing a non-POD. + +struct B { + B() throw() { } + B(const B&) throw() { } +}; + +struct X { + B a; + X& operator=(const X&); +}; + +struct S { S(...); }; + +void SillyFunc() { + throw S(X()); // { dg-error "copy" } +} |