[PATCH] libstdc++: Implement LWG4403: CTAD misses difference type casting
Matthias Kretz
MatthiasKretz@gmx.net
Tue Apr 14 13:02:20 GMT 2026
From: Matthias Kretz <m.kretz@gsi.de>
libstdc++-v3/ChangeLog:
* include/bits/simd_vec.h (basic_vec deduction guide): Explicit
cast to simd-size-type from range size type.
Signed-off-by: Matthias Kretz <m.kretz@gsi.de>
---
libstdc++-v3/include/bits/simd_vec.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libstdc++-v3/include/bits/simd_vec.h b/libstdc++-v3/include/bits/
simd_vec.h
index da194824e72..2574bf7c3ad 100644
--- a/libstdc++-v3/include/bits/simd_vec.h
+++ b/libstdc++-v3/include/bits/simd_vec.h
@@ -2264,9 +2264,9 @@ basic_vec(_Rg&& __range, flags<_Flags...> __flags = {})
-> basic_vec<ranges::range_value_t<_Rg>,
__deduce_abi_t<ranges::range_value_t<_Rg>,
#if 0 // PR117849
- ranges::size(__r)>>;
+
static_cast<__simd_size_type>(ranges::size(__r))>>;
#else
- decltype(std::span(__r))::extent>>;
+
static_cast<__simd_size_type>(decltype(std::span(__r))::extent)>>;
#endif
template <size_t _Bytes, typename _Ap>
--
──────────────────────────────────────────────────────────────────────────
Dr. Matthias Kretz https://mattkretz.github.io
GSI Helmholtz Center for Heavy Ion Research https://gsi.de
std::simd
──────────────────────────────────────────────────────────────────────────
More information about the Libstdc++
mailing list