This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: rel_ops issues
- To: Joe Buck <jbuck at racerx dot synopsys dot com>
- Subject: Re: rel_ops issues
- From: Gabriel Dos Reis <Gabriel dot Dos-Reis at cmla dot ens-cachan dot fr>
- Date: 03 Apr 2001 23:38:12 +0200
- Cc: Gabriel dot Dos-Reis at cmla dot ens-cachan dot fr (Gabriel Dos Reis), bkoz at redhat dot com (Benjamin Kosnik), Theodore dot Papadopoulo at sophia dot inria dot fr (Theodore Papadopoulo), libstdc++ at gcc dot gnu dot org
- Organization: CMLA, ENS Cachan -- CNRS UMR 8536 (France)
- References: <200104032127.OAA02861@racerx.synopsys.com>
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