|
Boost : |
From: John Maddock (john_maddock_at_[hidden])
Date: 2002-05-23 06:50:21
> > > Have we had config changes which might have caused
> BOOST_MSVC_STD_ITERATOR
> > > to be defined even when STLPort is in use? I'm pretty sure it wasn't
> that
> > > way before...
> >
> > Yes we have, someone complained about it not being set in that case, so
I
> > re-enabled it, re-ran the tests and everything seemed OK. Is something
> > breaking now?
>
> Yes! Did you test with STLPort? boost/detail/iterator.hpp is making the
> assumption that they're mutually exclusive.
> I can work around it for this one file, but what could the possible
> justification be for enabling BOOST_MSVC_STD_ITERATOR with STLPort? It's
> supposed to mean
The ublas guys wanted it - std::iterator is the basically the same with or
without STLport on MSVC isn't it? I do know that reverse_iterator differs a
lot, but I think that array was the only use for that case and that tested
OK, as did utility/iterator_test.cpp when I tried it. However if it's
causing problems disable it again, and let the ublas guys find some other
workaround.
> "Microsoft's broken version of std::iterator is being used. This
> implies that std::iterator takes no more than two template parameters, and
> that std::reverse_iterator takes at least two template parameters."
>
> And that's clearly false with STLPort.
Maybe we need BOOST_STLPORT_ITERATOR for the non-standard STLport version,
but we've got enough macros already :-(
John Maddock
http://ourworld.compuserve.com/homepages/john_maddock/index.htm
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk