id summary reporter owner description type status milestone component version severity resolution keywords cc 10348 Compilation failure in shared_ptr_helper.hpp gary.mirams@… Robert Ramey "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::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::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::reset(SPT&, 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)" Bugs closed Boost 1.57.0 serialization Boost 1.56.0 Problem fixed