[libcxx-commits] [PATCH] D102639: [libcxx][ranges] Add `indirectly_­movable` and `indirectly_movable_storable`.

Louis Dionne via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed Jun 9 13:58:20 PDT 2021


ldionne requested changes to this revision.
ldionne added a comment.
This revision now requires changes to proceed.

Can you mark review comments that have been addressed as Done so it's easy to follow what's left? I got the feeling that you addressed some that are not marked as Done yet.



================
Comment at: libcxx/include/__iterator/concepts.h:168
+template<class _In, class _Out>
+concept indirectly_movable =
+  indirectly_readable<_In> &&
----------------
Do we want to move this to `indirect_concepts.h`? Or should we instead get rid of `indirect_concepts.h` and move those here instead (as a separate NFC patch)?

No strong preference.


================
Comment at: libcxx/test/std/containers/associative/map/iterator_concept_conformance.compile.pass.cpp:37
+static_assert( std::indirectly_movable<iterator, std::pair<int, int>*>);
+static_assert(!std::indirectly_movable_storable<iterator, std::pair<int, int>*>);
 
----------------
Is this because `iterator::value_type` is `std::pair<int const, int>` and not `std::pair<int, int>`?


================
Comment at: libcxx/test/std/iterators/iterator.requirements/alg.req/ind.move.compile.pass.cpp:1
+//===----------------------------------------------------------------------===//
+//
----------------
I would like us to test one concept per file, like we do everywhere else.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D102639/new/

https://reviews.llvm.org/D102639



More information about the libcxx-commits mailing list