[libc++] Remove operator-> from iterator archetypes that don't need it
authorLouis Dionne <ldionne.2@gmail.com>
Thu, 27 Jan 2022 18:57:49 +0000 (13:57 -0500)
committerLouis Dionne <ldionne.2@gmail.com>
Thu, 10 Mar 2022 20:52:34 +0000 (15:52 -0500)
commit553ab7a090dce9d04f4569a99761fa5917df54a3
tree4dd457ba8c069ee80fd0b00cdcecbf98353781eb
parentc24199e8e885800147aa98ce2b48b5d830bd51ed
[libc++] Remove operator-> from iterator archetypes that don't need it

operator-> is not a requirement for most iterators, so remove it. To
account for this change, the `common_iterator.operator->` test needs to
be refactored quite a bit -- improve test coverage while we're at it.

Differential Revision: https://reviews.llvm.org/D118400
libcxx/test/std/iterators/predef.iterators/iterators.common/arrow.pass.cpp
libcxx/test/std/iterators/predef.iterators/iterators.common/iterator_traits.compile.pass.cpp
libcxx/test/support/test_iterators.h