From 4fff20dff438cea5c7336e034c1850d22cbb19fd Mon Sep 17 00:00:00 2001 From: Robert Ramey Date: Wed, 19 Mar 2014 18:00:55 -0700 Subject: [PATCH] address MSVC shared_ptr helper problem attempt yet again to address MSVC 8.0 issues --- include/boost/archive/basic_binary_iarchive.hpp | 2 +- include/boost/archive/basic_binary_oarchive.hpp | 2 +- include/boost/archive/basic_text_iarchive.hpp | 2 +- include/boost/archive/basic_text_oarchive.hpp | 2 +- include/boost/archive/basic_xml_iarchive.hpp | 2 +- include/boost/archive/basic_xml_oarchive.hpp | 2 +- include/boost/archive/binary_iarchive_impl.hpp | 2 +- include/boost/archive/binary_oarchive_impl.hpp | 2 +- include/boost/archive/text_iarchive.hpp | 2 +- include/boost/archive/text_oarchive.hpp | 2 +- include/boost/archive/text_wiarchive.hpp | 2 +- include/boost/archive/text_woarchive.hpp | 2 +- include/boost/archive/xml_iarchive.hpp | 2 +- include/boost/archive/xml_oarchive.hpp | 2 +- include/boost/archive/xml_wiarchive.hpp | 2 +- include/boost/archive/xml_woarchive.hpp | 2 +- include/boost/serialization/shared_ptr_helper.hpp | 10 +++++----- 17 files changed, 21 insertions(+), 21 deletions(-) diff --git a/include/boost/archive/basic_binary_iarchive.hpp b/include/boost/archive/basic_binary_iarchive.hpp index 06c88827..a649d5e9 100644 --- a/include/boost/archive/basic_binary_iarchive.hpp +++ b/include/boost/archive/basic_binary_iarchive.hpp @@ -58,7 +58,7 @@ class basic_binary_iarchive : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_iarchive; diff --git a/include/boost/archive/basic_binary_oarchive.hpp b/include/boost/archive/basic_binary_oarchive.hpp index e96c4797..f8b53e9d 100644 --- a/include/boost/archive/basic_binary_oarchive.hpp +++ b/include/boost/archive/basic_binary_oarchive.hpp @@ -66,7 +66,7 @@ class basic_binary_oarchive : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_oarchive; diff --git a/include/boost/archive/basic_text_iarchive.hpp b/include/boost/archive/basic_text_iarchive.hpp index d43762cb..0e78ff6d 100644 --- a/include/boost/archive/basic_text_iarchive.hpp +++ b/include/boost/archive/basic_text_iarchive.hpp @@ -54,7 +54,7 @@ class basic_text_iarchive : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_iarchive; diff --git a/include/boost/archive/basic_text_oarchive.hpp b/include/boost/archive/basic_text_oarchive.hpp index e56fe03d..bed9cd34 100644 --- a/include/boost/archive/basic_text_oarchive.hpp +++ b/include/boost/archive/basic_text_oarchive.hpp @@ -56,7 +56,7 @@ class basic_text_oarchive : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_oarchive; diff --git a/include/boost/archive/basic_xml_iarchive.hpp b/include/boost/archive/basic_xml_iarchive.hpp index 59462f54..5047fef2 100644 --- a/include/boost/archive/basic_xml_iarchive.hpp +++ b/include/boost/archive/basic_xml_iarchive.hpp @@ -51,7 +51,7 @@ class basic_xml_iarchive : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_iarchive; diff --git a/include/boost/archive/basic_xml_oarchive.hpp b/include/boost/archive/basic_xml_oarchive.hpp index c6a9acbd..c986833c 100644 --- a/include/boost/archive/basic_xml_oarchive.hpp +++ b/include/boost/archive/basic_xml_oarchive.hpp @@ -51,7 +51,7 @@ public: #else protected: #endif -#if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) +#if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_oarchive; diff --git a/include/boost/archive/binary_iarchive_impl.hpp b/include/boost/archive/binary_iarchive_impl.hpp index 35aef226..a9afe616 100644 --- a/include/boost/archive/binary_iarchive_impl.hpp +++ b/include/boost/archive/binary_iarchive_impl.hpp @@ -42,7 +42,7 @@ class binary_iarchive_impl : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_iarchive; diff --git a/include/boost/archive/binary_oarchive_impl.hpp b/include/boost/archive/binary_oarchive_impl.hpp index d7e1bc17..a8c97333 100644 --- a/include/boost/archive/binary_oarchive_impl.hpp +++ b/include/boost/archive/binary_oarchive_impl.hpp @@ -43,7 +43,7 @@ class binary_oarchive_impl : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_oarchive; diff --git a/include/boost/archive/text_iarchive.hpp b/include/boost/archive/text_iarchive.hpp index d426b7d3..1fd0f608 100644 --- a/include/boost/archive/text_iarchive.hpp +++ b/include/boost/archive/text_iarchive.hpp @@ -48,7 +48,7 @@ class text_iarchive_impl : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_iarchive; diff --git a/include/boost/archive/text_oarchive.hpp b/include/boost/archive/text_oarchive.hpp index b35c195e..9fd63a9b 100644 --- a/include/boost/archive/text_oarchive.hpp +++ b/include/boost/archive/text_oarchive.hpp @@ -55,7 +55,7 @@ class text_oarchive_impl : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_oarchive; diff --git a/include/boost/archive/text_wiarchive.hpp b/include/boost/archive/text_wiarchive.hpp index 77ee306a..5105d351 100644 --- a/include/boost/archive/text_wiarchive.hpp +++ b/include/boost/archive/text_wiarchive.hpp @@ -52,7 +52,7 @@ class text_wiarchive_impl : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_iarchive; diff --git a/include/boost/archive/text_woarchive.hpp b/include/boost/archive/text_woarchive.hpp index a7cad02b..2f75204d 100644 --- a/include/boost/archive/text_woarchive.hpp +++ b/include/boost/archive/text_woarchive.hpp @@ -60,7 +60,7 @@ class text_woarchive_impl : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_oarchive; diff --git a/include/boost/archive/xml_iarchive.hpp b/include/boost/archive/xml_iarchive.hpp index f928bbee..ba50d7cc 100644 --- a/include/boost/archive/xml_iarchive.hpp +++ b/include/boost/archive/xml_iarchive.hpp @@ -52,7 +52,7 @@ class xml_iarchive_impl : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_iarchive; diff --git a/include/boost/archive/xml_oarchive.hpp b/include/boost/archive/xml_oarchive.hpp index 8bb70a5e..2ac4ae1d 100644 --- a/include/boost/archive/xml_oarchive.hpp +++ b/include/boost/archive/xml_oarchive.hpp @@ -55,7 +55,7 @@ class xml_oarchive_impl : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_oarchive; diff --git a/include/boost/archive/xml_wiarchive.hpp b/include/boost/archive/xml_wiarchive.hpp index e0e088d9..31aff88a 100644 --- a/include/boost/archive/xml_wiarchive.hpp +++ b/include/boost/archive/xml_wiarchive.hpp @@ -57,7 +57,7 @@ class xml_wiarchive_impl : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_iarchive; diff --git a/include/boost/archive/xml_woarchive.hpp b/include/boost/archive/xml_woarchive.hpp index 79500f38..7fcaeb96 100644 --- a/include/boost/archive/xml_woarchive.hpp +++ b/include/boost/archive/xml_woarchive.hpp @@ -59,7 +59,7 @@ class xml_woarchive_impl : public: #else protected: - #if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) + #if BOOST_WORKAROUND(BOOST_MSVC, < 1500) // for some inexplicable reason insertion of "class" generates compile erro // on msvc 7.1 friend detail::interface_oarchive; diff --git a/include/boost/serialization/shared_ptr_helper.hpp b/include/boost/serialization/shared_ptr_helper.hpp index 7c94ff2a..6cfcf273 100644 --- a/include/boost/serialization/shared_ptr_helper.hpp +++ b/include/boost/serialization/shared_ptr_helper.hpp @@ -89,7 +89,7 @@ class shared_ptr_helper { } #endif -#ifdef BOOST_NO_MEMBER_TEMPLATE_FRIENDS +#if defined(BOOST_NO_MEMBER_TEMPLATE_FRIENDS) || defined(BOOST_MSVC) public: #else template @@ -99,8 +99,8 @@ public: const unsigned int file_version ); #endif - template struct non_polymorphic { + template static const boost::serialization::extended_type_info * get_object_type(U & ){ return & boost::serialization::singleton< @@ -109,8 +109,8 @@ public: >::get_const_instance(); } }; - template struct polymorphic { + template static const boost::serialization::extended_type_info * get_object_type(U & u){ return boost::serialization::singleton< @@ -135,8 +135,8 @@ public: // the object type identifer typedef BOOST_DEDUCED_TYPENAME mpl::if_< is_polymorphic< T >, - polymorphic, - non_polymorphic + polymorphic, + non_polymorphic >::type type; const boost::serialization::extended_type_info * true_type