aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/cpp1z/class-deduction21.C
blob: e8cd5621a095e7c0a2288057873c6527079aa948 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
// { dg-do compile { target c++17 } }

template<class T, class D = int>
struct S { T t; };
template<class U>
S(U) -> S<typename U::type>;

struct A {
  using type = short;
  operator type();
};
S s{A()};			// OK
S x(A());			// { dg-error "return type" }