[boost][serialization] polymorphic classes - access violation
Hi, i see an 'access violation' in 'basic_iarchive_impl::load_pointer' at if(! tracking){ bpis_ptr->load_object_ptr(ar, t, co.file_version); } using boost 1.43.0 / msvc 9.0 with the following polymorphic scenario // base class for converters. contains empty serialization class converter; // invokes serialiazation of base through boost::serialization::base_object class int_converter : public converter; // invokes serialization of base and serialization of _converters // using include <boost/serialization/vector.hpp>, <boost/serialization/shared_ptr.hpp> class composite_converter : public converter { private: std::vector< boost::shared_ptr<converter const> > _converters; } Care as been taken that serialization code is generated in exactly one translation unit (BOOST_CLASS_EXPORT_KEY, BOOST_CLASS_EXPORT_IMPLEMENT). It seems that saving works out ok as you can see from the attached xml. Loading is performed through a base pointer to converter. I think a similar issue has already been reportet [1]. Without going into more details, is this issue being worked on/ known or resolved? Should I provide more details? Best regards, Christoph [1] http://permalink.gmane.org/gmane.comp.lib.boost.user/56195
participants (1)
-
Christoph Heindl