)]}'
{
  "commit": "31d704a1a8f2986051d0ebfe74b102968996c45e",
  "tree": "840345f2a71b8e226b3b4e08457cce716a65e0e1",
  "parents": [
    "677093525ed5a2f357482681a222274866088a2c"
  ],
  "author": {
    "name": "Nico Weber",
    "email": "thakis@chromium.org",
    "time": "Mon Apr 20 13:40:15 2026 -0700"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Mon Apr 20 13:42:22 2026 -0700"
  },
  "message": "Roll libc++ from cb9c06560a68 to af4386908c37 (64 revisions)\n\nbuildtools/third_party/libc++/__config_site needs two additions for\nthese two commits:\n\n2026-01-09 nikolasklauser@berlin.de [libc++] Introduce the notion of a minimum header version (#166074)\n2026-01-15 vturanskyy@gmail.com [libc++] Provide flag for RUNTIMES_USE_LIBC\u003dllvm-libc (#174967)\n\nDepends on:\nhttps://chromium-review.googlesource.com/c/chromium/src/+/7774536\n\nhttps://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/cb9c06560a68..af4386908c37\n\n2026-01-19 com.webkit.iidmsa@gmail.com [libc++] Use correct Apple platform naming (#176290)\n2026-01-19 com.webkit.iidmsa@gmail.com [libc++] Remove redundant code after static_assert(false) (#176294)\n2026-01-19 ldionne.2@gmail.com [libc++] Update maintainer list (#175044)\n2026-01-19 nikolasklauser@berlin.de [libc++] Remove benchmarks for ranges algorithms that have a std equivalent (#176138)\n2026-01-16 aidengrossman@google.com [libcxx] Bump release runner image version (#176184)\n2026-01-16 de34@live.cn [libc++][test] Fix `constexpr` stdver. for tests for `find_if(_not)` (#176303)\n2026-01-15 vturanskyy@gmail.com [libc++] Provide flag for RUNTIMES_USE_LIBC\u003dllvm-libc (#174967)\n2026-01-15 nikolasklauser@berlin.de Reapply \"[libc++] Optimize std::find_if\" (#175903) (#175921)\n2026-01-14 com.webkit.iidmsa@gmail.com [libc++] Add parentheses around shift operations in bitwise expressions (#175407)\n2026-01-14 ldionne.2@gmail.com [libc++][NFC] Refactor __request_unbuffered_mode (#168950)\n2026-01-14 ldionne.2@gmail.com [runtimes] Post-branch tasks for the LLVM 23 release (#176007)\n2026-01-14 ldionne.2@gmail.com [libc++] Remove CSV tracking for PSTL (#175797)\n2026-01-14 nikolasklauser@berlin.de [libc++] Add benchmarks to the associative containers that don\u0027t go to the end of the container (#175005)\n2026-01-14 prabhukr@google.com [libc++] Fix use of static in constexpr (#175667)\n2026-01-14 nikolasklauser@berlin.de Revert \"[libc++] Optimize std::find_if\" (#175903)\n2026-01-14 hghristov.rmm@gmail.com [libc++][ranges][NFC] Merge  `join_with_view`s `[[nodiscard]]` tests (#175734)\n2026-01-13 ldionne.2@gmail.com [libc++] Fix backslash substitution in RST synchronization scripts\n2026-01-13 ldionne.2@gmail.com [libc++] Improve the script to manage libc++ conformance issues (#172905)\n2026-01-13 hghristov.rmm@gmail.com [libc++][ranges][NFC] Cleanup `nodiscard.verify.cpp` tests (#175725)\n2026-01-13 nikolasklauser@berlin.de [libc++] Simplify __unwrap_iter a bit (#175153)\n2026-01-13 hghristov.rmm@gmail.com [libc++][ranges] Applied `[[nodiscard]]` to Range access (#173550)\n2026-01-13 de34@live.cn [libc++][test] Move the SFINAE test for return types of `quoted` to `libcxx/test/libcxx/` (#157026)\n2026-01-13 ldionne.2@gmail.com [libc++] Fix typo in math special functions\n2026-01-13 nikolasklauser@berlin.de [libc++] Replace uses of _LIBCPP_WEAK with [[gnu::weak]] (#171798)\n2026-01-13 nikolasklauser@berlin.de [libc++] Optimize std::find_if (#167697)\n2026-01-13 nikolasklauser@berlin.de [libc++] Remove empty container benchmarks that are meaningless from the associative containers (#175180)\n2026-01-13 hehiralbi@gmail.com [libc++][NFC] Remove unused __key_equiv from flat_multimap and flat_multiset (#175612)\n2026-01-13 nikolasklauser@berlin.de [libc++] Annotate filesystem::path with [[clang::lifetimebound]] (#175507)\n2026-01-13 cullen.rhodes@arm.com Bump version to 23.0.0-git\n2026-01-13 hghristov.rmm@gmail.com [libc++][istream] Removed `[[nodiscard]]` from `peek()` (#175591)\n2026-01-12 nikolasklauser@berlin.de [libc++] Remove some low value benchmarks (#175178)\n2026-01-12 ldionne.2@gmail.com [libc++] Fix filebuf resetting its underlying buffer upon close() (#168947)\n2026-01-12 hghristov.rmm@gmail.com [libc++][memory_resource] Applied `[[nodiscard]]` (#172134)\n2026-01-12 eiytoq@outlook.com [libc++] Removed unused internal helper functions from the midpoint.h header (#175514)\n2026-01-12 nikolasklauser@berlin.de [libc++] Make basic_string::__erase_external_with_move noexcept (#171591)\n2026-01-12 hghristov.rmm@gmail.com [libc++][scoped_allocator] Applied `[[nodiscard]]` (#175291)\n2026-01-11 hghristov.rmm@gmail.com [libc++][NFC] Refactored `nodiscard.verify.cpp` tests (#175285)\n2026-01-11 hghristov.rmm@gmail.com [libc++][chrono][NFC] Refactor `nodiscard.verify.cpp` (#175411)\n2026-01-10 aidengrossman@google.com [libcxx][Github] Bump container version in premerge CI\n2026-01-10 aidengrossman@google.com [libcxx][Github] Bump Github Runner Version to v2.331.0\n2026-01-10 eiytoq@outlook.com [libc++][mdspan][NFC] Remove redundant `else` and trailing semicolons (#175024)\n2026-01-10 wtranviet@proton.me [libc++] Guard `optional::iterator` range variables behind experimental (#175222)\n2026-01-10 de34@live.cn [libc++][NFC] Small cleanups for `any` (#175164)\n2026-01-10 vojta.michall@email.cz [libcxx] Add missing member `cend()` to `MinSequenceContainer` (#175114)\n2026-01-09 nikolasklauser@berlin.de [libc++] Make optional::iterator experimental (#173470)\n2026-01-09 nikolasklauser@berlin.de [libc++][NFC] Simplify the implementation of __mul_overflowed (#174956)\n2026-01-09 nikolasklauser@berlin.de [libc++][NFC] Refactor _LIBCPP_OVERRIDABLE_FUNCTION to be a normal attribute macro (#174964)\n2026-01-09 nikolasklauser@berlin.de [libc++] Fix {deque,vector}::append_range assuming too much about the types (#162438)\n2026-01-09 nikolasklauser@berlin.de [libc++] Refactor variant benchmarks (#174743)\n2026-01-09 nikolasklauser@berlin.de [libc++] Introduce the notion of a minimum header version (#166074)\n2026-01-09 wtranviet@proton.me [libc++] Correct `optional\u003cT\u0026\u003e` implementation (#174537)\n2026-01-08 eiytoq@outlook.com [libc++] Fix LWG 4265: std::midpoint should not accept const bool (#174579)\n2026-01-08 nikolasklauser@berlin.de [libc++][NFC] Update \u003cany\u003e to a more modern code style (#174619)\n2026-01-08 hghristov.rmm@gmail.com [libc++][future] Applied `[[nodiscard]]` (#174924)\n2026-01-08 nikolasklauser@berlin.de [libc++] Update our release notes for the upcoming release (#174625)\n2026-01-08 nikolasklauser@berlin.de [libc++] Avoid ranges::upper_bound inside \u003cformat\u003e (#173150)\n2026-01-08 nikolasklauser@berlin.de [libc++] Remove numpunct_byname::__init (#173283)\n2026-01-08 nikolasklauser@berlin.de [libc++] Optimize search_n (#171389)\n2026-01-08 hghristov.rmm@gmail.com [libc++][memory] Applied `[[nodiscard]]` to more functions (#172131)\n2026-01-08 hghristov.rmm@gmail.com [libc++][numeric]  Modernized `std::midpoint` (#174596)\n2026-01-08 de34@live.cn [libc++] Revert undesired `[[nodiscard]]` added to conversion functions (#173658)\n2026-01-07 hui.xie1990@gmail.com [libc++] Refactor poll_with_backoff (#173184)\n2026-01-07 ldionne.2@gmail.com [libc++] Force rebuilding of the CI Docker image\n2026-01-07 nikolasklauser@berlin.de [libc++] Add benchmark for std::find(vector\u003cshort\u003e)\n\nIf this roll has caused a breakage, revert this CL and stop the roller\nusing the controls here:\nhttps://autoroll.skia.org/r/libcxx-chromium\nPlease CC hans@chromium.org,thakis@chromium.org on the revert to ensure that a human\nis aware of the problem.\n\nTo file a bug in Chromium: https://bugs.chromium.org/p/chromium/issues/entry\n\nTo report a problem with the AutoRoller itself, please file a bug:\nhttps://issues.skia.org/issues/new?component\u003d1389291\u0026template\u003d1850622\n\nDocumentation for the AutoRoller is here:\nhttps://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md\n\nBug: 503250165\nChange-Id: I927d67b5eeb35cb15f917542e08cc7c0b4c58884\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7495232\nReviewed-by: Arthur Eubanks \u003caeubanks@google.com\u003e\nCommit-Queue: Nico Weber \u003cthakis@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1617751}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: 1a580b58216b763955184e9796d04bbac5fc6010\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "187b3111b05d1404482584f6f43c78bba53f6f20",
      "old_mode": 33188,
      "old_path": "symbols_arm64_dbg.def",
      "new_id": "9f89fc244ffb318088f8943454dfda00fdeac8d9",
      "new_mode": 33188,
      "new_path": "symbols_arm64_dbg.def"
    },
    {
      "type": "modify",
      "old_id": "9816860e0b1bc93689536c3c0481fb631a673b77",
      "old_mode": 33188,
      "old_path": "symbols_arm64_dbg_cxx23.def",
      "new_id": "eb868e501390694662ac273873a5fe61e7e3c26b",
      "new_mode": 33188,
      "new_path": "symbols_arm64_dbg_cxx23.def"
    },
    {
      "type": "modify",
      "old_id": "c9fa4181e1924dfcb346683adf88787be882b64d",
      "old_mode": 33188,
      "old_path": "symbols_x64_dbg.def",
      "new_id": "0fab1ef2da771cce53a6f3548b22ac1058cb0e81",
      "new_mode": 33188,
      "new_path": "symbols_x64_dbg.def"
    },
    {
      "type": "modify",
      "old_id": "919aaeff37bf65196dafbc5178bbc4af76987b3e",
      "old_mode": 33188,
      "old_path": "symbols_x64_dbg_cxx23.def",
      "new_id": "dff2a464a5cb764a07d430b2e7dd40fc300b2004",
      "new_mode": 33188,
      "new_path": "symbols_x64_dbg_cxx23.def"
    },
    {
      "type": "modify",
      "old_id": "ddedd9b97aa2a4ae80de3d8882fbd36baa0d53a0",
      "old_mode": 33188,
      "old_path": "symbols_x86_dbg.def",
      "new_id": "c4e8432e88f456d966f2c35a8cad53ac29f7b5e4",
      "new_mode": 33188,
      "new_path": "symbols_x86_dbg.def"
    },
    {
      "type": "modify",
      "old_id": "456d03ec449124ee6f441c517d55c221b6b59663",
      "old_mode": 33188,
      "old_path": "symbols_x86_dbg_cxx23.def",
      "new_id": "f86f3ff84ee4fd24a210957faeedc7b8e58097ed",
      "new_mode": 33188,
      "new_path": "symbols_x86_dbg_cxx23.def"
    }
  ]
}
