$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r85922 - in trunk/boost/python: . converter detail object suite/indexing
From: steveire_at_[hidden]
Date: 2013-09-25 17:17:17
Author: skelly
Date: 2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)
New Revision: 85922
URL: http://svn.boost.org/trac/boost/changeset/85922
Log:
Python: Clean up some old MSVC related code.
Text files modified: 
   trunk/boost/python/class.hpp                         |    42 ----------------------------------      
   trunk/boost/python/converter/arg_from_python.hpp     |     4 +-                                      
   trunk/boost/python/converter/arg_to_python_base.hpp  |     8 ------                                  
   trunk/boost/python/data_members.hpp                  |     4 +-                                      
   trunk/boost/python/detail/config.hpp                 |     3 --                                      
   trunk/boost/python/detail/construct.hpp              |     8 -----                                   
   trunk/boost/python/detail/destroy.hpp                |    49 ++------------------------------------- 
   trunk/boost/python/detail/enable_if.hpp              |    35 ---------------------------             
   trunk/boost/python/detail/force_instantiate.hpp      |    14 -----------                             
   trunk/boost/python/detail/if_else.hpp                |    39 +------------------------------         
   trunk/boost/python/detail/result.hpp                 |     4 --                                      
   trunk/boost/python/extract.hpp                       |     3 -                                       
   trunk/boost/python/handle.hpp                        |     4 ---                                     
   trunk/boost/python/make_constructor.hpp              |     9 -------                                 
   trunk/boost/python/object/class_metadata.hpp         |     4 ---                                     
   trunk/boost/python/object/forward.hpp                |    18 -------------                           
   trunk/boost/python/opaque_pointer_converter.hpp      |     8 ------                                  
   trunk/boost/python/other.hpp                         |     4 --                                      
   trunk/boost/python/proxy.hpp                         |     4 ---                                     
   trunk/boost/python/ptr.hpp                           |     4 --                                      
   trunk/boost/python/suite/indexing/indexing_suite.hpp |     4 ---                                     
   trunk/boost/python/to_python_converter.hpp           |     5 ----                                    
   trunk/boost/python/type_id.hpp                       |     8 +----                                   
   trunk/boost/python/with_custodian_and_ward.hpp       |     4 ---                                     
   24 files changed, 18 insertions(+), 271 deletions(-)
Modified: trunk/boost/python/class.hpp
==============================================================================
--- trunk/boost/python/class.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/class.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -302,7 +302,6 @@
     }
 
     // Property creation
-# if !BOOST_WORKAROUND(BOOST_MSVC, <= 1300)
     template <class Get>
     self& add_property(char const* name, Get fget, char const* docstr = 0)
     {
@@ -317,47 +316,6 @@
             name, this->make_getter(fget), this->make_setter(fset), docstr);
         return *this;
     }
-# else
- private:
-    template <class Get>
-    self& add_property_impl(char const* name, Get fget, char const* docstr, int)
-    {
-        base::add_property(name, this->make_getter(fget), docstr);
-        return *this;
-    }
-
-    template <class Get, class Set>
-    self& add_property_impl(char const* name, Get fget, Set fset, ...)
-    {
-        base::add_property(
-            name, this->make_getter(fget), this->make_setter(fset), 0);
-        return *this;
-    }
-
- public:    
-    template <class Get>
-    self& add_property(char const* name, Get fget)
-    {
-        base::add_property(name, this->make_getter(fget), 0);
-        return *this;
-    }
-
-    template <class Get, class DocStrOrSet>
-    self& add_property(char const* name, Get fget, DocStrOrSet docstr_or_set)
-    {
-        this->add_property_impl(name, this->make_getter(fget), docstr_or_set, 0);
-        return *this;
-    }
-
-    template <class Get, class Set>
-    self&
-    add_property(char const* name, Get fget, Set fset, char const* docstr)
-    {
-        base::add_property(
-            name, this->make_getter(fget), this->make_setter(fset), docstr);
-        return *this;
-    }
-# endif
         
     template <class Get>
     self& add_static_property(char const* name, Get fget)
Modified: trunk/boost/python/converter/arg_from_python.hpp
==============================================================================
--- trunk/boost/python/converter/arg_from_python.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/converter/arg_from_python.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -115,9 +115,9 @@
     arg_rvalue_from_python(PyObject*);
     bool convertible() const;
 
-# if BOOST_MSVC < 1301 || _MSC_FULL_VER > 13102196
+# if _MSC_FULL_VER > 13102196
     typename arg_rvalue_from_python<T>::
-# endif 
+# endif
     result_type operator()();
     
  private:
Modified: trunk/boost/python/converter/arg_to_python_base.hpp
==============================================================================
--- trunk/boost/python/converter/arg_to_python_base.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/converter/arg_to_python_base.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -13,17 +13,9 @@
 namespace detail
 {
   struct BOOST_PYTHON_DECL arg_to_python_base
-# if !defined(BOOST_MSVC) || BOOST_MSVC <= 1300 || _MSC_FULL_VER > 13102179
       : handle<>
-# endif 
   {
       arg_to_python_base(void const volatile* source, registration const&);
-# if defined(BOOST_MSVC) && BOOST_MSVC > 1300 && _MSC_FULL_VER <= 13102179
-      PyObject* get() const { return m_ptr.get(); }
-      PyObject* release() { return m_ptr.release(); }
-   private:
-      handle<> m_ptr;
-# endif 
   };
 }
 
Modified: trunk/boost/python/data_members.hpp
==============================================================================
--- trunk/boost/python/data_members.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/data_members.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -270,7 +270,7 @@
     return detail::make_getter(x, policy, is_member_pointer<D>(), 0L);
 }
 
-#  if !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) && !BOOST_WORKAROUND(BOOST_MSVC, <= 1300)
+#  if !BOOST_WORKAROUND(__EDG_VERSION__, <= 238)
 template <class D>
 inline object make_getter(D const& d)
 {
@@ -305,7 +305,7 @@
     return detail::make_setter(x, default_call_policies(), is_member_pointer<D>(), 0);
 }
 
-# if !(BOOST_WORKAROUND(BOOST_MSVC, <= 1300) || BOOST_WORKAROUND(__EDG_VERSION__, <= 238))
+# if BOOST_WORKAROUND(__EDG_VERSION__, <= 238))
 template <class D>
 inline object make_setter(D const& x)
 {
Modified: trunk/boost/python/detail/config.hpp
==============================================================================
--- trunk/boost/python/detail/config.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/detail/config.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -29,9 +29,6 @@
 # endif
 
 # if defined(BOOST_MSVC)
-#  if _MSC_VER < 1300
-#   define BOOST_MSVC6_OR_EARLIER 1
-#  endif
 
 #  pragma warning (disable : 4786) // disable truncated debug symbols
 #  pragma warning (disable : 4251) // disable exported dll function
Modified: trunk/boost/python/detail/construct.hpp
==============================================================================
--- trunk/boost/python/detail/construct.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/detail/construct.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -8,13 +8,7 @@
 namespace boost { namespace python { namespace detail { 
 
 template <class T, class Arg>
-void construct_pointee(void* storage, Arg& x
-# if !defined(BOOST_MSVC) || BOOST_MSVC > 1300
-                       , T const volatile*
-# else 
-                       , T const*
-# endif 
-    )
+void construct_pointee(void* storage, Arg& x, T const volatile*)
 {
     new (storage) T(x);
 }
Modified: trunk/boost/python/detail/destroy.hpp
==============================================================================
--- trunk/boost/python/detail/destroy.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/detail/destroy.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -7,25 +7,12 @@
 
 # include <boost/type_traits/is_array.hpp>
 # include <boost/detail/workaround.hpp>
-# if BOOST_WORKAROUND(BOOST_MSVC, == 1300)
-#  include <boost/type_traits/is_enum.hpp>
-# endif 
 namespace boost { namespace python { namespace detail { 
 
-template <
-    bool array
-# if BOOST_WORKAROUND(BOOST_MSVC, == 1300)
-  , bool enum_  // vc7 has a problem destroying enums
-# endif 
-    > struct value_destroyer;
+template <bool array> struct value_destroyer;
     
 template <>
-struct value_destroyer<
-    false
-# if BOOST_WORKAROUND(BOOST_MSVC, == 1300)
-  , false
-# endif 
-    >
+struct value_destroyer<false>
 {
     template <class T>
     static void execute(T const volatile* p)
@@ -35,12 +22,7 @@
 };
 
 template <>
-struct value_destroyer<
-    true
-# if BOOST_WORKAROUND(BOOST_MSVC, == 1300)
-  , false
-# endif 
-    >
+struct value_destroyer<true>
 {
     template <class A, class T>
     static void execute(A*, T const volatile* const first)
@@ -49,9 +31,6 @@
         {
             value_destroyer<
                 boost::is_array<T>::value
-# if BOOST_WORKAROUND(BOOST_MSVC, == 1300)
-              , boost::is_enum<T>::value
-# endif 
             >::execute(p);
         }
     }
@@ -63,25 +42,6 @@
     }
 };
 
-# if BOOST_WORKAROUND(BOOST_MSVC, == 1300)
-template <>
-struct value_destroyer<true,true>
-{
-    template <class T>
-    static void execute(T const volatile*)
-    {
-    }
-};
-
-template <>
-struct value_destroyer<false,true>
-{
-    template <class T>
-    static void execute(T const volatile*)
-    {
-    }
-};
-# endif 
 template <class T>
 inline void destroy_referent_impl(void* p, T& (*)())
 {
@@ -89,9 +49,6 @@
     // must come *before* T for metrowerks
     value_destroyer<
          (boost::is_array<T>::value)
-# if BOOST_WORKAROUND(BOOST_MSVC, == 1300)
-       , (boost::is_enum<T>::value)
-# endif 
     >::execute((const volatile T*)p);
 }
 
Modified: trunk/boost/python/detail/enable_if.hpp
==============================================================================
--- trunk/boost/python/detail/enable_if.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/detail/enable_if.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -7,40 +7,7 @@
 # include <boost/python/detail/sfinae.hpp>
 # include <boost/detail/workaround.hpp>
 
-# if BOOST_WORKAROUND(BOOST_MSVC, <= 1300)
-#  include <boost/mpl/if.hpp>
-
-namespace boost { namespace python { namespace detail { 
-
-template <class T> struct always_void { typedef void type; };
-
-template <class C, class T = int>
-struct enable_if_arg
-{
-    typedef typename mpl::if_<C,T,int&>::type type;
-};
-             
-template <class C, class T = int>
-struct disable_if_arg
-{
-    typedef typename mpl::if_<C,int&,T>::type type;
-};
-             
-template <class C, class T = typename always_void<C>::type>
-struct enable_if_ret
-{
-    typedef typename mpl::if_<C,T,int[2]>::type type;
-};
-             
-template <class C, class T = typename always_void<C>::type>
-struct disable_if_ret
-{
-    typedef typename mpl::if_<C,int[2],T>::type type;
-};
-             
-}}} // namespace boost::python::detail
-
-# elif !defined(BOOST_NO_SFINAE)
+#if !defined(BOOST_NO_SFINAE)
 #  include <boost/utility/enable_if.hpp>
 
 namespace boost { namespace python { namespace detail { 
Modified: trunk/boost/python/detail/force_instantiate.hpp
==============================================================================
--- trunk/boost/python/detail/force_instantiate.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/detail/force_instantiate.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -10,23 +10,9 @@
 // Allows us to force the argument to be instantiated without
 // incurring unused variable warnings
 
-# if !defined(BOOST_MSVC) || BOOST_MSVC < 1300 || _MSC_FULL_VER > 13102196
-
 template <class T>
 inline void force_instantiate(T const&) {}
 
-# else
-
-#  pragma optimize("g", off)
-inline void force_instantiate_impl(...) {}
-#  pragma optimize("", on)
-template <class T>
-inline void force_instantiate(T const& x)
-{
-    detail::force_instantiate_impl(&x);
-}
-# endif
-
 }}} // namespace boost::python::detail
 
 #endif // FORCE_INSTANTIATE_DWA200265_HPP
Modified: trunk/boost/python/detail/if_else.hpp
==============================================================================
--- trunk/boost/python/detail/if_else.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/detail/if_else.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -25,46 +25,11 @@
     };
 };
 
-# if defined(BOOST_MSVC) && (BOOST_MSVC == 1300)
-namespace msvc70_aux {
-
-template< bool > struct inherit_from
-{
-    template< typename T > struct result
-    {
-        typedef T type;
-    };
-};
-
-template<> struct inherit_from<true>
-{
-    template< typename T > struct result
-    {
-        struct type {};
-    };
-};
-
-template< typename T >
-struct never_true
-{
-    BOOST_STATIC_CONSTANT(bool, value = false);
-};
-
-} // namespace msvc70_aux
-
-#endif // # if defined(BOOST_MSVC) && (BOOST_MSVC == 1300)
-
 template <class T>
 struct elif_selected
 {
-# if !(defined(BOOST_MSVC) && BOOST_MSVC <= 1300 || defined(__MWERKS__) && __MWERKS__ <= 0x2407)
+# if !(defined(__MWERKS__) && __MWERKS__ <= 0x2407)
     template <class U> class then;
-# elif defined(BOOST_MSVC) && (BOOST_MSVC == 1300)
-    template <class U>
-    struct then : msvc70_aux::inherit_from< msvc70_aux::never_true<U>::value >
-        ::template result< if_selected<T> >::type
-    {
-    };
 # else
     template <class U>
     struct then : if_selected<T>
@@ -73,7 +38,7 @@
 # endif 
 };
 
-# if !(defined(BOOST_MSVC) && BOOST_MSVC <= 1300 || defined(__MWERKS__) && __MWERKS__ <= 0x2407)
+# if !(defined(__MWERKS__) && __MWERKS__ <= 0x2407)
 template <class T>
 template <class U>
 class elif_selected<T>::then : public if_selected<T>
Modified: trunk/boost/python/detail/result.hpp
==============================================================================
--- trunk/boost/python/detail/result.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/detail/result.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -43,9 +43,7 @@
 template <class R, class T>
 boost::type<R>* result(R (T::*), int = 0) { return 0; }
 
-#  if (defined(BOOST_MSVC) && _MSC_FULL_VER <= 13102140)  \
-   || (defined(__GNUC__) && __GNUC__ < 3)                 \
-   || (defined(__MWERKS__) && __MWERKS__ < 0x3000)
+#  if (defined(__MWERKS__) && __MWERKS__ < 0x3000)
 // This code actually works on all implementations, but why use it when we don't have to?
 template <class T>
 struct get_result_type
Modified: trunk/boost/python/extract.hpp
==============================================================================
--- trunk/boost/python/extract.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/extract.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -21,8 +21,7 @@
 # include <boost/python/detail/void_return.hpp>
 # include <boost/call_traits.hpp>
 
-#if BOOST_WORKAROUND(BOOST_MSVC, <= 1300) || BOOST_WORKAROUND(BOOST_INTEL_WIN, <= 900)
-// workaround for VC++ 6.x or 7.0
+#if BOOST_WORKAROUND(BOOST_INTEL_WIN, <= 900)
 # define BOOST_EXTRACT_WORKAROUND ()
 #else
 # define BOOST_EXTRACT_WORKAROUND
Modified: trunk/boost/python/handle.hpp
==============================================================================
--- trunk/boost/python/handle.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/handle.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -87,8 +87,6 @@
         return *this;
     }
 
-#if !defined(BOOST_MSVC) || (BOOST_MSVC >= 1300)
-
     template<typename Y>
     handle& operator=(handle<Y> const & r) // never throws
     {
@@ -97,8 +95,6 @@
         return *this;
     }
 
-#endif
-
     template <typename Y>
     handle(handle<Y> const& r)
         : m_p(python::xincref(python::upcast<T>(r.get())))
Modified: trunk/boost/python/make_constructor.hpp
==============================================================================
--- trunk/boost/python/make_constructor.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/make_constructor.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -104,14 +104,6 @@
       
       // If the BasePolicy_ supplied a result converter it would be
       // ignored; issue an error if it's not the default.
-#if defined _MSC_VER && _MSC_VER < 1300
-      typedef is_same<
-              typename BasePolicy_::result_converter
-            , default_result_converter
-          > same_result_converter;
-      //see above for explanation
-      BOOST_STATIC_ASSERT(same_result_converter::value) ;
-#else
       BOOST_MPL_ASSERT_MSG(
          (is_same<
               typename BasePolicy_::result_converter
@@ -120,7 +112,6 @@
         , MAKE_CONSTRUCTOR_SUPPLIES_ITS_OWN_RESULT_CONVERTER_THAT_WOULD_OVERRIDE_YOURS
         , (typename BasePolicy_::result_converter)
       );
-#endif
       typedef constructor_result_converter result_converter;
       typedef offset_args<typename BasePolicy_::argument_package, mpl::int_<1> > argument_package;
   };
Modified: trunk/boost/python/object/class_metadata.hpp
==============================================================================
--- trunk/boost/python/object/class_metadata.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/object/class_metadata.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -53,11 +53,7 @@
     template <class Base>
     inline void operator()(Base*) const
     {
-# if !BOOST_WORKAROUND(BOOST_MSVC, == 1200)
         BOOST_MPL_ASSERT_NOT((is_same<Base,Derived>));
-# else
-        BOOST_STATIC_ASSERT(!(is_same<Base,Derived>::value));
-# endif 
         
         // Register the Base class
         register_dynamic_id<Base>();
Modified: trunk/boost/python/object/forward.hpp
==============================================================================
--- trunk/boost/python/object/forward.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/object/forward.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -12,13 +12,7 @@
 # include <boost/ref.hpp>
 # include <boost/python/detail/value_arg.hpp>
 # include <boost/python/detail/copy_ctor_mutates_rhs.hpp>
-# if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
-#  include <boost/type_traits/is_enum.hpp>
-#  include <boost/mpl/and.hpp>
-#  include <boost/mpl/not.hpp>
-# else
-#  include <boost/mpl/or.hpp>
-# endif 
+# include <boost/mpl/or.hpp>
 
 namespace boost { namespace python { namespace objects { 
 
@@ -42,17 +36,7 @@
 template <class T>
 struct forward
     : mpl::if_<
-# if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
-          // vc6 chokes on unforwarding enums nested in classes
-          mpl::and_<
-              is_scalar<T>
-            , mpl::not_< 
-                  is_enum<T>
-              >
-          >
-# else 
           mpl::or_<python::detail::copy_ctor_mutates_rhs<T>, is_scalar<T> >
-# endif 
         , T
         , reference_to_value<T>
       >
Modified: trunk/boost/python/opaque_pointer_converter.hpp
==============================================================================
--- trunk/boost/python/opaque_pointer_converter.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/opaque_pointer_converter.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -172,12 +172,6 @@
 };
 }} // namespace boost::python
 
-#  if BOOST_WORKAROUND(BOOST_MSVC, <= 1300)
-
-#  define BOOST_PYTHON_OPAQUE_SPECIALIZED_TYPE_ID(Pointee)
-
-#  else
-
 // If you change the below, don't forget to alter the end of type_id.hpp
 #   define BOOST_PYTHON_OPAQUE_SPECIALIZED_TYPE_ID(Pointee)                     \
     namespace boost { namespace python {                                        \
@@ -193,6 +187,4 @@
     }                                                                           \
     }}
 
-#  endif
-
 # endif    // OPAQUE_POINTER_CONVERTER_HPP_
Modified: trunk/boost/python/other.hpp
==============================================================================
--- trunk/boost/python/other.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/other.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -7,9 +7,7 @@
 // accompanying file LICENSE_1_0.txt or copy at
 // http://www.boost.org/LICENSE_1_0.txt)
 
-# if _MSC_VER+0 >= 1020
-#  pragma once
-# endif
+# pragma once
 
 # include <boost/config.hpp>
 
Modified: trunk/boost/python/proxy.hpp
==============================================================================
--- trunk/boost/python/proxy.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/proxy.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -15,11 +15,7 @@
 {
     typedef typename Policies::key_type key_type;
     
-# if !defined(BOOST_MSVC) || BOOST_MSVC >= 1300
     typedef proxy const& assignment_self;
-# else
-    typedef proxy assignment_self;
-# endif
  public:
     proxy(object const& target, key_type const& key);
     operator object() const;
Modified: trunk/boost/python/ptr.hpp
==============================================================================
--- trunk/boost/python/ptr.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/ptr.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -11,9 +11,7 @@
 //  Copyright (C) 1999, 2000 Jaakko Jarvi (jaakko.jarvi_at_[hidden])
 //  Copyright (C) 2001 Peter Dimov
 
-# if _MSC_VER+0 >= 1020
-#  pragma once
-# endif
+# pragma once
 
 # include <boost/config.hpp>
 # include <boost/mpl/bool.hpp>
Modified: trunk/boost/python/suite/indexing/indexing_suite.hpp
==============================================================================
--- trunk/boost/python/suite/indexing/indexing_suite.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/suite/indexing/indexing_suite.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -131,11 +131,7 @@
         typedef detail::container_element<Container, Index, DerivedPolicies>
             container_element_t;
 
-#if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
-        struct return_policy : return_internal_reference<> {};
-#else
         typedef return_internal_reference<> return_policy;
-#endif
 
         typedef typename mpl::if_<
             no_proxy
Modified: trunk/boost/python/to_python_converter.hpp
==============================================================================
--- trunk/boost/python/to_python_converter.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/to_python_converter.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -48,12 +48,7 @@
 struct to_python_converter 
 {
 #ifndef BOOST_PYTHON_NO_PY_SIGNATURES
-#if 0 //defined _MSC_VER && _MSC_VER >=1310
-    //probably other compilers could come here as well
-    typedef typename detail::test_get_pytype<Conversion> HasGetPytype;
-#else
     typedef boost::mpl::bool_<has_get_pytype> HasGetPytype;
-#endif
 
     static PyTypeObject const* get_pytype_1(boost::mpl::true_ *)
     {
Modified: trunk/boost/python/type_id.hpp
==============================================================================
--- trunk/boost/python/type_id.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/type_id.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -78,10 +78,9 @@
 {
     return type_info(
 #  if !defined(_MSC_VER)                                       \
-      || (!BOOST_WORKAROUND(BOOST_MSVC, <= 1300)                \
-          && !BOOST_WORKAROUND(BOOST_INTEL_CXX_VERSION, <= 700))
+      || !BOOST_WORKAROUND(BOOST_INTEL_CXX_VERSION, <= 700)
         typeid(T)
-#  else // strip the decoration which msvc and Intel mistakenly leave in
+#  else // strip the decoration which Intel mistakenly leaves in
         python::detail::msvc_typeid((boost::type<T>*)0)
 #  endif 
         );
@@ -169,7 +168,6 @@
 
 BOOST_PYTHON_DECL std::ostream& operator<<(std::ostream&, type_info const&);
 
-#  if !BOOST_WORKAROUND(BOOST_MSVC, == 1200)
 template<>
 inline type_info type_id<void>()
 {
@@ -183,8 +181,6 @@
 }
 #  endif
 
-# endif 
-
 }} // namespace boost::python
 
 #endif // TYPE_ID_DWA2002517_HPP
Modified: trunk/boost/python/with_custodian_and_ward.hpp
==============================================================================
--- trunk/boost/python/with_custodian_and_ward.hpp	Wed Sep 25 17:16:24 2013	(r85921)
+++ trunk/boost/python/with_custodian_and_ward.hpp	2013-09-25 17:17:17 EDT (Wed, 25 Sep 2013)	(r85922)
@@ -85,14 +85,10 @@
     static PyObject* postcall(ArgumentPackage const& args_, PyObject* result)
     {
         std::size_t arity_ = detail::arity(args_);
-#if BOOST_WORKAROUND(BOOST_MSVC, < 1300)
-        if ( custodian > arity_ || ward > arity_ )
-#else
         // check if either custodian or ward exceeds the arity
         // (this weird formulation avoids "always false" warnings
         // for arity_ = 0)
         if ( (std::max)(custodian, ward) > arity_ )
-#endif
         {
             PyErr_SetString(
                 PyExc_IndexError