14
14
#include < __config>
15
15
#include < __iterator/segmented_iterator.h>
16
16
#include < __type_traits/enable_if.h>
17
- #include < __utility/in_place.h>
18
- #include < __utility/move.h>
19
17
20
18
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
21
19
# pragma GCC system_header
@@ -35,13 +33,12 @@ template <class _SegmentedIterator,
35
33
__enable_if_t <__is_segmented_iterator<_SegmentedIterator>::value, int > = 0 >
36
34
_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 void
37
35
__for_each (_SegmentedIterator __first, _SegmentedIterator __last, _Function& __func) {
38
- using _Traits = __segmented_iterator_traits<_SegmentedIterator>;
39
- std::__for_each_segment (
40
- __first, __last, [&](typename _Traits::__local_iterator __lfirst, typename _Traits::__local_iterator __llast) {
41
- std::__for_each (__lfirst, __llast, __func);
42
- });
36
+ using __local_iterator_t = typename __segmented_iterator_traits<_SegmentedIterator>::__local_iterator;
37
+ std::__for_each_segment (__first, __last, [&](__local_iterator_t __lfirst, __local_iterator_t __llast) {
38
+ std::__for_each (__lfirst, __llast, __func);
39
+ });
43
40
}
44
- #endif
41
+ #endif // !_LIBCPP_CXX03_LANG
45
42
46
43
template <class _InputIterator , class _Function >
47
44
_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 _Function
0 commit comments