llvm-project/libcxx/test/std/strings/basic.string/string.modifiers
Louis Dionne 4a47ac7d51 [libc++] Remove incorrect default constructor in cpp17_input_iterator
AFAICT, Cpp17InputIterators are not required to be default constructible,
since that requirement is added in Cpp17ForwardIterator. Hence, our
archetype for Cpp17InputIterator should not be default constructible.
Removing that constructor has a ripple effect on a couple of tests that
were making incorrect assumptions. Notably:

- Some tests were using cpp17_input_iterator as a sentinel for itself.
  That is not valid, because a cpp17_input_iterator is not semiregular
  anymore after the change (and hence it doesn't satisfy sentinel_for).

- Some tests were using a stride-counted cpp17_input_iterator as the
  sentinel for a range. This doesn't work anymore because of the problem
  above, so these tests were changed not to check stride counts for
  input iterators.

- Some tests were default constructing cpp17_input_iterator when a simple
  alternative was available -- those have been changed to use that alternative.

Differential Revision: https://reviews.llvm.org/D115806
2022-01-04 14:33:51 -05:00
..
string_append [libc++] Remove incorrect default constructor in cpp17_input_iterator 2022-01-04 14:33:51 -05:00
string_assign [libc++] Remove incorrect default constructor in cpp17_input_iterator 2022-01-04 14:33:51 -05:00
string_copy
string_erase
string_insert [libc++] Remove incorrect default constructor in cpp17_input_iterator 2022-01-04 14:33:51 -05:00
string_op_plus_equal [libc++] Remove the c++98 Lit feature from the test suite 2020-06-03 09:37:22 -04:00
string_replace [libc++] Remove incorrect default constructor in cpp17_input_iterator 2022-01-04 14:33:51 -05:00
string_swap
robust_against_adl.pass.cpp [libc++] Remove the special logic for "noexcept iterators" in basic_string. 2021-04-26 16:22:43 -04:00