)]}'
{
  "commit": "9cb6988560faf9942365ff938669f4806e3cfc10",
  "tree": "4b7627ced963511c1e404577b1187a9a5a88f9dd",
  "parents": [
    "fd07f9469a3a58fe4ea4ede95c5ac2bb7366409c"
  ],
  "author": {
    "name": "Alan Zhao",
    "email": "ayzhao@google.com",
    "time": "Mon Jul 18 20:49:41 2022 +0000"
  },
  "committer": {
    "name": "Copybara-Service",
    "email": "copybara-worker@google.com",
    "time": "Mon Jul 18 14:01:20 2022 -0700"
  },
  "message": "Roll src/buildtools/third_party/libc++/trunk/ b1269813e..88bf40704 (417 commits)\n\nAdditionally, reenable libc++ debug mode with ThinLTO since this is\nresolved by https://reviews.llvm.org/D122941.\n\nhttps://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git/+log/b1269813eaf5..88bf4070487f\n\n$ git log b1269813e..88bf40704 --date\u003dshort --no-merges --format\u003d\u0027%ad %ae %s\u0027\n2022-06-25 nikolasklauser [libc++] Test the size of basic_string\n2022-07-14 nikolasklauser [libc++] Allow setting _LIBCPP_OVERRIDABLE_FUNC_VIS\n2022-07-11 hui.xie1990 [libc++][ranges] implement `std::ranges::set_symmetric_difference`\n2022-07-13 nikolasklauser [libc++] Implement ranges::find_end, ranges::search{, _n}\n2022-07-09 koraq [libc++][format] Improves parsing speed.\n2022-06-26 koraq [libc++][chrono] Adds operator\u003c\u003d\u003e for day.\n2022-07-13 nikolasklauser Revert \"[libc++] Implement ranges::find_end, ranges::search{, _n}\"\n2022-07-12 nikolasklauser [libc++] Implement ranges::find_end, ranges::search{, _n}\n2022-07-12 varconst [lib++][ranges][NFC] Refactor `iterator_operations.h` to use tags.\n2022-07-12 koraq [libc++][test] Adds spaceship support to macros.\n2022-07-11 daltenty [libc++][NFC] Add MVS guard for locale_mgmt_zos.h\n2022-07-12 koraq [libc++] Fixes CI.\n2022-07-05 koraq [libc++][format] Adds integral formatter benchmarks.\n2022-07-10 koraq [libc++][chrono] Avoid tautological comparisons.\n2022-07-12 varconst [libc++][ranges][NFC] Implement the repetitive parts of the remaining range algorithms:\n2022-07-12 varconst [libc++][ranges][NFC] Consolidate some repetitive range algorithm tests:\n2022-07-08 raul.tambre [libc++] Undeprecate ATOMIC_FLAG_INIT (LWG3659)\n2022-07-11 hui.xie1990 [libc++] Rename variables to use the snake case instead of camel case\n2022-07-11 nikolasklauser [libc++] Implement ranges::{reverse, rotate}_copy\n2022-07-08 hui.xie1990 [libc++][ranges] implement `std::ranges::set_intersection`\n2021-10-05 koraq [libc++][format] Use forwarding references.\n2022-07-10 koraq [libc++][NFC] Update #ifdef comments.\n2022-07-10 i.trofimow [libc++] Don\u0027t call key_eq in unordered_map/set rehashing routine\n2022-07-09 brad [libcxx] Uglify __support/musl\n2022-07-08 brad [libcxx] Uglify __support/openbsd\n2022-06-30 ldionne.2 [libc++] Always build c++experimental.a\n2022-07-08 varconst [libc++][ranges] Implement modifying heap algorithms:\n2022-07-07 varconst [libc++][ranges] Implement `ranges::nth_element`.\n2022-07-08 nikolasklauser [libc++] Make parameter names consistent and enforce the naming style using readability-identifier-naming\n2022-07-07 ldionne.2 [libc++] Re-apply the use of ABI tags to provide per-TU insulation\n2022-06-26 hui.xie1990 [libcxx][ranges] implement `std::ranges::set_difference`\n2022-07-07 martin [libcxx] Make LIBCXX_HERMETIC_STATIC_LIBRARY apply to libc++experimental too\n2022-07-05 hui.xie1990 [libcxx][ranges] Create a test tool `ProxyIterator` that customises `iter_move` and `iter_swap`\n2022-07-07 nikolasklauser [libc++] Add test for algorithm result type alias declarations\n2022-07-07 martin [libcxx] [ci] Don\u0027t disable libc++experimental in mingw builds\n2022-07-07 koraq [libc++][doc] Removes a colon in a title.\n2022-07-07 jonas Revert \"[libc++] Use ABI tags instead of internal linkage to provide per-TU insulation\"\n2022-07-01 koraq [libc++][format] Implements 128-bit support.\n2022-06-30 koraq [libc++] Implements 128-bit support in to_chars.\n2021-12-28 koraq [libc++[format][NFC] Removes dead code.\n2021-12-28 koraq [libc++][format] Improve floating-point formatters.\n2022-07-07 nikolasklauser [libc++] Fix a few things in RangesAlgorithms.csv\n2022-06-09 ldionne.2 [libc++] Use ABI tags instead of internal linkage to provide per-TU insulation\n2022-07-05 ldionne.2 [clang] Correct the macOS version that supports aligned allocation\n2022-07-03 koraq [libc++] Improves pragma system_header test.\n2022-07-06 nikolasklauser [libc++] Implement ranges::remove{, _if}\n2022-07-04 nikolasklauser [libc++] default-construct moved-from test-iterators\n2022-07-04 nikolasklauser [libc++] Prefer __has_builtin for detecting compiler-provided type_traits\n2022-07-05 nikolasklauser [libc++] Fix __split_buffer::__construct_at_end definition to match declaration\n2022-07-04 nikolasklauser [libc++] Use __is_exactly_{input, forward}_iterator\n(...)\n2022-04-05 aeubanks [libcxx] Add flag to disable __builtin_assume in _LIBCPP_ASSERT\n2022-04-04 ldionne.2 [libc++] Add back-deployment testing on arm64 macs\n2022-04-07 nikolasklauser [libc++][ranges] Implement ranges::count{, _if}\n2022-04-06 nikolasklauser [libc++] Remove redundant __invoke_constexpr functions\n2022-04-07 nikolasklauser [libc++][ranges] Add implicit conversion to bool test for ranges::find{, if, if_not}\n2022-02-25 martin [libcxx] [test] Stop defining LIBCXX-WINDOWS-FIXME\n2022-04-05 koraq [libc++] Use cpp20_output_iterator in tests.\n2022-04-03 koraq [NFC][libc++] Modularize chrono\u0027s calendar.\n2021-10-26 ldionne.2 [libc++] Support arrays in make_shared and allocate_shared (P0674R1)\n2022-03-10 martin [libcxx] [test] Remove UNSUPPORTED markings for mingw issues that no longer are present in CI\n2022-04-05 ldionne.2 [libc++] Remove error about _LIBCPP_ALTERNATE_STRING_LAYOUT not being supported anymore\n2022-04-05 ldionne.2 [libc++][NFC] Remove stray whitespace in comment\n2022-01-20 martin [libcxx] [test] Fix the locale ctype widen tests on Windows\n2022-04-05 hui.xie1990 [libc++] add global variable template std::views::empty\n2022-03-19 koraq [libc++][test] Adds an cpp20_output_iterator.\n2022-04-04 ldionne.2 [libc++] Tidy up tests for deduction guides and other compile-time failing properties in std::string\n2022-04-05 ldionne.2 [libc++] Silence new deprecation warnings for C functions in tests\n2022-04-05 nikolasklauser [libc++][ranges] Implement ranges::transform\n2022-03-25 ldionne.2 [libc++] Implement tests for private headers using the new generator\n2022-03-23 martin [libcxx] Stop recommending setting LIBCXX_HAS_WIN32_THREAD_API in the MinGW builds\n2022-03-31 ldionne.2 [libc++] Fix std::is_array\u003cT[0]\u003e and add tests\n2022-04-04 ldionne.2 [libc++][NFC] Rename generate_assertion_tests.py to generate_header_tests.py\n2022-03-25 ldionne.2 [libc++] Implement all public header tests using the new generator\n2022-04-03 ldionne.2 [libc++] Remove unused \u003ciosfwd\u003e include from \u003c__debug\u003e\n2022-04-03 ldionne.2 [libc++][NFC] Fix weird indentation in test\n2022-04-03 nikolasklauser [libc++][ranges] Implement ranges::max\n2022-03-31 nikolasklauser [libc++] Canonicalize the ranges results and their tests\n2022-03-30 martin [libcxx] [test] Avoid spurious test breakage in clang-cl-dll configs with newer CMake\n2022-03-31 martin [libcxx] [ci] Enable -Werror for libcxxabi and libunwind too\n2022-03-31 koraq [libc++] Fixes calendar function visibility.\n2022-03-30 koraq [libc++][ci] Installs Japanese locale in Docker.\n2022-03-27 koraq [libc++][doc] Update formatting status.\n2022-03-31 ldionne.2 [libc++] Install psutil on the macOS nodes\n2022-03-23 ldionne.2 [libc++] Remove the __libcpp_version file\n2022-03-02 ldionne.2 [libc++] Add a CI job running MSAN\n2022-03-30 martin [libcxx] [doc] Update Windows build instructions after deprecating the legacy standalone builds\n2022-03-25 ldionne.2 [libc++] Ensure that all public C++ headers include \u003c__assert\u003e\n2022-03-04 ldionne.2 [libunwind] Add a _LIBUNWIND_VERSION macro\n2022-03-24 ldionne.2 [libc++] Use __builtin_expect and __builtin_assume in _LIBCPP_ASSERT\n2022-03-29 ldionne.2 [libc++][NFC] Fix typo in comment\n2022-03-28 ldionne.2 [libc++][libc++abi] Serialize the enable_assertions Lit parameter in the generated config\n2022-03-28 brad [libcxx] random_device, specify optimal entropy properties for all OS\u0027s using arc4random()\n2022-03-27 koraq [libc++][doc] Update format implementation status.\n2021-09-04 koraq [libc++][format][2/6] Adds a __output_iterator.\n2022-03-23 ldionne.2 [libc++] Remove the _LIBCPP_BOOL_CONSTANT macro\n2022-03-18 nikolasklauser [libc++] Rename __identity to __type_identity\n2022-03-24 ldionne.2 [libc++] Audit all uses of _LIBCPP_ASSERT and _LIBCPP_DEBUG_ASSERT\n2022-03-24 ldionne.2 [libc++][NFC] Refactor the ABI changelog\n2022-03-24 ldionne.2 [libc++][NFC] Update ABI changelog to account for new assertion handler\n2022-03-03 ldionne.2 [libc++] Add a lightweight overridable assertion handler\n\nCreated with:\n  roll-dep src/buildtools/third_party/libc++/trunk\n\nAdditional changes to get this to build:\n* Update #pragma clang_max_tokens_here as necessary.\n* Disable -Wdeprecated-declarations for zxcvbn, as it uses\n  std::wstring_convert, which is deprecated but doesn\u0027t yet have a\n  replacement.\n* Define _LIBCPP_ASSERTIONS_DISABLE_ASSUME to resolve an msan error\n  (crbug.com/1344905).\n\nCq-Include-Trybots: chromium/try:chromeos-amd64-generic-cfi-thin-lto-rel\nCq-Include-Trybots: chromium/try:dawn-win10-x86-deps-rel\nCq-Include-Trybots: chromium/try:linux-chromeos-dbg\nCq-Include-Trybots: chromium/try:linux_chromium_cfi_rel_ng\nCq-Include-Trybots: chromium/try:linux_chromium_chromeos_msan_rel_ng\nCq-Include-Trybots: chromium/try:linux_chromium_msan_rel_ng\nCq-Include-Trybots: chromium/try:mac11-arm64-rel,mac_chromium_asan_rel_ng\nCq-Include-Trybots: chromium/try:win-asan,win7-rel\nCq-Include-Trybots: chromium/try:android-official,fuchsia-official\nCq-Include-Trybots: chromium/try:mac-official,linux-official\nCq-Include-Trybots: chromium/try:win-official,win32-official\nCq-Include-Trybots: chromium/try:linux-swangle-try-x64,win-swangle-try-x86\nCq-Include-Trybots: chrome/try:linux-chromeos-chrome\nCq-Include-Trybots: chrome/try:win-chrome,win64-chrome,linux-chrome,mac-chrome\nCq-Include-Trybots: chrome/try:linux-pgo,mac-pgo,win32-pgo,win64-pgo\nBug: 1273285,1344570,1327706\nChange-Id: I8d8dbb4943a46b543cba5f95afd0fa4daf851b71\nReviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/3732470\nCommit-Queue: Nico Weber \u003cthakis@chromium.org\u003e\nReviewed-by: Nico Weber \u003cthakis@chromium.org\u003e\nOwners-Override: Nico Weber \u003cthakis@chromium.org\u003e\nReviewed-by: Hans Wennborg \u003chans@chromium.org\u003e\nCr-Commit-Position: refs/heads/main@{#1025392}\nNOKEYCHECK\u003dTrue\nGitOrigin-RevId: f93fc0280698e5251450d8867186be14642b4911\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1f1d3bdcd4a96561ffd31daa2d3b348e60a48aad",
      "old_mode": 33188,
      "old_path": "symbols_arm64_dbg.def",
      "new_id": "86f46aca853032366b71b0d7a145551ecd3a981b",
      "new_mode": 33188,
      "new_path": "symbols_arm64_dbg.def"
    },
    {
      "type": "modify",
      "old_id": "f66b8ce039528490e6eaa425e1c1f004bd4dd983",
      "old_mode": 33188,
      "old_path": "symbols_arm64_rel.def",
      "new_id": "2c163d543da029ed25ef1550176e723bfeed3bf4",
      "new_mode": 33188,
      "new_path": "symbols_arm64_rel.def"
    },
    {
      "type": "modify",
      "old_id": "534c42190c96c58656db2cbfa73545a1de82272b",
      "old_mode": 33188,
      "old_path": "symbols_x64_dbg.def",
      "new_id": "cc25fa43d4cfa29ddecbc718e830d8cfd36a7906",
      "new_mode": 33188,
      "new_path": "symbols_x64_dbg.def"
    },
    {
      "type": "modify",
      "old_id": "64b0a1fbae10d6361971967a0a68ff095111f0a6",
      "old_mode": 33188,
      "old_path": "symbols_x64_rel.def",
      "new_id": "1d8611075270c271d19092448d71ea7fec47bb1f",
      "new_mode": 33188,
      "new_path": "symbols_x64_rel.def"
    },
    {
      "type": "modify",
      "old_id": "8113ec7989b0025e1943b7dd75f94a467137a7f2",
      "old_mode": 33188,
      "old_path": "symbols_x64_rel_asan.def",
      "new_id": "0feb0b211ba2b3a8815e53b30d3e659718f22fc4",
      "new_mode": 33188,
      "new_path": "symbols_x64_rel_asan.def"
    },
    {
      "type": "modify",
      "old_id": "d0387d357594b15e8d090f1595996ac4ee6b0dba",
      "old_mode": 33188,
      "old_path": "symbols_x86_dbg.def",
      "new_id": "c19bb5e83c5438892760a774bb41f6714fb42676",
      "new_mode": 33188,
      "new_path": "symbols_x86_dbg.def"
    },
    {
      "type": "modify",
      "old_id": "66b8ae84522c4b6c9bf6732c0f777ececb9e8886",
      "old_mode": 33188,
      "old_path": "symbols_x86_rel.def",
      "new_id": "434e479a1fc319048c192f15a6cc748b0e47cef1",
      "new_mode": 33188,
      "new_path": "symbols_x86_rel.def"
    }
  ]
}
