
Hello, I have the static library with two classes, "base" and "derived". class base { public: base():a(0){}; virtual ~base(){}; private: friend class boost::serialization::access; template<class Archive> void serialize(Archive & ar, const unsigned int version) { ar & a; } private: int a; }; class derived: public base { public: derived():b(0){}; virtual ~derived(){}; private: friend class boost::serialization::access; template<class Archive> void serialize(Archive & ar, const unsigned int version) { ar & boost::serialization::base_object<base>(*this); ar & b; } private: int b; }; This static library is linked to two dynamic libraries. For example, dll_a.dll and dll_b.dll. When I try to load those dlls in my application (via LoadLibrary), I get assert in void_cast.cpp (225): std::pair<void_cast_detail::set_type::const_iterator, bool> result; result = s.insert(this); assert(result.second); Is it by design? Or I missed something? I am using boost v1.43 and VS 10 on Windows 7. Thank you in advance. Alex