Subject: Re: [Boost-bugs] [Boost C++ Libraries] #10727: polymorphic serialization of shared_ptr fails
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2015-10-06 16:50:13
#10727: polymorphic serialization of shared_ptr fails
-------------------------------+---------------------------
Reporter: oswin.krause@⦠| Owner: ramey
Type: Bugs | Status: reopened
Milestone: To Be Determined | Component: serialization
Version: Boost 1.58.0 | Severity: Regression
Resolution: | Keywords:
-------------------------------+---------------------------
Comment (by marco.craveiro@â¦):
Hi,
I've upgraded from boost 1.55 to boost 1.58 in debian testing; my code[1]
compiles successfully with 1.55[2] but now fails with 1.58. Are there any
changes required when moving to boost 1.58 from a serialisation
perspective? An example of a file not compiling is [3], with the error:
/usr/include/boost/archive/detail/iserializer.hpp:462:28: required from
âstatic void
boost::archive::detail::load_non_pointer_type<Archive>::invoke(Archive&,
T&) [with T = std::vector<boost::shared_ptr<dogen::dia::attribute> >;
Archive = boost::archive::polymorphic_iarchive]â
/usr/include/boost/archive/detail/iserializer.hpp:618:24: required from
âvoid boost::archive::load(Archive&, T&) [with Archive =
boost::archive::polymorphic_iarchive; T =
std::vector<boost::shared_ptr<dogen::dia::attribute> >]â
/usr/include/boost/archive/polymorphic_iarchive.hpp:119:48: required
from âvoid boost::archive::polymorphic_iarchive_impl::load_override(const
boost::serialization::nvp<T>&, int) [with T =
std::vector<boost::shared_ptr<dogen::dia::attribute> >]â
/usr/include/boost/archive/detail/interface_iarchive.hpp:60:9: required
from âArchive&
boost::archive::detail::interface_iarchive<Archive>::operator>>(T&) [with
T = const
boost::serialization::nvp<std::vector<boost::shared_ptr<dogen::dia::attribute>
> >; Archive = boost::archive::polymorphic_iarchive]â
../../../projects/dia/src/serialization/composite_ser.cpp:53:8: required
from âvoid boost::serialization::load(Archive&, dogen::dia::composite&,
unsigned int) [with Archive = boost::archive::polymorphic_iarchive]â
../../../projects/dia/src/serialization/composite_ser.cpp:63:101:
required from here
/usr/include/boost/serialization/shared_ptr.hpp:170:9: error: âclass
boost::archive::polymorphic_iarchiveâ has no member named âget_helperâ
ninja: build stopped: subcommand failed.
Many thanks for your time and for boost serialisation.
Marco
note: pls add protocol as required, blocked by track for some reason.
[1] github.com/DomainDrivenConsulting/dogen
[2] travis-ci.org/DomainDrivenConsulting/dogen/builds
[3]
github.com/DomainDrivenConsulting/dogen/blob/master/projects/dia/src/serialization/composite_ser.cpp
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/10727#comment:13> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:19 UTC