template <class _InputIterator>
vector(_InputIterator __first, _InputIterator __last,
typename enable_if<__is_input_iterator <_InputIterator>::value &&
- !__is_forward_iterator<_InputIterator>::value &&
- is_constructible<
- value_type,
- typename iterator_traits<_InputIterator>::reference>::value>::type* = 0);
+ !__is_forward_iterator<_InputIterator>::value>::type* = 0);
template <class _InputIterator>
vector(_InputIterator __first, _InputIterator __last, const allocator_type& __a,
typename enable_if<__is_input_iterator <_InputIterator>::value &&
- !__is_forward_iterator<_InputIterator>::value &&
- is_constructible<
- value_type,
- typename iterator_traits<_InputIterator>::reference>::value>::type* = 0);
+ !__is_forward_iterator<_InputIterator>::value>::type* = 0);
template <class _ForwardIterator>
vector(_ForwardIterator __first, _ForwardIterator __last,
- typename enable_if<__is_forward_iterator<_ForwardIterator>::value &&
- is_constructible<
- value_type,
- typename iterator_traits<_ForwardIterator>::reference>::value>::type* = 0);
+ typename enable_if<__is_forward_iterator<_ForwardIterator>::value>::type* = 0);
template <class _ForwardIterator>
vector(_ForwardIterator __first, _ForwardIterator __last, const allocator_type& __a,
- typename enable_if<__is_forward_iterator<_ForwardIterator>::value &&
- is_constructible<
- value_type,
- typename iterator_traits<_ForwardIterator>::reference>::value>::type* = 0);
+ typename enable_if<__is_forward_iterator<_ForwardIterator>::value>::type* = 0);
#ifndef _LIBCPP_HAS_NO_GENERALIZED_INITIALIZERS
_LIBCPP_INLINE_VISIBILITY
vector(initializer_list<value_type> __il);
typename enable_if
<
__is_input_iterator <_InputIterator>::value &&
- !__is_forward_iterator<_InputIterator>::value &&
- is_constructible<
- value_type,
- typename iterator_traits<_InputIterator>::reference>::value,
+ !__is_forward_iterator<_InputIterator>::value,
void
>::type
assign(_InputIterator __first, _InputIterator __last);
template <class _ForwardIterator>
typename enable_if
<
- __is_forward_iterator<_ForwardIterator>::value &&
- is_constructible<
- value_type,
- typename iterator_traits<_ForwardIterator>::reference>::value,
+ __is_forward_iterator<_ForwardIterator>::value,
void
>::type
assign(_ForwardIterator __first, _ForwardIterator __last);
typename enable_if
<
__is_input_iterator <_InputIterator>::value &&
- !__is_forward_iterator<_InputIterator>::value &&
- is_constructible<
- value_type,
- typename iterator_traits<_InputIterator>::reference>::value,
+ !__is_forward_iterator<_InputIterator>::value,
iterator
>::type
insert(const_iterator __position, _InputIterator __first, _InputIterator __last);
template <class _ForwardIterator>
typename enable_if
<
- __is_forward_iterator<_ForwardIterator>::value &&
- is_constructible<
- value_type,
- typename iterator_traits<_ForwardIterator>::reference>::value,
+ __is_forward_iterator<_ForwardIterator>::value,
iterator
>::type
insert(const_iterator __position, _ForwardIterator __first, _ForwardIterator __last);
template <class _InputIterator>
vector<_Tp, _Allocator>::vector(_InputIterator __first, _InputIterator __last,
typename enable_if<__is_input_iterator <_InputIterator>::value &&
- !__is_forward_iterator<_InputIterator>::value &&
- is_constructible<
- value_type,
- typename iterator_traits<_InputIterator>::reference>::value>::type*)
+ !__is_forward_iterator<_InputIterator>::value>::type*)
{
#if _LIBCPP_DEBUG_LEVEL >= 2
__get_db()->__insert_c(this);
template <class _InputIterator>
vector<_Tp, _Allocator>::vector(_InputIterator __first, _InputIterator __last, const allocator_type& __a,
typename enable_if<__is_input_iterator <_InputIterator>::value &&
- !__is_forward_iterator<_InputIterator>::value &&
- is_constructible<
- value_type,
- typename iterator_traits<_InputIterator>::reference>::value>::type*)
+ !__is_forward_iterator<_InputIterator>::value>::type*)
: __base(__a)
{
#if _LIBCPP_DEBUG_LEVEL >= 2
template <class _Tp, class _Allocator>
template <class _ForwardIterator>
vector<_Tp, _Allocator>::vector(_ForwardIterator __first, _ForwardIterator __last,
- typename enable_if<__is_forward_iterator<_ForwardIterator>::value &&
- is_constructible<
- value_type,
- typename iterator_traits<_ForwardIterator>::reference>::value>::type*)
+ typename enable_if<__is_forward_iterator<_ForwardIterator>::value>::type*)
{
#if _LIBCPP_DEBUG_LEVEL >= 2
__get_db()->__insert_c(this);
template <class _Tp, class _Allocator>
template <class _ForwardIterator>
vector<_Tp, _Allocator>::vector(_ForwardIterator __first, _ForwardIterator __last, const allocator_type& __a,
- typename enable_if<__is_forward_iterator<_ForwardIterator>::value &&
- is_constructible<
- value_type,
- typename iterator_traits<_ForwardIterator>::reference>::value>::type*)
+ typename enable_if<__is_forward_iterator<_ForwardIterator>::value>::type*)
: __base(__a)
{
#if _LIBCPP_DEBUG_LEVEL >= 2
typename enable_if
<
__is_input_iterator <_InputIterator>::value &&
- !__is_forward_iterator<_InputIterator>::value &&
- is_constructible<
- _Tp,
- typename iterator_traits<_InputIterator>::reference>::value,
+ !__is_forward_iterator<_InputIterator>::value,
void
>::type
vector<_Tp, _Allocator>::assign(_InputIterator __first, _InputIterator __last)
template <class _ForwardIterator>
typename enable_if
<
- __is_forward_iterator<_ForwardIterator>::value &&
- is_constructible<
- _Tp,
- typename iterator_traits<_ForwardIterator>::reference>::value,
+ __is_forward_iterator<_ForwardIterator>::value,
void
>::type
vector<_Tp, _Allocator>::assign(_ForwardIterator __first, _ForwardIterator __last)
typename enable_if
<
__is_input_iterator <_InputIterator>::value &&
- !__is_forward_iterator<_InputIterator>::value &&
- is_constructible<
- _Tp,
- typename iterator_traits<_InputIterator>::reference>::value,
+ !__is_forward_iterator<_InputIterator>::value,
typename vector<_Tp, _Allocator>::iterator
>::type
vector<_Tp, _Allocator>::insert(const_iterator __position, _InputIterator __first, _InputIterator __last)
template <class _ForwardIterator>
typename enable_if
<
- __is_forward_iterator<_ForwardIterator>::value &&
- is_constructible<
- _Tp,
- typename iterator_traits<_ForwardIterator>::reference>::value,
+ __is_forward_iterator<_ForwardIterator>::value,
typename vector<_Tp, _Allocator>::iterator
>::type
vector<_Tp, _Allocator>::insert(const_iterator __position, _ForwardIterator __first, _ForwardIterator __last)