[libc++] Fix unwrapping ranges with different iterators and sentinels
authorNikolas Klauser <nikolasklauser@berlin.de>
Wed, 27 Jul 2022 21:52:45 +0000 (23:52 +0200)
committerNikolas Klauser <nikolasklauser@berlin.de>
Thu, 28 Jul 2022 08:22:41 +0000 (10:22 +0200)
commite01b4fe956dd038fed71cf3c552d3383905d022a
treef827001df91e21dd66e85b91c2dd9eed1ef42d00
parentf2c7f75f61bdc1009129ee33600d574cac9214d9
[libc++] Fix unwrapping ranges with different iterators and sentinels

Reviewed By: ldionne, huixie90, #libc

Spies: arichardson, sstefan1, libcxx-commits, mgorny

Differential Revision: https://reviews.llvm.org/D129040
libcxx/.clang-format
libcxx/include/CMakeLists.txt
libcxx/include/__algorithm/copy.h
libcxx/include/__algorithm/unwrap_range.h [new file with mode: 0644]
libcxx/include/module.modulemap.in
libcxx/test/libcxx/private_headers.verify.cpp
libcxx/test/std/algorithms/alg.modifying.operations/alg.copy/ranges.copy.pass.cpp