OK
Try the following:
//BOOST_CLASS_EXPORT(base);
BOOST_CLASS_EXPORT(derived);
#include
-----Original Message----- From: boost-users-bounces@lists.boost.org [mailto:boost-users-bounces@lists.boost.org] On Behalf Of Robert Ramey Sent: Tuesday, March 27, 2007 2:39 PM To: boost-users@lists.boost.org Subject: Re: [Boost-users] [serialization] Assertion `new_cid ==cid'failed-fails on gcc, works on msvc
Note that serialize a poly morphic shared pointer requires a little bit of gymnastics. Check out the "test_shared_ptr" and the source of serialization/shared_ptr.hpp
I think I've followed the documentation, but the attached test still triggers an assertion when deserializing on gcc 3.2.2:
$ ./build/stage/bin/test_serialize Serialized form: 22 serialization::archive 3 0 1 2 7 derived 1 0 0 1 0 1 10 derived id test_serialize: basic_iarchive.cpp:466: const boost::archive::detail::basic_pointer_iserializer* boost::archive::detail::basic_iarchive_impl::load_pointer(boost::archive
detail::basic_iarchive&, void*&, const boost::archive::detail::basic_pointer_iserializer*, const boost::archive::detail::basic_pointer_iserializer*(*)(const boost::serialization::extended_type_info&)): Assertion `new_cid == cid' failed. Aborted
This assertion does not trigger occur on Visual C++ 7.1. Can you spot if I'm doing something obviously silly?
TIA,
Sohail
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users