Re: [Boost-bugs] [Boost C++ Libraries] #8189: Port some type traits from Boost.Variant

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #8189: Port some type traits from Boost.Variant
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2013-02-28 07:01:38


#8189: Port some type traits from Boost.Variant
-------------------------------+--------------------------------------------
  Reporter: apolukhin | Owner: apolukhin
      Type: Feature Requests | Status: assigned
 Milestone: Boost 1.54.0 | Component: type_traits
   Version: Boost 1.52.0 | Severity: Problem
Resolution: | Keywords: rvalues move trivial
-------------------------------+--------------------------------------------
Changes (by apolukhin):

  * status: new => assigned


Old description:

> Boost.Varaint has the following traits, that can be used across
> modules and sould be ported to Boost.TypeTraits
>
> has_nothrow_move_assign
> has_nothrow_move_constructor
> has_trivial_move_assign
> has_trivial_move_constructor
>
> Implementation may be tuned to use C++11 features it they are available.

New description:

 Boost.Varaint has the following traits, that can be used across
 modules and sould be ported to Boost.TypeTraits
 {{{
 has_nothrow_move_assign
 has_nothrow_move_constructor
 has_trivial_move_assign
 has_trivial_move_constructor
 }}}
 Implementation may be tuned to use C++11 features it they are available.

--
Comment:
 Current patch has following issues, that must be solved before merging:
 * `has_*` functions must be renamed to `is_*able` to better reflect their
 behavior and to have more conformance with C++11
 * `is_pod<T>::value || __has_trivial_move_assign(T)` and `is_pod<T>::value
 ||  __has_trivial_move_constructor(T)` must be added to Clang and VC11
 intrinsics
 * tests for detection of triviality and noexcept of user defined move
 operators and constructors on compilers with `noexcept` support
-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/8189#comment:1>
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:12 UTC