===================================================================
@@ -614,7 +614,7 @@
/// std::hash specialization for shared_ptr.
template<typename _Tp>
struct hash<shared_ptr<_Tp>>
- : public std::unary_function<shared_ptr<_Tp>, size_t>
+ : public __hash_base<size_t, shared_ptr<_Tp>>
{
size_t
operator()(const shared_ptr<_Tp>& __s) const
===================================================================
@@ -542,7 +542,7 @@
/// std::hash specialization for unique_ptr.
template<typename _Tp, typename _Dp>
struct hash<unique_ptr<_Tp, _Dp>>
- : public std::unary_function<unique_ptr<_Tp, _Dp>, size_t>
+ : public __hash_base<size_t, unique_ptr<_Tp, _Dp>>
{
size_t
operator()(const unique_ptr<_Tp, _Dp>& __u) const