
Robert Ramey wrote:
Nicola Musatti wrote: [...]
******Index: iserializer.hpp =================================================================== RCS file: /cvsroot/boost/boost/boost/archive/detail/iserializer.hpp,v retrieving revision 1.30 diff -d -u -r1.30 iserializer.hpp --- iserializer.hpp 12 Feb 2006 05:45:16 -0000 1.30 +++ iserializer.hpp 24 May 2006 21:42:57 -0000 @@ -187,7 +187,7 @@ public: // at least one compiler (CW) seems to require that serialize_adl // be explicitly instantiated. Still under investigation. - #if !defined(__BORLANDC__) + #if ! BOOST_WORKAROUND(__BORLANDC__, < 0x582) void (* const m)(Archive &, T &, const unsigned); boost::serialization::extended_type_info * (* e)(); #endif
This looks OK - I'll check this into RC_1_34 in the next couple of days.
Wait! I just realized that this is not needed and is in fact harmful. The attached patch just substitutes BOOST_WORKAROUND for defined(__BORLANDC__). Cheers, Nicola Musatti ******Index: iserializer.hpp =================================================================== RCS file: /cvsroot/boost/boost/boost/archive/detail/iserializer.hpp,v retrieving revision 1.30 diff -d -u -r1.30 iserializer.hpp --- iserializer.hpp 12 Feb 2006 05:45:16 -0000 1.30 +++ iserializer.hpp 25 May 2006 07:43:24 -0000 @@ -187,7 +187,7 @@ public: // at least one compiler (CW) seems to require that serialize_adl // be explicitly instantiated. Still under investigation. - #if !defined(__BORLANDC__) + #if ! BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x582)) void (* const m)(Archive &, T &, const unsigned); boost::serialization::extended_type_info * (* e)(); #endif @@ -321,7 +321,7 @@ } template<class T, class Archive> -#if !defined(__BORLANDC__) +#if ! BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x582)) BOOST_DLLEXPORT pointer_iserializer<T, Archive>::pointer_iserializer() : archive_pointer_iserializer<Archive>( * boost::serialization::type_info_implementation<T>::type::get_instance()