[libcxx-commits] [libcxx] [libc++] P3016R6: Resolve inconsistencies in begin/end for `valarray` and braced initializer lists (PR #173637)

A. Jiang via libcxx-commits libcxx-commits at lists.llvm.org
Mon Jan 5 21:30:12 PST 2026


================
@@ -786,6 +788,9 @@ public:
   typedef _Tp value_type;
   typedef _Tp __result_type;
 
+  typedef _Tp* iterator;
+  typedef const _Tp* const_iterator;
----------------
frederick-vs-ja wrote:

`valarray<T>::iterator` is newly added, but we can already use `std::ranges::begin(v)` (where the return type of `operator()` is deduced) and store some iterators. I'm afraid that changing the iterator types would cause mix-and-mismatch.

https://github.com/llvm/llvm-project/pull/173637


More information about the libcxx-commits mailing list