[libcxx-commits] [PATCH] D99854: [libcxx] adds `cpp17-.*iterator` concepts (as `__legacy_.*iterator`)
Louis Dionne via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Thu Apr 15 11:23:27 PDT 2021
ldionne added inline comments.
================
Comment at: libcxx/include/iterator:659
+template<class _Ip>
+concept __legacy_iterator =
+ requires(_Ip __i) {
----------------
@CaseyCarter Is it intended that the exposition-only concepts defined in http://eel.is/c++draft/iterator.traits#2 are not a literal translation of tables like http://eel.is/c++draft/iterator.cpp17#tab:iterator?
For example, the exposition-only concept `cpp17-iterator` adds the requirement `{ *i++ } -> can-reference`, whereas the `Cpp17Iterator` concept does not contain that requirement.
There are similar differences in the other iterator concepts too, like `operator->` being in the table but not in the exposition-only concept.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D99854/new/
https://reviews.llvm.org/D99854
More information about the libcxx-commits
mailing list