
The hardest part is checking for equality. My proposal is to follow a hash-based approach, which is effective both in terms of complexity and space (one word per tracked object.), ... Admittedly, hash-based checking is not 100% safe, ...
I think this is unacceptable. If I have two objects A and B, and they do happen to hash to the same value, then B won't get saved. However good the hash code is does not matter: this would stop me using the serialization library in anything mission critical. BTW, I've been trying to follow this "serialization and const" discussion but getting lost in places. Are we talking about the same problems I had described here: http://lists.boost.org/boost/2005/04/24700.php As you can see: a) The workaround was easy enough once I knew what the problem was; b) I saw the only solution to be educating library users to be aware of the issues. Darren