
"Jeff Flinn" <TriumphSprint2000@hotmail.com> wrote in message news:dcojdu$5r4$1@sea.gmane.org...
"Robert Ramey" <ramey@rrsd.com> wrote in message news:dcob30$c8r$1@sea.gmane.org...
Consider the following:
I presume your going to be loading archives which which were saved with 1.32
a) so this means you should be including BOOST_..._132.hpp so that you can load the old archives.
I'm lucky enough to not need to support 1.32 archives. I was aware of the shared_ptr_132.hpp issue from following the devel list.
b) However, this will save new archives in the new format. The new format doesn't need the BOOST_SHARED_POINTER_EXPORT_GUID . However, the new format will require export of the underlying type - something that BOOST_SHARED_POINTER_EXPORT_GUID did as a side-effect.
Ok, I missed that there was no longer a need for BOOST_SHARED_POINTER_EXPORT_GUID in reading the changes section. Also I never #included boost/serialization/shared_ptr_132.hpp so I'm surprised that I didn't get a compiler error that BOOST_SHARED_POINTER_EXPORT_GUID was not defined. Most likely a VC7.1 oddity/bug.
I changed to BOOST_SHARED_POINTER_EXPORT_GUID(along with a clean build) and
Oops that should read BOOST_CLASS_EXPORT_GUID.
lo-and-behold all works like a charm! In fact I've been able to clean up a lot of kluges required to work around VC7.1 ICE's. I previously had to separate more than 3 exports macro calls into multiple files. Compilation is also much faster.
A very, very nice improvement in serialization, iostreams and all the rest of Boost!
Congratulations and Thanks to all involved!
Jeff