$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r77889 - trunk/boost/intrusive/detail
From: igaztanaga_at_[hidden]
Date: 2012-04-10 14:44:18
Author: igaztanaga
Date: 2012-04-10 14:44:17 EDT (Tue, 10 Apr 2012)
New Revision: 77889
URL: http://svn.boost.org/trac/boost/changeset/77889
Log:
Fixes for Visual Studio 11 and GCC 4.3
Text files modified: 
   trunk/boost/intrusive/detail/has_member_function_callable_with.hpp |     6 +++---                                  
   trunk/boost/intrusive/detail/memory_util.hpp                       |     7 +++++++                                 
   2 files changed, 10 insertions(+), 3 deletions(-)
Modified: trunk/boost/intrusive/detail/has_member_function_callable_with.hpp
==============================================================================
--- trunk/boost/intrusive/detail/has_member_function_callable_with.hpp	(original)
+++ trunk/boost/intrusive/detail/has_member_function_callable_with.hpp	2012-04-10 14:44:17 EDT (Tue, 10 Apr 2012)
@@ -113,7 +113,7 @@
          };
          //!
 
-         #if !defined(_MSC_VER) || (_MSC_VER != 1600)
+         #if !defined(_MSC_VER) || (_MSC_VER < 1600)
 
             #if defined(BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
 
@@ -126,7 +126,7 @@
                static const bool value = true;
             };
 
-            #else
+            #else //defined(BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
 
             //Special case for 0 args
             template< class F
@@ -162,7 +162,7 @@
                static const bool value = sizeof(Test< Fun >(0))
                                     == sizeof(boost_intrusive_has_member_function_callable_with::yes_type);
             };
-            #endif
+            #endif   //defined(BOOST_INTRUSIVE_DETAIL_HAS_MEMBER_FUNCTION_CALLABLE_WITH_0_ARGS_UNSUPPORTED)
 
          #else //#if !defined(_MSC_VER) || (_MSC_VER != 1600)
             template<typename Fun>
Modified: trunk/boost/intrusive/detail/memory_util.hpp
==============================================================================
--- trunk/boost/intrusive/detail/memory_util.hpp	(original)
+++ trunk/boost/intrusive/detail/memory_util.hpp	2012-04-10 14:44:17 EDT (Tue, 10 Apr 2012)
@@ -251,6 +251,13 @@
    typedef Ptr<U, Tn...> type;
 };
 
+//Needed for non-conforming compilers like GCC 4.3
+template <template <class> class Ptr, typename T, class U>
+struct type_rebinder<Ptr<T>, U, 0u >
+{
+   typedef Ptr<U> type;
+};
+
 #else //C++03 compilers
 
 #define BOOST_PP_LOCAL_MACRO(n)                                                  \