| namespace detail | namespace detail | ||||
| { | { | ||||
| template<class T, class TT> | template<class T, class TT> | ||||
| using is_ntmocp_constructible = std::conditional_t<std::is_reference<TT>::value | |||||
| || !std::is_nothrow_move_constructible<TT>::value, | |||||
| using is_ntmocp_constructible = std::conditional_t<std::is_reference_v<TT> | |||||
| || !std::is_nothrow_move_constructible_v<TT>, | |||||
| typename std::is_constructible<T, const TT&>::type, | typename std::is_constructible<T, const TT&>::type, | ||||
| typename std::is_constructible<T, TT>::type>; | typename std::is_constructible<T, TT>::type>; | ||||