about summary refs log tree commit diff
path: root/absl/container/internal
diff options
context:
space:
mode:
authorXiaoyi Zhang <zhangxy988@gmail.com>2018-10-31T14·34-0400
committerGitHub <noreply@github.com>2018-10-31T14·34-0400
commita705aa78dc76fc5c79d501e61dcc077eca68a8a4 (patch)
tree252465d1d0d040e47fb4bb594d229a3234487073 /absl/container/internal
parenta4c3ffff11eec0ee45742f915c255e9f870b7e0f (diff)
parent26da89db3e927572c117e446a338ee435a963bf1 (diff)
Merge pull request #194 from Mizux/windows
absl::container Windows VS 15.8 (fix #192)
Diffstat (limited to 'absl/container/internal')
-rw-r--r--absl/container/internal/raw_hash_map.h7
1 files changed, 5 insertions, 2 deletions
diff --git a/absl/container/internal/raw_hash_map.h b/absl/container/internal/raw_hash_map.h
index 1edc0071e7de..05270ef34c6e 100644
--- a/absl/container/internal/raw_hash_map.h
+++ b/absl/container/internal/raw_hash_map.h
@@ -39,11 +39,14 @@ class raw_hash_map : public raw_hash_set<Policy, Hash, Eq, Alloc> {
   using MappedConstReference = decltype(P::value(
       std::addressof(std::declval<typename raw_hash_map::const_reference>())));
 
+  using KeyArgImpl = container_internal::KeyArg<IsTransparent<Eq>::value &&
+                                                IsTransparent<Hash>::value>;
+
  public:
   using key_type = typename Policy::key_type;
   using mapped_type = typename Policy::mapped_type;
-  template <typename K>
-  using key_arg = typename raw_hash_map::raw_hash_set::template key_arg<K>;
+  template <class K>
+  using key_arg = typename KeyArgImpl::template type<K, key_type>;
 
   static_assert(!std::is_reference<key_type>::value, "");
   // TODO(alkis): remove this assertion and verify that reference mapped_type is