diff --git a/xml/issue4420.xml b/xml/issue4420.xml index e91e55175c..5dd5514a4f 100644 --- a/xml/issue4420.xml +++ b/xml/issue4420.xml @@ -353,10 +353,23 @@ template<class V = see below , contiguous_iterator I, sized_sentinel_for<I
--6- Let […] -
-[…] - +-6- Let + ++
+- +
+(6.1) — mask be V::mask_type(true) for the overloads with no mask parameter; +
- +
+(6.2) — R be span<const iter_value_t<I>> for the overloads with no template parameter R; +
- +
+(6.3) — r be R(first, n) for the overloads with an n parameter and R(first, last) for the overloads with a last parameter
.; +- +
+(6.?) — T be typename V::value_type. +
-7- Mandates:
@@ -445,7 +458,7 @@ template<class T, class Abi, contiguous_iterator I, sized_sentinel_for<I&g
+[…] +
-(?.1) — ranges::iterator_t<R> satisfies +(?.1) — ranges::iterator_t<R> models indirectly_writable<ranges::range_value_t<R>>, and
@@ -511,7 +524,7 @@ template<simd-vec-type V, ranges::contiguous_range R, simd-integral (14.1) — `V::size() == I::size()` is `true`,
-(14.2) — ranges::iterator_t<R> satisfies +(14.2) — ranges::iterator_t<R> models indirectly_writable<ranges::range_value_t<R>>, and
@@ -519,6 +532,12 @@ template<simd-vec-type V, ranges::contiguous_range R, simd-integral explicitly-convertible-to<ranges::range_value_t<R>>.
+-17- Effects: For all i in the range [0, I::size()), if mask[i] +&& (indices[i] < ranges::size(out)) is true, evaluates +ranges::data(out)[indices[i]] = static_cast<ranges::range_value_t<R>>(v[i]). +