Make comparison operators symmetric
Throw an exception when visiting a moved-from recursive variant