Message ID | 20220513234717.1461315-1-polacek@redhat.com |
---|---|
State | New |
Headers | show |
Series | [pushed] c++: Add fixed test [PR81952] | expand |
diff --git a/gcc/testsuite/g++.dg/overload/conv-op4.C b/gcc/testsuite/g++.dg/overload/conv-op4.C new file mode 100644 index 00000000000..80de19549e3 --- /dev/null +++ b/gcc/testsuite/g++.dg/overload/conv-op4.C @@ -0,0 +1,22 @@ +// PR c++/81952 +// { dg-do run { target c++11 } } + +template <class T> +struct opt { + opt() { } + opt(opt const& ) { __builtin_abort (); } + opt(opt&& ) { __builtin_abort (); } + + template <class U> + opt(U&& ) { } +}; + +struct foo +{ + explicit operator opt<int>() { __builtin_abort (); return {}; } +}; + +int main() +{ + opt<int> o(foo{}); +}