From 2413390c282b54184b55243288f41a82ca068069 Mon Sep 17 00:00:00 2001 From: Abhinav Agarwal Date: Tue, 16 Jun 2026 21:15:15 -0700 Subject: [PATCH 1/2] [simd.math,simd.reductions] Fix two undeclared identifiers in std::simd Two adjacent std::simd specifications name an identifier introduced nowhere in the enclosing itemdescr: - [simd.math]: the exposition-only modf-vec helper sizes its staging array with Ret::size(), but the only Let-bound vector type here is V; Ret is a leftover from frexp-vec (where Ret is bound). Use V::size(). - [simd.reductions]: masked reduce_max returns numeric_limits::lowest(), but its template head only introduces T and Abi (no V). Use numeric_limits::lowest(), matching masked reduce_min and scalar reduce_max. --- source/numerics.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/numerics.tex b/source/numerics.tex index 7ec3aada0d..48d6af3137 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -18974,7 +18974,7 @@ \pnum \returns If \tcode{none_of(mask)} is \tcode{true}, returns -\tcode{numeric_limits::lowest()}. +\tcode{numeric_limits::lowest()}. Otherwise, returns the value of a selected element \tcode{x[$j$]} for which \tcode{x[$j$] < x[$i$]} is \tcode{false} for all selected indices $i$ of \tcode{mask}. @@ -20537,7 +20537,7 @@ Let \tcode{\placeholder{modf-vec}} denote: \begin{codeblock} pair @\placeholder{modf-vec}@(const V& x) { - T r1[Ret::size()]; + T r1[V::size()]; V r0([&](@\exposid{simd-size-type}@ i) { return modf(V(x)[i], &r1[i]); }); From b407170a88949bf4b442f452b23531840ea8e692 Mon Sep 17 00:00:00 2001 From: Abhinav Agarwal Date: Wed, 17 Jun 2026 08:30:37 -0700 Subject: [PATCH 2/2] [simd.reductions] Name x and mask parameters in masked reduce_min/reduce_max The masked reduce_min and reduce_max declarations leave both parameters unnamed, but their Returns elements refer to x and mask. Name the parameters x and mask so the declarations match their descriptions. --- source/numerics.tex | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/numerics.tex b/source/numerics.tex index 48d6af3137..65f87d8e68 100644 --- a/source/numerics.tex +++ b/source/numerics.tex @@ -18926,7 +18926,7 @@ \begin{itemdecl} template constexpr T reduce_min( - const basic_vec&, const typename basic_vec::mask_type&) noexcept; + const basic_vec& x, const typename basic_vec::mask_type& mask) noexcept; \end{itemdecl} \begin{itemdescr} @@ -18963,7 +18963,7 @@ \begin{itemdecl} template constexpr T reduce_max( - const basic_vec&, const typename basic_vec::mask_type&) noexcept; + const basic_vec& x, const typename basic_vec::mask_type& mask) noexcept; \end{itemdecl} \begin{itemdescr}