Map std::hash to its providing standard headers. Backport of https://github.com/include-what-you-use/include-what-you-use/pull/2013 (commit 52f85e1f4d990f55fc6556d543eb051d79364a16) to the clang_22 release branch. Drop once the upstream fix lands in the IWYU branch tracked by ci/test/00_setup_env_native_iwyu.sh. --- a/std_symbol_map.inc +++ b/std_symbol_map.inc @@ -1054,12 +1054,27 @@ { "std::has_unique_object_representations_v", kPrivate, "", kPublic }, { "std::has_virtual_destructor", kPrivate, "", kPublic }, { "std::has_virtual_destructor_v", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, { "std::hash>", kPrivate, "", kPublic }, { "std::hash, :0>>", kPrivate, "", kPublic }, { "std::hash, :0>>", kPrivate, "", kPublic }, { "std::hash, :0>>", kPrivate, "", kPublic }, { "std::hash, :0>>", kPrivate, "", kPublic }, { "std::hash, :0>>", kPrivate, "", kPublic }, +{ "std::hash>", kPrivate, "", kPublic }, { "std::hash>", kPrivate, "", kPublic }, { "std::hash", kPrivate, "", kPublic }, { "std::hash", kPrivate, "", kPublic }, @@ -1069,6 +1084,7 @@ { "std::hash>", kPrivate, "", kPublic }, { "std::hash", kPrivate, "", kPublic }, { "std::hash", kPrivate, "", kPublic }, +{ "std::hash", kPrivate, "", kPublic }, { "std::hash", kPrivate, "", kPublic }, { "std::hash", kPrivate, "", kPublic }, { "std::hash", kPrivate, "", kPublic },