aboutsummaryrefslogtreecommitdiff
path: root/lib/libcxx/include/__algorithm/ranges_set_difference.h
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2023-08-11 17:34:16 -0700
committerAndrew Kelley <andrew@ziglang.org>2023-09-19 09:37:31 -0700
commit5d4439cc3e9dc9196fc109552f36594ad97542c5 (patch)
treeb0ed2b36b213c5c47cd373327bb91cbf9e6d2205 /lib/libcxx/include/__algorithm/ranges_set_difference.h
parent9ddfacd8e62abd80b25619dd852ee811dad5f7b6 (diff)
downloadzig-5d4439cc3e9dc9196fc109552f36594ad97542c5.tar.gz
zig-5d4439cc3e9dc9196fc109552f36594ad97542c5.zip
libcxx: update to LLVM 17
release/17.x branch, commit 8f4dd44097c9ae25dd203d5ac87f3b48f854bba8 This adds the flag `-D_LIBCPP_PSTL_CPU_BACKEND_SERIAL`. A future enhancement could possibly pass something different if there is a compelling parallel implementation. That libdispatch one might be worth looking into.
Diffstat (limited to 'lib/libcxx/include/__algorithm/ranges_set_difference.h')
-rw-r--r--lib/libcxx/include/__algorithm/ranges_set_difference.h49
1 files changed, 23 insertions, 26 deletions
diff --git a/lib/libcxx/include/__algorithm/ranges_set_difference.h b/lib/libcxx/include/__algorithm/ranges_set_difference.h
index 607dd687a5..a9453ed336 100644
--- a/lib/libcxx/include/__algorithm/ranges_set_difference.h
+++ b/lib/libcxx/include/__algorithm/ranges_set_difference.h
@@ -30,7 +30,7 @@
# pragma GCC system_header
#endif
-#if _LIBCPP_STD_VER > 17
+#if _LIBCPP_STD_VER >= 20
_LIBCPP_BEGIN_NAMESPACE_STD
@@ -42,15 +42,14 @@ using set_difference_result = in_out_result<_InIter, _OutIter>;
namespace __set_difference {
struct __fn {
- template <
- input_iterator _InIter1,
- sentinel_for<_InIter1> _Sent1,
- input_iterator _InIter2,
- sentinel_for<_InIter2> _Sent2,
- weakly_incrementable _OutIter,
- class _Comp = less,
- class _Proj1 = identity,
- class _Proj2 = identity>
+ template <input_iterator _InIter1,
+ sentinel_for<_InIter1> _Sent1,
+ input_iterator _InIter2,
+ sentinel_for<_InIter2> _Sent2,
+ weakly_incrementable _OutIter,
+ class _Comp = less,
+ class _Proj1 = identity,
+ class _Proj2 = identity>
requires mergeable<_InIter1, _InIter2, _OutIter, _Comp, _Proj1, _Proj2>
_LIBCPP_HIDE_FROM_ABI constexpr set_difference_result<_InIter1, _OutIter> operator()(
_InIter1 __first1,
@@ -66,22 +65,20 @@ struct __fn {
return {std::move(__ret.first), std::move(__ret.second)};
}
- template <
- input_range _Range1,
- input_range _Range2,
- weakly_incrementable _OutIter,
- class _Comp = less,
- class _Proj1 = identity,
- class _Proj2 = identity>
+ template <input_range _Range1,
+ input_range _Range2,
+ weakly_incrementable _OutIter,
+ class _Comp = less,
+ class _Proj1 = identity,
+ class _Proj2 = identity>
requires mergeable<iterator_t<_Range1>, iterator_t<_Range2>, _OutIter, _Comp, _Proj1, _Proj2>
_LIBCPP_HIDE_FROM_ABI constexpr set_difference_result<borrowed_iterator_t<_Range1>, _OutIter>
- operator()(
- _Range1&& __range1,
- _Range2&& __range2,
- _OutIter __result,
- _Comp __comp = {},
- _Proj1 __proj1 = {},
- _Proj2 __proj2 = {}) const {
+ operator()(_Range1&& __range1,
+ _Range2&& __range2,
+ _OutIter __result,
+ _Comp __comp = {},
+ _Proj1 __proj1 = {},
+ _Proj2 __proj2 = {}) const {
auto __ret = std::__set_difference<_RangeAlgPolicy>(
ranges::begin(__range1),
ranges::end(__range1),
@@ -96,11 +93,11 @@ struct __fn {
} // namespace __set_difference
inline namespace __cpo {
- inline constexpr auto set_difference = __set_difference::__fn{};
+inline constexpr auto set_difference = __set_difference::__fn{};
} // namespace __cpo
} // namespace ranges
_LIBCPP_END_NAMESPACE_STD
-#endif // _LIBCPP_STD_VER > 17
+#endif // _LIBCPP_STD_VER >= 20
#endif // _LIBCPP___ALGORITHM_RANGES_SET_DIFFERENCE_H