@@ -600,10 +600,7 @@ erase_if(multimap<Key, T, Compare, Allocator>& c, Predicate pred);  // C++20
600600#  include  < __ranges/from_range.h> 
601601#  include  < __tree> 
602602#  include  < __type_traits/container_traits.h> 
603- #  include  < __type_traits/desugars_to.h> 
604603#  include  < __type_traits/is_allocator.h> 
605- #  include  < __type_traits/is_convertible.h> 
606- #  include  < __type_traits/make_transparent.h> 
607604#  include  < __type_traits/remove_const.h> 
608605#  include  < __type_traits/type_identity.h> 
609606#  include  < __utility/forward.h> 
@@ -669,11 +666,6 @@ public:
669666#  endif 
670667};
671668
672- template  <class  _Key , class  _MapValueT , class  _Compare >
673- struct  __make_transparent <__map_value_compare<_Key, _MapValueT, _Compare> > {
674-   using  type _LIBCPP_NODEBUG = __map_value_compare<_Key, _MapValueT, __make_transparent_t <_Compare> >;
675- };
676- 
677669#  if  _LIBCPP_STD_VER >= 14
678670template  <class  _MapValueT , class  _Key , class  _Compare >
679671struct  __lazy_synth_three_way_comparator <__map_value_compare<_Key, _MapValueT, _Compare>, _MapValueT, _MapValueT> {
@@ -1056,24 +1048,6 @@ public:
10561048  _LIBCPP_HIDE_FROM_ABI mapped_type& operator [](key_type&& __k);
10571049#  endif 
10581050
1059-   template  <class  _Arg ,
1060-             __enable_if_t <__is_transparently_comparable_v<_Compare, key_type, __remove_cvref_t <_Arg> >, int > = 0 >
1061-   _LIBCPP_HIDE_FROM_ABI mapped_type& at (_Arg&& __arg) {
1062-     auto  [_, __child] = __tree_.__find_equal (__arg);
1063-     if  (__child == nullptr )
1064-       std::__throw_out_of_range (" map::at:  key not found"  );
1065-     return  static_cast <__node_pointer>(__child)->__get_value ().second ;
1066-   }
1067- 
1068-   template  <class  _Arg ,
1069-             __enable_if_t <__is_transparently_comparable_v<_Compare, key_type, __remove_cvref_t <_Arg> >, int > = 0 >
1070-   _LIBCPP_HIDE_FROM_ABI const  mapped_type& at (_Arg&& __arg) const  {
1071-     auto  [_, __child] = __tree_.__find_equal (__arg);
1072-     if  (__child == nullptr )
1073-       std::__throw_out_of_range (" map::at:  key not found"  );
1074-     return  static_cast <__node_pointer>(__child)->__get_value ().second ;
1075-   }
1076- 
10771051  _LIBCPP_HIDE_FROM_ABI mapped_type& at (const  key_type& __k);
10781052  _LIBCPP_HIDE_FROM_ABI const  mapped_type& at (const  key_type& __k) const ;
10791053
@@ -1268,15 +1242,11 @@ public:
12681242  _LIBCPP_HIDE_FROM_ABI iterator find (const  key_type& __k) { return  __tree_.find (__k); }
12691243  _LIBCPP_HIDE_FROM_ABI const_iterator find (const  key_type& __k) const  { return  __tree_.find (__k); }
12701244#  if  _LIBCPP_STD_VER >= 14
1271-   template  <typename  _K2,
1272-             enable_if_t <__is_transparent_v<_Compare, _K2> || __is_transparently_comparable_v<_Compare, key_type, _K2>,
1273-                         int > = 0 >
1245+   template  <typename  _K2, enable_if_t <__is_transparent_v<_Compare, _K2>, int > = 0 >
12741246  _LIBCPP_HIDE_FROM_ABI iterator find (const  _K2& __k) {
12751247    return  __tree_.find (__k);
12761248  }
1277-   template  <typename  _K2,
1278-             enable_if_t <__is_transparent_v<_Compare, _K2> || __is_transparently_comparable_v<_Compare, key_type, _K2>,
1279-                         int > = 0 >
1249+   template  <typename  _K2, enable_if_t <__is_transparent_v<_Compare, _K2>, int > = 0 >
12801250  _LIBCPP_HIDE_FROM_ABI const_iterator find (const  _K2& __k) const  {
12811251    return  __tree_.find (__k);
12821252  }
@@ -1292,9 +1262,7 @@ public:
12921262
12931263#  if  _LIBCPP_STD_VER >= 20
12941264  _LIBCPP_HIDE_FROM_ABI bool  contains (const  key_type& __k) const  { return  find (__k) != end (); }
1295-   template  <typename  _K2,
1296-             enable_if_t <__is_transparent_v<_Compare, _K2> || __is_transparently_comparable_v<_Compare, key_type, _K2>,
1297-                         int > = 0 >
1265+   template  <typename  _K2, enable_if_t <__is_transparent_v<_Compare, _K2>, int > = 0 >
12981266  _LIBCPP_HIDE_FROM_ABI bool  contains (const  _K2& __k) const  {
12991267    return  find (__k) != end ();
13001268  }
@@ -1303,16 +1271,12 @@ public:
13031271  _LIBCPP_HIDE_FROM_ABI iterator lower_bound (const  key_type& __k) { return  __tree_.lower_bound (__k); }
13041272  _LIBCPP_HIDE_FROM_ABI const_iterator lower_bound (const  key_type& __k) const  { return  __tree_.lower_bound (__k); }
13051273#  if  _LIBCPP_STD_VER >= 14
1306-   template  <typename  _K2,
1307-             enable_if_t <__is_transparent_v<_Compare, _K2> || __is_transparently_comparable_v<_Compare, key_type, _K2>,
1308-                         int > = 0 >
1274+   template  <typename  _K2, enable_if_t <__is_transparent_v<_Compare, _K2>, int > = 0 >
13091275  _LIBCPP_HIDE_FROM_ABI iterator lower_bound (const  _K2& __k) {
13101276    return  __tree_.lower_bound (__k);
13111277  }
13121278
1313-   template  <typename  _K2,
1314-             enable_if_t <__is_transparent_v<_Compare, _K2> || __is_transparently_comparable_v<_Compare, key_type, _K2>,
1315-                         int > = 0 >
1279+   template  <typename  _K2, enable_if_t <__is_transparent_v<_Compare, _K2>, int > = 0 >
13161280  _LIBCPP_HIDE_FROM_ABI const_iterator lower_bound (const  _K2& __k) const  {
13171281    return  __tree_.lower_bound (__k);
13181282  }
@@ -1321,15 +1285,11 @@ public:
13211285  _LIBCPP_HIDE_FROM_ABI iterator upper_bound (const  key_type& __k) { return  __tree_.upper_bound (__k); }
13221286  _LIBCPP_HIDE_FROM_ABI const_iterator upper_bound (const  key_type& __k) const  { return  __tree_.upper_bound (__k); }
13231287#  if  _LIBCPP_STD_VER >= 14
1324-   template  <typename  _K2,
1325-             enable_if_t <__is_transparent_v<_Compare, _K2> || __is_transparently_comparable_v<_Compare, key_type, _K2>,
1326-                         int > = 0 >
1288+   template  <typename  _K2, enable_if_t <__is_transparent_v<_Compare, _K2>, int > = 0 >
13271289  _LIBCPP_HIDE_FROM_ABI iterator upper_bound (const  _K2& __k) {
13281290    return  __tree_.upper_bound (__k);
13291291  }
1330-   template  <typename  _K2,
1331-             enable_if_t <__is_transparent_v<_Compare, _K2> || __is_transparently_comparable_v<_Compare, key_type, _K2>,
1332-                         int > = 0 >
1292+   template  <typename  _K2, enable_if_t <__is_transparent_v<_Compare, _K2>, int > = 0 >
13331293  _LIBCPP_HIDE_FROM_ABI const_iterator upper_bound (const  _K2& __k) const  {
13341294    return  __tree_.upper_bound (__k);
13351295  }
0 commit comments