typedef std::reverse_iterator<const_iterator> const_reverse_iterator;
private:
+ iterator
+ _M_const_cast_iter(const_iterator __cit)
+ { return iterator(static_cast<_Link_type>
+ (const_cast<_Base_ptr>(__cit._M_node))); }
+
iterator
_M_insert_(_Const_Base_ptr __x, _Const_Base_ptr __y,
const value_type& __v);
const_iterator __result = __position;
++__result;
_M_erase_aux(__position);
- return iterator(static_cast<_Link_type>
- (const_cast<_Base_ptr>(__result._M_node)));
+ return _M_const_cast_iter(__result);
}
#else
void
erase(const_iterator __first, const_iterator __last)
{
_M_erase_aux(__first, __last);
- return iterator(static_cast<_Link_type>
- (const_cast<_Base_ptr>(__last._M_node)));
+ return _M_const_cast_iter(__last);
}
#else
void
}
else
// Equivalent keys.
- return iterator(static_cast<_Link_type>
- (const_cast<_Base_ptr>(__position._M_node)));
+ return _M_const_cast_iter(__position);
}
template<typename _Key, typename _Val, typename _KeyOfValue,