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...>);
```
