[clang] [clang-tools-extra] [lldb] [llvm] [Support][JSON] Use `std::unordered_map` for object storage (PR #171230)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 22 12:46:10 PDT 2026


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `flang-aarch64-dylib` running on `linaro-flang-aarch64-dylib` while building `clang-tools-extra,clang,lldb,llvm` at step 5 "build-unified-tree".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/50/builds/22098

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 5 (build-unified-tree) failure: build (failure)
2.132 [7546/2/1] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/Demangle.cpp.o
2.234 [7546/1/2] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/ItaniumDemangle.cpp.o
2.311 [7545/1/3] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/MicrosoftDemangle.cpp.o
2.407 [7544/1/4] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/MicrosoftDemangleNodes.cpp.o
2.485 [7543/1/5] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/RustDemangle.cpp.o
2.578 [7541/2/6] Building CXX object lib/Demangle/CMakeFiles/LLVMDemangle.dir/DLangDemangle.cpp.o
8.551 [7541/1/7] Building CXX object lib/Support/CMakeFiles/LLVMSupport.dir/cmake_pch.hxx.pch
FAILED: lib/Support/CMakeFiles/LLVMSupport.dir/cmake_pch.hxx.pch 
/usr/local/bin/c++ -DLLVM_EXPORTS -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_EXTENSIVE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/tcwg-buildbot/worker/flang-aarch64-dylib/build/lib/Support -I/home/tcwg-buildbot/worker/flang-aarch64-dylib/llvm-project/llvm/lib/Support -I/home/tcwg-buildbot/worker/flang-aarch64-dylib/build/include -I/home/tcwg-buildbot/worker/flang-aarch64-dylib/llvm-project/llvm/include -I/home/tcwg-buildbot/worker/flang-aarch64-dylib/llvm-project/llvm/../third-party/siphash/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -Xclang -fno-pch-timestamp -Werror=global-constructors -O3 -DNDEBUG -std=c++17 -UNDEBUG -fno-exceptions -funwind-tables -fno-rtti -Winvalid-pch -fpch-instantiate-templates -Xclang -emit-pch -Xclang -include -Xclang /home/tcwg-buildbot/worker/flang-aarch64-dylib/build/lib/Support/CMakeFiles/LLVMSupport.dir/cmake_pch.hxx -x c++-header -MD -MT lib/Support/CMakeFiles/LLVMSupport.dir/cmake_pch.hxx.pch -MF lib/Support/CMakeFiles/LLVMSupport.dir/cmake_pch.hxx.pch.d -o lib/Support/CMakeFiles/LLVMSupport.dir/cmake_pch.hxx.pch -c /home/tcwg-buildbot/worker/flang-aarch64-dylib/build/lib/Support/CMakeFiles/LLVMSupport.dir/cmake_pch.hxx.cxx
In file included from <built-in>:1:
In file included from /home/tcwg-buildbot/worker/flang-aarch64-dylib/build/lib/Support/CMakeFiles/LLVMSupport.dir/cmake_pch.hxx:5:
In file included from /home/tcwg-buildbot/worker/flang-aarch64-dylib/llvm-project/llvm/include/llvm/Support/pch.h:13:
In file included from /home/tcwg-buildbot/worker/flang-aarch64-dylib/llvm-project/llvm/include/llvm/ADT/ADL.h:13:
In file included from /usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/iterator:66:
In file included from /usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/streambuf_iterator.h:35:
In file included from /usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/streambuf:41:
In file included from /usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/ios_base.h:41:
In file included from /usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/locale_classes.h:40:
In file included from /usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/string:40:
In file included from /usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/char_traits.h:39:
In file included from /usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/stl_algobase.h:64:
/usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/stl_pair.h:217:11: error: field has incomplete type 'const llvm::json::ObjectKey'
  217 |       _T1 first;                 ///< The first member
      |           ^
/usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/ext/aligned_buffer.h:91:28: note: in instantiation of template class 'std::pair<const llvm::json::ObjectKey, llvm::json::Value>' requested here
   91 |     : std::aligned_storage<sizeof(_Tp), __alignof__(_Tp)>
      |                            ^
/usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/hashtable_policy.h:234:43: note: in instantiation of template class '__gnu_cxx::__aligned_buffer<std::pair<const llvm::json::ObjectKey, llvm::json::Value>>' requested here
  234 |       __gnu_cxx::__aligned_buffer<_Value> _M_storage;
      |                                           ^
/usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/hashtable_policy.h:269:7: note: in instantiation of template class 'std::__detail::_Hash_node_value_base<std::pair<const llvm::json::ObjectKey, llvm::json::Value>>' requested here
  269 |     : _Hash_node_value_base<_Value>
      |       ^
/usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/hashtable_policy.h:279:7: note: in instantiation of template class 'std::__detail::_Hash_node_value<std::pair<const llvm::json::ObjectKey, llvm::json::Value>, true>' requested here
  279 |     , _Hash_node_value<_Value, _Cache_hash_code>
      |       ^
/usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/hashtable_policy.h:1813:25: note: in instantiation of template class 'std::__detail::_Hash_node<std::pair<const llvm::json::ObjectKey, llvm::json::Value>, true>' requested here
 1813 |         rebind_traits<typename __node_type::value_type>;
      |                                ^
/usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/hashtable_policy.h:811:42: note: in instantiation of template class 'std::__detail::_Hashtable_alloc<std::allocator<std::__detail::_Hash_node<std::pair<const llvm::json::ObjectKey, llvm::json::Value>, true>>>' requested here
  811 |       using __node_alloc_type = typename __hashtable_alloc::__node_alloc_type;
      |                                          ^
/usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/hashtable_policy.h:1006:14: note: in instantiation of template class 'std::__detail::_Insert_base<llvm::json::ObjectKey, std::pair<const llvm::json::ObjectKey, llvm::json::Value>, std::allocator<std::pair<const llvm::json::ObjectKey, llvm::json::Value>>, std::__detail::_Select1st, std::equal_to<llvm::json::ObjectKey>, llvm::json::Object::ObjectKeyHash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>>' requested here
 1006 |     : public _Insert_base<_Key, _Value, _Alloc, _ExtractKey, _Equal,
      |              ^
/usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/hashtable.h:186:14: note: in instantiation of template class 'std::__detail::_Insert<llvm::json::ObjectKey, std::pair<const llvm::json::ObjectKey, llvm::json::Value>, std::allocator<std::pair<const llvm::json::ObjectKey, llvm::json::Value>>, std::__detail::_Select1st, std::equal_to<llvm::json::ObjectKey>, llvm::json::Object::ObjectKeyHash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>>' requested here
  186 |       public __detail::_Insert<_Key, _Value, _Alloc, _ExtractKey, _Equal,
      |              ^
/usr/lib/gcc/aarch64-linux-gnu/11/../../../../include/c++/11/bits/unordered_map.h:105:18: note: in instantiation of template class 'std::_Hashtable<llvm::json::ObjectKey, std::pair<const llvm::json::ObjectKey, llvm::json::Value>, std::allocator<std::pair<const llvm::json::ObjectKey, llvm::json::Value>>, std::__detail::_Select1st, std::equal_to<llvm::json::ObjectKey>, llvm::json::Object::ObjectKeyHash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits<true, false, true>>' requested here
  105 |       _Hashtable _M_h;

```

</details>

https://github.com/llvm/llvm-project/pull/171230


More information about the llvm-commits mailing list