https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101715
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Reduced testcase: template <typename g> struct gggg{}; template<class tt> struct ffff { ffff& yyy(ffff&& __str) noexcept((gggg<tt>::value)); ffff& assign(ffff&& __str) noexcept((gggg<tt>::value)); }; template <class tt> ffff<tt>& ffff<tt>::yyy(ffff&& __str) noexcept((gggg<tt>::value)) {}