[libcxx-commits] [PATCH] D140920: [libc++] Fix ranges::uninitialized_move{, _n} for move-only types
Nikolas Klauser via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Sun Jan 8 05:18:03 PST 2023
philnik added inline comments.
================
Comment at: libcxx/include/__memory/ranges_uninitialized_algorithms.h:259
__nothrow_sentinel_for<_OutputIterator> _Sentinel2>
- requires constructible_from<iter_value_t<_OutputIterator>, iter_reference_t<_InputIterator>>
+ requires constructible_from<iter_value_t<_OutputIterator>, iter_rvalue_reference_t<_InputIterator>>
uninitialized_move_result<_InputIterator, _OutputIterator>
----------------
huixie90 wrote:
> The fix looks good to me. But I think it would be good to add some tests (static_assert tests) for the constraints. (both positive and negative test for the constraints), where `iter_rvalue_reference_t` and `iter_reference_t` are different (.e.g types with specialized `iter_move`)
I think I'd rather do that in a separate PR, since it's only tangentially related to the bug.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D140920/new/
https://reviews.llvm.org/D140920
More information about the libcxx-commits
mailing list