diff --git a/BUILD b/BUILD
index 8be2c685cd8..91cd3488408 100644
--- a/BUILD
+++ b/BUILD
@@ -551,6 +551,7 @@ grpc_cc_library(
"src/core/lib/gprpp/global_config_generic.h",
"src/core/lib/gprpp/host_port.h",
"src/core/lib/gprpp/manual_constructor.h",
+ "src/core/lib/gprpp/map.h",
"src/core/lib/gprpp/memory.h",
"src/core/lib/gprpp/mpscq.h",
"src/core/lib/gprpp/string_view.h",
diff --git a/BUILD.gn b/BUILD.gn
index 40dfa4bf46c..9ec801e373c 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -156,6 +156,7 @@ config("grpc_config") {
"src/core/lib/gprpp/host_port.cc",
"src/core/lib/gprpp/host_port.h",
"src/core/lib/gprpp/manual_constructor.h",
+ "src/core/lib/gprpp/map.h",
"src/core/lib/gprpp/memory.h",
"src/core/lib/gprpp/mpscq.cc",
"src/core/lib/gprpp/mpscq.h",
diff --git a/build_autogenerated.yaml b/build_autogenerated.yaml
index 560904729ad..d01ff14cc58 100644
--- a/build_autogenerated.yaml
+++ b/build_autogenerated.yaml
@@ -299,6 +299,7 @@ libs:
- src/core/lib/gprpp/global_config_generic.h
- src/core/lib/gprpp/host_port.h
- src/core/lib/gprpp/manual_constructor.h
+ - src/core/lib/gprpp/map.h
- src/core/lib/gprpp/memory.h
- src/core/lib/gprpp/mpscq.h
- src/core/lib/gprpp/string_view.h
diff --git a/gRPC-C++.podspec b/gRPC-C++.podspec
index b94955f47a4..77e015d1d97 100644
--- a/gRPC-C++.podspec
+++ b/gRPC-C++.podspec
@@ -419,6 +419,7 @@ Pod::Spec.new do |s|
'src/core/lib/gprpp/global_config_generic.h',
'src/core/lib/gprpp/host_port.h',
'src/core/lib/gprpp/manual_constructor.h',
+ 'src/core/lib/gprpp/map.h',
'src/core/lib/gprpp/memory.h',
'src/core/lib/gprpp/mpscq.h',
'src/core/lib/gprpp/orphanable.h',
@@ -868,6 +869,7 @@ Pod::Spec.new do |s|
'src/core/lib/gprpp/global_config_generic.h',
'src/core/lib/gprpp/host_port.h',
'src/core/lib/gprpp/manual_constructor.h',
+ 'src/core/lib/gprpp/map.h',
'src/core/lib/gprpp/memory.h',
'src/core/lib/gprpp/mpscq.h',
'src/core/lib/gprpp/orphanable.h',
diff --git a/gRPC-Core.podspec b/gRPC-Core.podspec
index d04fa0aaabc..a9c11d7d933 100644
--- a/gRPC-Core.podspec
+++ b/gRPC-Core.podspec
@@ -611,6 +611,7 @@ Pod::Spec.new do |s|
'src/core/lib/gprpp/host_port.cc',
'src/core/lib/gprpp/host_port.h',
'src/core/lib/gprpp/manual_constructor.h',
+ 'src/core/lib/gprpp/map.h',
'src/core/lib/gprpp/memory.h',
'src/core/lib/gprpp/mpscq.cc',
'src/core/lib/gprpp/mpscq.h',
@@ -1224,6 +1225,7 @@ Pod::Spec.new do |s|
'src/core/lib/gprpp/global_config_generic.h',
'src/core/lib/gprpp/host_port.h',
'src/core/lib/gprpp/manual_constructor.h',
+ 'src/core/lib/gprpp/map.h',
'src/core/lib/gprpp/memory.h',
'src/core/lib/gprpp/mpscq.h',
'src/core/lib/gprpp/orphanable.h',
diff --git a/grpc.gemspec b/grpc.gemspec
index e2f6580651e..7042206375a 100644
--- a/grpc.gemspec
+++ b/grpc.gemspec
@@ -533,6 +533,7 @@ Gem::Specification.new do |s|
s.files += %w( src/core/lib/gprpp/host_port.cc )
s.files += %w( src/core/lib/gprpp/host_port.h )
s.files += %w( src/core/lib/gprpp/manual_constructor.h )
+ s.files += %w( src/core/lib/gprpp/map.h )
s.files += %w( src/core/lib/gprpp/memory.h )
s.files += %w( src/core/lib/gprpp/mpscq.cc )
s.files += %w( src/core/lib/gprpp/mpscq.h )
diff --git a/package.xml b/package.xml
index c5294e90da6..862ea4f566c 100644
--- a/package.xml
+++ b/package.xml
@@ -513,6 +513,7 @@
+
diff --git a/src/core/ext/filters/client_channel/backend_metric.cc b/src/core/ext/filters/client_channel/backend_metric.cc
index dbc296a39d4..b36614f5b80 100644
--- a/src/core/ext/filters/client_channel/backend_metric.cc
+++ b/src/core/ext/filters/client_channel/backend_metric.cc
@@ -26,12 +26,12 @@ namespace grpc_core {
namespace {
template
-std::map ParseMap(
+std::map ParseMap(
udpa_data_orca_v1_OrcaLoadReport* msg,
EntryType** (*entry_func)(udpa_data_orca_v1_OrcaLoadReport*, size_t*),
upb_strview (*key_func)(const EntryType*),
double (*value_func)(const EntryType*), Arena* arena) {
- std::map result;
+ std::map result;
size_t size;
const auto* const* entries = entry_func(msg, &size);
for (size_t i = 0; i < size; ++i) {
diff --git a/src/core/ext/filters/client_channel/client_channel.cc b/src/core/ext/filters/client_channel/client_channel.cc
index 97fc16822ef..a66a3a615c7 100644
--- a/src/core/ext/filters/client_channel/client_channel.cc
+++ b/src/core/ext/filters/client_channel/client_channel.cc
@@ -26,7 +26,6 @@
#include
#include
-#include