id summary reporter owner description type status milestone component version severity resolution keywords cc 7301 Inconsistent use of load_/save_override for serialized file signature Paul Barba Robert Ramey "basic_binary_oarchive.ipp::39 writes the file signature like this: * this->This() << file_signature; Which if you're using your own binary_oarchive subclass to do custom serialization, ends up using your save_override(std::string&, int) function to write the signature. However, basic_binary_iarchive.ipp::55 reads the file signature like so: std::size_t l; this->This()->load(l); if(l == std::strlen(BOOST_ARCHIVE_SIGNATURE())) { ... file_signature.resize(l); if(0 < l){ ... this->This()->load_binary(&(*file_signature.begin()), l); } } which does not make use of your load_override(std::string&, int) function. Therefore if you change how strings are written, you get an invalid signature exception on deserialization." Bugs closed To Be Determined serialization Boost 1.51.0 Problem fixed serialization, save_override, file signature