[Boost-bugs] [Boost C++ Libraries] #8802: Add is_copy_constructible<T> trait

Subject: [Boost-bugs] [Boost C++ Libraries] #8802: Add is_copy_constructible<T> trait
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-07-09 07:18:44


#8802: Add is_copy_constructible<T> trait
-------------------------------------------------+-------------------------
 Reporter: apolukhin | Owner: johnmaddock
     Type: Feature Requests | Status: new
Milestone: Boost 1.55.0 | Component: type_traits
  Version: Boost 1.54.0 | Severity: Problem
 Keywords: has_copy_constructor |
  is_copy_constructible move traits |
-------------------------------------------------+-------------------------
 Add an implementation of `is_copy_constructible<T>` trait. It must work
 with C++11 and in C++03 it must detect constructors assuming that if type
 is derived from `boost::noncopyable` or uses
 BOOST_MOVABLE_BUT_NOT_COPYABLE macro - it has no copy constructor.

 Boost.Move requires the following patch applied to to
 BOOST_MOVE_IMPL_NO_COPY_CTOR_OR_ASSIGN in boost/move/core.hpp :
 {{{
 #ifdef BOOST_NO_CXX11_DELETED_FUNCTIONS
    #define BOOST_MOVE_IMPL_NO_COPY_CTOR_OR_ASSIGN(TYPE) \
       private:\
       TYPE(TYPE &);\
       TYPE& operator=(TYPE &);\
 + public: \
 + typedef int boost_move_no_copy_constructor_or_assign; \
 + private: \
    //
 #else
 }}}

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/8802>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:13 UTC