[libcxx-commits] [PATCH] D100160: [libcxx] adds `std::input_or_output_iterator` and `std::sentinel_for` to <iterator>
Mark de Wever via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Apr 20 11:36:46 PDT 2021
Mordante added a comment.
In general LGTM modulo some nits and the request of @miscco. But I like to know more about the locale_dependent test before approving.
================
Comment at: libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.sentinel/sentinel_for.compile.pass.cpp:13
+
+// template<class In>
+// concept sentinel_for;
----------------
Please update this part to `template<class S, class I>`
================
Comment at: libcxx/test/std/iterators/iterator.requirements/iterator.concepts/iterator.concept.sentinel/sentinel_for.compile.pass.cpp:102
+ static_assert(!std::sentinel_for<const_iterator, reverse_iterator>);
+ static_assert(!std::sentinel_for<const_iterator, const_reverse_iterator>);
+
----------------
Here `iterator` and `const_iterator` are not tested against the full set, like `reverse_iterator` and `const_reverse_iterator`. Can you add them for completeness?
================
Comment at: libcxx/test/std/iterators/iterator.requirements/iterator.concepts/locale_dependent.compile.pass.cpp:12
+// UNSUPPORTED: gcc-10
+// REQUIRES: locale.en_US.UTF-8
+
----------------
What's locale dependent with this test?
If it's locale dependent it should contain a line `// UNSUPPORTED: libcpp-has-no-localization`
================
Comment at: libcxx/test/std/iterators/iterator.requirements/iterator.concepts/locale_dependent.compile.pass.cpp:21
+// template<class S, class I>
+// concept sized_sentinel_for;
+
----------------
Please remove the `sized_sentinel` since it isn't added here.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D100160/new/
https://reviews.llvm.org/D100160
More information about the libcxx-commits
mailing list