// { dg-do compile { target c++17 } } template struct S { T t; }; template S(U) -> S; struct A { using type = short; operator type(); }; S s{A()}; // OK S x(A()); // { dg-error "return type" }