rel_ops issues

Gabriel Dos Reis Gabriel.Dos-Reis@cmla.ens-cachan.fr
Tue Apr 3 14:38:00 GMT 2001


Joe Buck <jbuck@racerx.synopsys.com> writes:

| [ see prev discussion: this is for GNATS case 2405 ]
| 
| > | Without it there is a conflict between the two operator!= definitions.
| > | This third definition will be preferred to either of the other two
| > | for != on two vector iterators.
| > | 
| > | Objections?
| > 
| > Since __normal_iterator is a class the library put in for its own
| > purposes, it should ensure it works properly without introducing
| > unwanted semantics in user programs.  That pretty much exclude the
| > using-declaration and using-directive.
| 
| Yes, but I did not propose that.  We are now in agreement that the library
| should not use the rel_ops stuff anywhere.
| 
| > In fact, the solution is to
| > overload operator!=, operator<, operator>, operator<= and operator>=
| > for __normal_iterator. 
| 
| Yes, but they are already overloaded.  The problem is that we need
| additional versions to eliminate conflicts with rel_ops, as I suggested.

I agreed with your patch -- sorry if that wasn't clear.

-- Gaby



More information about the Libstdc++ mailing list