: Such an implicitly-declared
== operator for a class
X
is defined as defaulted
in the definition of
X and
has the same
parameter-declaration-clause and
trailing
requires-clause as
the respective three-way comparison operator
. It is declared with
friend,
virtual,
constexpr,
or
consteval if
the three-way comparison operator function is so declared
. If the three-way comparison operator function
has no
noexcept-specifier,
the implicitly-declared
== operator function
has an implicit exception specification (
[except.spec]) that
may differ from the implicit exception specification of
the three-way comparison operator function
. —
end note