{ return pi; }
};
+ /** In CXX0X std::_Select2nd does no longer derive from std::unary_function
+ */
+ template<typename _Pair>
+ struct P_Select2nd : public std::unary_function<_Pair, typename _Pair::second_type>
+ {
+ typename _Pair::second_type&
+ operator()(_Pair& __x) const
+ { return __x.second; }
+
+ const typename _Pair::second_type&
+ operator()(const _Pair& __x) const
+ { return __x.second; }
+ };
+
///////////////////////////////////////////////////////////////////
//
// CLASS NAME : PoolTraits
/** ident index */
typedef std::tr1::unordered_multimap<sat::detail::IdType, PoolItem>
Id2ItemT;
- typedef std::_Select2nd<Id2ItemT::value_type> Id2ItemValueSelector;
+ typedef P_Select2nd<Id2ItemT::value_type> Id2ItemValueSelector;
typedef transform_iterator<Id2ItemValueSelector, Id2ItemT::const_iterator>
byIdent_iterator;