shared_ptr comparisons
Jonathan Wakely
jwakely.gcc@gmail.com
Sat Nov 27 18:32:00 GMT 2010
On 17 November 2010 00:42, Paolo Carlini wrote:
> On 11/17/2010 12:46 AM, Jonathan Wakely wrote:
>> Unless I'm mistaken we should only have operators <, == and != for shared_ptr.
>>
>> Any objections to this change?
>>
> Not from me. To be honest I have no idea where those operators comes
> from, and certainly we don't have anything similar for the actual
> std::shared_ptr...
2010-11-27 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/shared_ptr_base.h (operator>, operator>=, operator<=):
Remove comparisons not specified in the C++0x draft.
tested x86_64-linux and committed to trunk
-------------- next part --------------
Index: include/bits/shared_ptr_base.h
===================================================================
--- include/bits/shared_ptr_base.h (revision 167056)
+++ include/bits/shared_ptr_base.h (working copy)
@@ -1098,25 +1098,6 @@ _GLIBCXX_BEGIN_NAMESPACE(std)
: public _Sp_less<__shared_ptr<_Tp, _Lp>>
{ };
- // XXX LessThanComparable<_Tp> concept should provide >, >= and <=
- template<typename _Tp, _Lock_policy _Lp>
- inline bool
- operator>(const __shared_ptr<_Tp, _Lp>& __a,
- const __shared_ptr<_Tp, _Lp>& __b)
- { return __a.get() > __b.get(); }
-
- template<typename _Tp, _Lock_policy _Lp>
- inline bool
- operator>=(const __shared_ptr<_Tp, _Lp>& __a,
- const __shared_ptr<_Tp, _Lp>& __b)
- { return __a.get() >= __b.get(); }
-
- template<typename _Tp, _Lock_policy _Lp>
- inline bool
- operator<=(const __shared_ptr<_Tp, _Lp>& __a,
- const __shared_ptr<_Tp, _Lp>& __b)
- { return __a.get() <= __b.get(); }
-
// 2.2.3.8 shared_ptr specialized algorithms.
template<typename _Tp, _Lock_policy _Lp>
inline void
More information about the Libstdc++
mailing list