Subject: [Boost-bugs] [Boost C++ Libraries] #10348: Compilation failure in shared_ptr_helper.hpp
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2014-08-12 13:13:45
#10348: Compilation failure in shared_ptr_helper.hpp
---------------------------+---------------------------
Reporter: gary.mirams@⦠| Owner: ramey
Type: Bugs | Status: new
Milestone: Boost 1.57.0 | Component: serialization
Version: Boost 1.56.0 | Severity: Problem
Keywords: |
---------------------------+---------------------------
As part of the Chaste simulator (https://chaste.cs.ox.ac.uk/trac) we use
boost serialization, and test compatibility with multiple versions of
Boost (1.40-1.55 inclusive).
We tested it out with the new boost 1.56, but got the following compiler
error:
{{{
In file included from
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr.hpp:28,
from linalg/src/LinearSystem.hpp:50,
from ./linalg/test/TestChebyshevIteration.hpp:40,
from
linalg/build/debug_hostconfig,boost=1-56/TestChebyshevIterationRunner.cpp:21:
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:
In static member function static const
boost::serialization::extended_type_info*
boost::serialization::shared_ptr_helper<SPT>::non_polymorphic::get_object_type(U&)':
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:107:
error: 'singleton' is not a member of 'boost::serialization'
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:110:
error: expected '(' before '>' token
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:110:
error: '::get_const_instance' has not been declared
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:
In static member function 'static const
boost::serialization::extended_type_info*
boost::serialization::shared_ptr_helper<SPT>::polymorphic::get_object_type(U&)':
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:117:
error: 'singleton' is not a member of 'boost::serialization'
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:120:
error: expected '(' before '>' token
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:120:
error: '::get_const_instance' has not been declared
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:
In member function 'void
boost::serialization::shared_ptr_helper<SPT>::reset(SPT<T>&, T*)':
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:152:
error: invalid use of incomplete type 'const struct
boost::serialization::extended_type_info'
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:42:
error: forward declaration of 'const struct
boost::serialization::extended_type_info'
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:167:
error: invalid use of incomplete type 'const struct
boost::serialization::extended_type_info'
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:42:
error: forward declaration of 'const struct
boost::serialization::extended_type_info'
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:168:
error: invalid use of incomplete type 'const struct
boost::serialization::extended_type_info'
/home/lofty/boost_1_56/include/boost/serialization/shared_ptr_helper.hpp:42:
error: forward declaration of 'const struct
boost::serialization::extended_type_info'
scons: ***
[linalg/build/debug_hostconfig,boost=1-56/TestChebyshevIterationRunner.o]
Error 1
}}}
I fixed this with two new boost #includes in
`boost/serialization/shared_ptr_helper.hpp`, to include files in the
serialization library that are mentioned in this file, but not #included.
So I've submitted a pull request on github to fix it.
(sorry, trac wouldn't let me create a ticket with links to the pull
request)
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/10348> 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:16 UTC