$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r73107 - in sandbox/conversion/boost/conversion: . type_traits
From: vicente.botet_at_[hidden]
Date: 2011-07-14 12:37:48
Author: viboes
Date: 2011-07-14 12:37:47 EDT (Thu, 14 Jul 2011)
New Revision: 73107
URL: http://svn.boost.org/trac/boost/changeset/73107
Log:
conversion: fix bug with las extrinsically renaming
Fix is_assignable on GNUC
Text files modified: 
   sandbox/conversion/boost/conversion/convertible_from.hpp             |    16 ++++++++--------                        
   sandbox/conversion/boost/conversion/type_traits/is_constructible.hpp |     8 +++++++-                                
   2 files changed, 15 insertions(+), 9 deletions(-)
Modified: sandbox/conversion/boost/conversion/convertible_from.hpp
==============================================================================
--- sandbox/conversion/boost/conversion/convertible_from.hpp	(original)
+++ sandbox/conversion/boost/conversion/convertible_from.hpp	2011-07-14 12:37:47 EDT (Thu, 14 Jul 2011)
@@ -29,11 +29,11 @@
   namespace conversion {
 
     //! wrapper providing implicit conversion operation to any type extrinsicaly implicit convertible from @c Source.
-    
-    //! This wrapper is used indirectly through the @mcf function to pass a @c Source parameter to a function waiting a parameter @c Target 
+
+    //! This wrapper is used indirectly through the @mcf function to pass a @c Source parameter to a function waiting a parameter @c Target
     //! extrinsicaly convertible from it.
-    //! 
-    //! Requires @c Source must be CopyConstructible 
+    //!
+    //! Requires @c Source must be CopyConstructible
 
     template <typename Source>
     class convertible_from {
@@ -51,17 +51,17 @@
       //! @Remark On compilers that supports C++0x default arguments for function template parameters,
       //!   this conversion operator doesn't participates on overload resolution if @c Source is not extrinsic convertible to @c Target.
       template <typename Target
-      , typename boost::enable_if< boost::is_extrinsically_convertible<Source,Target>, int >::type = 0
+      , typename boost::enable_if< is_extrinsically_convertible<Source,Target>, int >::type = 0
       >
       operator Target() const
       {
-        return conversion::implicit_convert_to<Target>(val_);
+        return implicit_convert_to<Target>(val_);
       }
 
     };
     //! @brief makes a wrapper implicitly convertible to types extrinsicly implicit convertibles from @c Source.
-    
-    //! The result provides implicitly conversion to any type which is extrinsic implicit convertible from @c Source.  
+
+    //! The result provides implicitly conversion to any type which is extrinsic implicit convertible from @c Source.
     //! @Returns convertible_from<Source>(s).
     //! @NoThrow.
     //! @Example
Modified: sandbox/conversion/boost/conversion/type_traits/is_constructible.hpp
==============================================================================
--- sandbox/conversion/boost/conversion/type_traits/is_constructible.hpp	(original)
+++ sandbox/conversion/boost/conversion/type_traits/is_constructible.hpp	2011-07-14 12:37:47 EDT (Thu, 14 Jul 2011)
@@ -102,6 +102,11 @@
     #undef M0
     #undef M1
 
+    #if defined __GNUC__
+       #if __GNUC__ < 4 || ( __GNUC__ == 4 && __GNUC_MINOR__ < 7 )
+         #define BOOST_CONVERSION_NO_IS_DEFAULT_CONSTRUCTIBLE
+       #endif
+    #else
 
     #define M1(z,n,t) void
 
@@ -128,6 +133,8 @@
 
     #undef M1
 
+    #endif
+
 
     #define M0(z,n,t)                                                                                   \
     template<class A BOOST_PP_COMMA_IF(n) BOOST_PP_ENUM_PARAMS(n, class A)>                             \
@@ -140,7 +147,6 @@
     #undef M0
 
 
-    //#define BOOST_CONVERSION_NO_IS_DEFAULT_CONSTRUCTIBLE
 
 #else