https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100940
--- Comment #1 from 康桓瑋 <hewillk at gmail dot com> --- It seems that before r12-1184, the solution to PR100577 can be simply to remove const && delete operator(). The reason is that const & and && overloads themselves are constrained, and if _Rhs meets __pipe_invocable<const _Lhs&, const _Rhs&, _Range>, it will also meet __pipe_invocable<const _Lhs&, _Rhs, _Range>, because _Rhs&& can be bound to const _Rhs&.