Because assignment does not imply that comparison is possible…
Structs are not special in this regard either, you can’t compare unions, or arrays, or slices, or tuples.
Why do you think assignment should imply comparison is possible? Is it because you are thinking about it as a bunch of bytes? Even that doesn’t support comparison on the language level, you have to compare the individual bytes…
Why would be being comprised of bytes imply comparison?
What about the meaning ascribed to those bytes, the actual type not the memory, why can’t that be incomparable even if it is assignable to memory?