You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The ranges::is_permutation, ranges::unique, ranges::unique_copy algorithm are currently underconstrained, as they do not require supplied functor to model equivalence relation.
Other compare algorithms (like ranges::equal, ranges::mismatch, ranges::search), are overconstrained. They require supplied functor to model relation<T, U> concept instead of predicate<T, U>, where T and U are reference types of supplied ranges. As consequence, supplied functor needs to be callable with four combinations of arguments: (T, U), (U, T), (U, U), (U, U), instead of just (T, U). This makes them less general than existing non-range overloads, and complicates code migration.