Boost logo

Boost :

From: Reece Dunn (msclrhd_at_[hidden])
Date: 2004-05-20 16:13:17


I reported that VC7 uses the correct implementation of reverse_iterator, and
that this can be detected via BOOST_NO_STD_ITERATOR. Although this compiles,
you cannot use reverse iterators.

The problem is that the iterator is of the form (const) T *, and this fails
because there is not a correct implementation of iterator_traits (due to a
lack of partial template specialization) that *is* detected by
BOOST_NO_STD_ITERATOR_TRAITS.

The solution would therefore be to - in this case - provide an iterator
wrapper around a standard pointer so it has the correct Iter::value_type,
etc definitions. Is there an iterator_adaptor that provides this within
boost? If not, should there be one? I am looking into this and will commit
the solution to my iterator_adaptor-style implementation
(sandbox/boost/fixed_string/detail/basic_string_impl.hpp).

NOTE: If you want to add any of my modifications to the Wave flex_string
implementation, feel free, but be warned that I haven't run full tests on it
yet and thus there might be bugs in it (especially the pod_xxx -->
traits_type::xxx, since these functions have different parameters).

Regards,
Reece

_________________________________________________________________
It's fast, it's easy and it's free. Get MSN Messenger today!
http://www.msn.co.uk/messenger


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk