https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87480
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |8.3 --- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> --- Slightly further reduced (it happens for any function template, not just constructors): template<typename T> T&& declval(); template <typename T, typename = decltype(declval<T>().d)> void f(T) { } struct A { double d; }; #ifndef FIX template <typename> #endif void j(A& a) { f(a); }