diff options
author | Stephan T. Lavavej <stl@nuwen.net> | 2023-12-06 02:29:09 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-12-06 02:29:09 -0800 |
commit | bfdc562d0c6ff18ae3a8d618a2cb05c22a04898b (patch) | |
tree | 49c9a6c6af800d76f4bfd8decd5117d82a73a3f2 /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
parent | fcd06d774dad1b5bcdc22f5f10a9d5c62c585814 (diff) | |
download | llvm-bfdc562d0c6ff18ae3a8d618a2cb05c22a04898b.zip llvm-bfdc562d0c6ff18ae3a8d618a2cb05c22a04898b.tar.gz llvm-bfdc562d0c6ff18ae3a8d618a2cb05c22a04898b.tar.bz2 |
[libc++] Fix copy-paste damage in `ranges::rotate_copy` and its test (#74544)
Found while running libc++'s tests with MSVC's STL.
`ranges::rotate_copy` takes `forward_iterator`s as this test's comment
banner correctly depicts. However, this test had bogus assertions
expecting that `ranges::rotate_copy` would be constrained away for
not-quite-**bidi** iterators. @philnik777 confirmed that these were
copy-paste relics from the `ranges::reverse_copy` test.
I fixed this by replacing the assertions with the test types that aren't
quite **forward** iterators/ranges. Additionally, I noticed that the
top-level `test()` function was missing coverage with the weakest
possible `forward_iterator<int*>`.
This revealed that the product code in `ranges_rotate_copy.h` was
similarly damaged. In addition to fixing it by taking `forward_iterator`
and `forward_range` as depicted in the Standard, this drops the
inclusion of `<__iterator/reverse_iterator.h>` as this algorithm doesn't
need `std::__reverse_range`.
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions