tree 5e56050b983b9e7665e2d796f5eed8f664738c7d
parent c3563670ef8f0973ff686f6a0d95fc0b65268817
author Nico Weber <thakis@chromium.org> 1757627369 -0700
committer Copybara-Service <copybara-worker@google.com> 1757627562 -0700

Roll libc++ from b87b2bb112f8 to cc50fde7f2e4 (17 revisions)

https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/b87b2bb112f8..cc50fde7f2e4

2025-09-11 ldionne.2@gmail.com [libc++] Ensure benchmark comparison output ends with a newline
2025-09-11 ldionne.2@gmail.com [libc++] Add scripts to build and test libc++ at a specified commit (#158104)
2025-09-11 vinay_deshmukh@outlook.com [libc++] Remove UB from `std::__tree_node` construction (#153908)
2025-09-11 nikolasklauser@berlin.de [libc++][C++03] partially cherry-pick #122641 (#157596)
2025-09-10 corentinjabot@gmail.com [Libc++][NFC] Fix typos in tests (#157699)
2025-09-10 ldionne.2@gmail.com [libc++] Remove the unused cat_files.py script (#157744)
2025-09-10 vinay_deshmukh@outlook.com [NFC][libc++] Fix typo in `libcxx/include/__memory/pointer_traits.h` (#157304)
2025-09-09 ldionne.2@gmail.com [libc++] Start tracking Github issues in status pages (#149833)
2025-09-09 ldionne.2@gmail.com [libc++] Fix SPEC globbing pattern
2025-09-09 ldionne.2@gmail.com [libc++] Update utilities to compare benchmarks (#157556)
2025-09-09 nikolasklauser@berlin.de [libc++] Remove some of the type aliases in __hash_table (#157114)
2025-09-09 nikolasklauser@berlin.de [libc++][C++03] cherry-pick #112102 (#157104)
2025-09-09 pirama@google.com [libc++] Update owners of Android CI in BOT_OWNERS.txt (#157183)
2025-09-09 huberjn@outlook.com [libc++] Fix missing macro definition for lgamma (#157610)
2025-09-09 nikolasklauser@berlin.de [libc++][NFC] Inline function in string.cons/copy_alloc.pass.cpp that is used only once (#157429)
2025-09-09 nikolasklauser@berlin.de [libc++][NFC] Move some really simple function defintions into the body of __tree (#157424)
2025-09-08 ych@fb.com [libc++] Conditionally declare `lgamma_r` as noexcept (#156547)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/libcxx-chromium
Please CC hans@chromium.org,jwata@google.com,thakis@chromium.org on the revert to ensure that a human
is aware of the problem.

To file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Tbr: hans@chromium.org,jwata@google.com,thakis@chromium.org
Binary-Size: libc++ roll, barely above threshold
Change-Id: I128c61855786563ad1a0bcddb43809f247933bc0
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6940823
Commit-Queue: Nico Weber <thakis@chromium.org>
Owners-Override: Nico Weber <thakis@chromium.org>
Reviewed-by: Devon Loehr <dloehr@google.com>
Cr-Commit-Position: refs/heads/main@{#1514535}
NOKEYCHECK=True
GitOrigin-RevId: b1b49a396bc756b2dc4947a114577fc19376d01c
