id summary reporter owner description type status milestone component version severity resolution keywords cc 2640 Legal forward iterators cannot store their referents (was: counting_iterator::reference lifetime tied to iterator) schoedl jeffrey.hellrung "The iterators library needs a redesign based on the facts noted in [[#comment:2|this comment]] The original report is below. ---- Currently, counting_iterator::reference is Incrementable const&. This makes reverse_iterator< counting_iterator >::dereference return a reference to a temporary variable: typename super_t::reference dereference() const { return *boost::prior(this->base()); } The problem is that iterator::reference is expected to stay valid even if the iterator it was obtained from is dead." Bugs new Boost 1.38.0 iterator Boost 1.37.0 Problem counting_iterator reverse_iterator flast@…