summaryrefslogtreecommitdiff
path: root/boost/serialization/detail/shared_ptr_132.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'boost/serialization/detail/shared_ptr_132.hpp')
-rw-r--r--boost/serialization/detail/shared_ptr_132.hpp32
1 files changed, 2 insertions, 30 deletions
diff --git a/boost/serialization/detail/shared_ptr_132.hpp b/boost/serialization/detail/shared_ptr_132.hpp
index b5f2b21563..969b53a77b 100644
--- a/boost/serialization/detail/shared_ptr_132.hpp
+++ b/boost/serialization/detail/shared_ptr_132.hpp
@@ -114,7 +114,7 @@ public:
typedef T element_type;
typedef T value_type;
typedef T * pointer;
- typedef BOOST_DEDUCED_TYPENAME detail::shared_ptr_traits< T >::reference reference;
+ typedef typename detail::shared_ptr_traits< T >::reference reference;
shared_ptr(): px(0), pn() // never throws in 1.30+
{
@@ -353,17 +353,6 @@ template<class T, class U> inline bool operator!=(shared_ptr< T > const & a, sha
return a.get() != b.get();
}
-#if __GNUC__ == 2 && __GNUC_MINOR__ <= 96
-
-// Resolve the ambiguity between our op!= and the one in rel_ops
-
-template<class T> inline bool operator!=(shared_ptr< T > const & a, shared_ptr< T > const & b)
-{
- return a.get() != b.get();
-}
-
-#endif
-
template<class T, class U> inline bool operator<(shared_ptr< T > const & a, shared_ptr<U> const & b)
{
return a._internal_less(b);
@@ -421,33 +410,16 @@ template<class T> inline T * get_pointer(shared_ptr< T > const & p)
// operator<<
-#if defined(__GNUC__) && (__GNUC__ < 3)
-template<class Y> std::ostream & operator<< (std::ostream & os, shared_ptr<Y> const & p)
-{
- os << p.get();
- return os;
-}
-
-#else
-
-# if defined(BOOST_MSVC) && BOOST_WORKAROUND(BOOST_MSVC, <= 1200 && __SGI_STL_PORT)
-// MSVC6 has problems finding std::basic_ostream through the using declaration in namespace _STL
-using std::basic_ostream;
-template<class E, class T, class Y> basic_ostream<E, T> & operator<< (basic_ostream<E, T> & os, shared_ptr<Y> const & p)
-# else
template<class E, class T, class Y> std::basic_ostream<E, T> & operator<< (std::basic_ostream<E, T> & os, shared_ptr<Y> const & p)
-# endif
{
os << p.get();
return os;
}
-#endif
-
// get_deleter (experimental)
-#if (defined(__GNUC__) && (__GNUC__ < 3)) || (defined(__EDG_VERSION__) && (__EDG_VERSION__ <= 238))
+#if defined(__EDG_VERSION__) && (__EDG_VERSION__ <= 238)
// g++ 2.9x doesn't allow static_cast<X const *>(void *)
// apparently EDG 2.38 also doesn't accept it