[libcxx-commits] [PATCH] D98573: [libc++] Remove most of the special logic for "noexcept iterators" in basic_string

Arthur O'Dwyer via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Fri Apr 16 18:16:37 PDT 2021


Quuxplusone updated this revision to Diff 338264.
Quuxplusone edited the summary of this revision.
Quuxplusone added a comment.

Nth time's the charm!
Add more regression tests, putting them next to the old tests this time instead of in new files.
Fix an off-by-one error in `__ptr_in_range`, and rename it to `__addr_in_range` — notice that `addressof(*__first)` is ill-formed when `__first` is a move_iterator, so we shuffle the `addressof` operation into the context where we know `__t` is an lvalue.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D98573

Files:
  libcxx/include/filesystem
  libcxx/include/iterator
  libcxx/include/string
  libcxx/test/libcxx/iterators/trivial_iterators.pass.cpp
  libcxx/test/libcxx/strings/iterators.exceptions.pass.cpp
  libcxx/test/libcxx/strings/iterators.noexcept.pass.cpp
  libcxx/test/std/strings/basic.string/string.modifiers/robust_against_adl.pass.cpp
  libcxx/test/std/strings/basic.string/string.modifiers/string_append/iterator.pass.cpp
  libcxx/test/std/strings/basic.string/string.modifiers/string_assign/iterator.pass.cpp
  libcxx/test/std/strings/basic.string/string.modifiers/string_insert/iter_iter_iter.pass.cpp
  libcxx/test/std/strings/basic.string/string.modifiers/string_replace/iter_iter_iter_iter.pass.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D98573.338264.patch
Type: text/x-patch
Size: 42924 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20210417/11013bab/attachment-0001.bin>


More information about the libcxx-commits mailing list