
Hi, I'm trying to update a code base to use boost 1.35 from boost 1.32. From what I've gathered, 1.35's code is frozen and considered to be fairly stable, so I figured that I wouldn't run into any errors caused by boost, just general changes that occurred between 1.32 and 1.35. Instead, it looks like I've definitely run into a bug being caused by 1.35, in particular, the serialization headers for shared_ptr. The following code: #include <boost/serialization/shared_ptr_132.hpp> #include <boost/serialization/shared_ptr.hpp> int main() { return 0; } Causes the following errors: g++ what.cc -o what -I /usr/local/include/boost-1_35/ -lboost_serialization-gcc41-mt-1_35 /usr/local/include/boost-1_35/boost/serialization/shared_ptr.hpp: In function ‘void boost::serialization::load(Archive&, boost::shared_ptr<U>&, unsigned int)’: /usr/local/include/boost-1_35/boost/serialization/shared_ptr.hpp:123: error: ‘null_deleter’ is not a member of ‘boost::archive::detail’ /usr/local/include/boost-1_35/boost/serialization/shared_ptr.hpp:123: error: ‘null_deleter’ is not a member of ‘boost::archive::detail’ /usr/local/include/boost-1_35/boost/serialization/shared_ptr.hpp:123: error: template argument 2 is invalid /usr/local/include/boost-1_35/boost/serialization/shared_ptr.hpp:123: error: expected `>' before ‘*’ token /usr/local/include/boost-1_35/boost/serialization/shared_ptr.hpp:123: error: expected `(' before ‘*’ token /usr/local/include/boost-1_35/boost/serialization/shared_ptr.hpp:124: error: expected primary-expression before ‘>’ token Looking at the documentation included with 1.35 says to retain backwards-compatibility for 1.32's shared_ptr by including both headers in the order I have included them, so I'm at a complete loss. I must retain compatibility with shared_ptr from 1.32 since there is a lot of serialized data floating around from 1.32, and its not feasible to find all of it and convert it mechanically. I hope someone can lend a helping hand. Thanks, Clif Houck