https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120259
--- Comment #1 from Tomasz KamiĆski <tkaminsk at gcc dot gnu.org> --- We should use _Arg&& in is_invokable checks here: ``` template<typename _Res, typename _Callable, typename... _Args> constexpr enable_if_t<is_invocable_r_v<_Res, _Callable, _Args...>, _Res> __invoke_r(_Callable&& __fn, _Args&&... __args) noexcept(is_nothrow_invocable_r_v<_Res, _Callable, _Args...>); ```