[PR c++/84702] ICE with default tmpl arg of overload set
[official-gcc.git] / gcc / testsuite / g++.dg / template / sfinae-dr657.C
blobb78b5a919c174e8df264ab59e1b55c2935ca737d
1 // DR 657
2 // Test that a return or parameter type with abstract class type causes a
3 // deduction failure.
5 struct A
7   A();
8   A(int);
9   virtual void f() = 0;
12 template<class T> T declval();
13 template<class T> int declval(...);
15 template<class T> void arg(T);
16 template<class T> int arg(...);
18 int main()
20   int i = declval<A>();
21   i = arg<A>(1);