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