stl_tree.h: Overload operators == and != to be able to handle the case...
2000-11-17 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr> * include/bits/stl_tree.h: Overload operators == and != to be able to handle the case (const_iterator,iterator) and (iterator,const_iterator), thus fixing libstdc++/737 and the like. * testsuite/23_containers/map_operators.cc (test02): New tests. From-SVN: r37532
This commit is contained in:
parent
c9b6c28211
commit
c55d267039
@ -3,6 +3,7 @@
|
||||
* include/bits/stl_tree.h: Overload operators == and != to be able
|
||||
to handle the case (const_iterator,iterator) and
|
||||
(iterator,const_iterator), thus fixing libstdc++/737 and the like.
|
||||
* testsuite/23_containers/map_operators.cc (test02): New tests.
|
||||
|
||||
2000-11-17 Loren J. Rittle <ljrittle@acm.org>
|
||||
|
||||
|
@ -22,11 +22,12 @@
|
||||
|
||||
#include <map>
|
||||
#include <string>
|
||||
#include <iostream>
|
||||
|
||||
// map and set
|
||||
// libstdc++/86: map & set iterator comparisons are not type-safe
|
||||
// XXX this is XFAIL for the time being, ie this should not compile
|
||||
int main(void)
|
||||
void test01()
|
||||
{
|
||||
bool test = true;
|
||||
std::map<unsigned int, int> mapByIndex;
|
||||
@ -42,3 +43,28 @@ int main(void)
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
// http://sources.redhat.com/ml/libstdc++/2000-11/msg00093.html
|
||||
void test02()
|
||||
{
|
||||
typedef std::map<int,const int> MapInt;
|
||||
|
||||
MapInt m;
|
||||
|
||||
for (unsigned i=0;i<10;++i)
|
||||
m.insert(MapInt::value_type(i,i));
|
||||
|
||||
for (MapInt::const_iterator i=m.begin();i!=m.end();++i)
|
||||
std::cerr << i->second << ' ';
|
||||
|
||||
for (MapInt::const_iterator i=m.begin();m.end()!=i;++i)
|
||||
std::cerr << i->second << ' ';
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
test01();
|
||||
test02();
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user