llvm-project/libcxx
Christopher Di Bella d87f159ab6 [libcxx][NFC] removes `swap`'s dependency on `swap_ranges`
Under the as-if rule, we can directly implement the array overload for
`std::swap`. By removing this circular dependency where `swap` is
implemented in terms of `swap_ranges` and `swap_ranges` is defined in
terms of `swap`, we can split them into their own headers. This will:

* limit the surface area in which Hyrum's law can bite us;
* force users to include the correct headers;
* make finding the definitions trivial (`swap` is a utility;
  `swap_ranges` is an algorithm).

Differential Revision: https://reviews.llvm.org/D104760
2021-06-24 17:57:29 +00:00
..
benchmarks [libcxx][nfc] prefixes test type `input_iterator` with `cpp17_` 2021-05-02 05:02:59 +00:00
cmake [libc++abi] Remove the LIBCXXABI_ENABLE_PIC option 2021-06-10 12:26:31 -04:00
docs [libcxx][doc] corrects LWG links in the One Ranges section 2021-06-22 19:00:23 +00:00
include [libcxx][NFC] removes `swap`'s dependency on `swap_ranges` 2021-06-24 17:57:29 +00:00
lib [libc++] Disentangle std::pointer_safety 2021-05-03 14:33:49 -04:00
src [libcxx] Fix a case of -Wundef warnings regarding _POSIX_TIMERS 2021-06-17 13:02:34 +03:00
test [libcxx][nfc] Add one more test case for contiguous_range. 2021-06-24 10:45:25 -07:00
utils [libc++] Remove ad-hoc modules tests that are now unnecessary 2021-06-23 09:42:56 -04:00
.clang-format [libcxx][NFC] removes IndentRequires from .clang-format 2021-04-15 19:28:45 +00:00
.gitignore [libcxx] Fix .gitignore to not exclude test directories 2020-03-25 17:52:23 -07:00
CMakeLists.txt [libc++] Support per-target __config_site in per-target runtime build 2021-04-28 14:27:16 -07:00
CREDITS.TXT [libcxx] Adds [concept.same] 2020-04-08 18:00:13 -04:00
LICENSE.TXT
TODO.TXT [libc++][NFC] Remove outdated TODO item 2020-07-08 13:04:33 -04:00
appveyor-reqs-install.cmd
appveyor.yml