Index: boost/serialization/export.hpp =================================================================== --- boost/serialization/export.hpp (revision 50600) +++ boost/serialization/export.hpp (working copy) @@ -146,22 +146,25 @@ } }; -template -class init_guid { - static ::boost::archive::detail::guid_initializer const - & guid_initializer; -}; - } // namespace detail } // namespace archive } // namespace boost #define BOOST_CLASS_EXPORT_GUID(T, K) \ + namespace boost_archive_export_initializer_impl { \ + template \ + struct init_guid; \ + template<> \ + struct init_guid< T > { \ + static ::boost::archive::detail::guid_initializer< T > const \ + & guid_initializer; \ + }; \ ::boost::archive::detail::guid_initializer< T > const & \ - ::boost::archive::detail::init_guid::guid_initializer = \ + init_guid< T >::guid_initializer = \ ::boost::serialization::singleton< \ ::boost::archive::detail::guid_initializer< T > \ >::get_mutable_instance().export_guid(K); \ + } #if BOOST_WORKAROUND(__MWERKS__, BOOST_TESTED_AT(0x3205))