Ограниченный набор типов для дефолтных операторов сравнения
Почему для создания дефолтных операторов сравнения можно использовать только (const T&) либо friend (const T&) и friend (T) комбинации параметров https://en.cppreference.com/w/cpp/language/default_comparisons?
Почему нельзя сгенерить операторы с параметрами по значению в случае функции-члена? Почему нельзя сгенерить операторы с неконстантными ссылками, rvalue-ссылками?