From: Thorsten Ottosen (thorsten.ottosen_at_[hidden])
Date: 2006-10-04 04:23:53
Shunsuke Sogame wrote:
> Hi gurus, under RC_1_34,
> #include <boost/range.hpp>
> #include <boost/iterator/counting_iterator.hpp>
> int main()
> VC++7.1 and GCC3.4 says a warning something like
> "returning address of local variable or temporary".
I think counting_iterator is not a valid random access iterator because
operator() does not yield a reference.
> counting_iterator is implemented by iterator_facade,
> whose operator returns *value*.
> In fact, the result type of iterator_facade's operator seems unspecified.
> Is it possible to do forwarding of iterator's operator, which is
> tried by iterator_range?
Counting iterator should define its reference-type to be the type it
returns from operator() (even though it is not a reference). Then I
think it would work.
Do the authors of the iterator lib agree?
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk