From: "David Abrahams" <[EMAIL PROTECTED]> [...] > * Is it important to allow all UDTs to be separately versioned?
Yes, IMO. > Every time I have implemented serialization and started with such > a system, I eventually dropped it in favor of a whole-archive > version number. FWIW, I just went from a per-archive to per-class versioning. Per-archive versioning works well for projects where you control the classes being serialized. When you mix third-party classes lib1::X and lib2::Y, getting the two libraries to agree on a common versioning scheme is impossible; therefore, a standard serialization library has to support at least per-class versioning. > Two areas that spring to mind are pointer comparisons outside a > single array for unserializing internal object pointers, and the > use of type_info::name() for type identification. Using type_info::name() means that when you recompile your program with another compiler, or a newer version of the same compiler, it might no longer be able to read its files. _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost