18 Concepts library [concepts]

18.5 Comparison concepts [concepts.compare]

18.5.1 General [concepts.compare.general]

Subclause [concepts.compare] describes concepts that establish relationships and orderings on values of possibly differing object types.
Given an expression E and a type C, let CONVERT_TO_LVALUE<C>(E) be:
  • static_cast<const C&>(as_const(E)) if that is a valid expression, and
  • static_cast<const C&>(std​::​move(E)) otherwise.