Return the result of t1 <=> t2 expression if this expression is valid. Otherwise, if t1 < t2 and t2 < t1 expressions are well-formed and return boolean-testable results, use the < operator to emulate <=>. Otherwise this function is not defined and does not participate in overload resolution. Note that this is an implementation of the exposition-only callable object synth-three-way defined by the ISO C++20 Standard [expos.only.entity].