Re: [Boost-bugs] [Boost C++ Libraries] #1519: lvalue-ness resurrection in transform_iterator

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #1519: lvalue-ness resurrection in transform_iterator
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-06-06 15:39:25


#1519: lvalue-ness resurrection in transform_iterator
----------------------------------------------------+-----------------------
  Reporter: Shunsuke Sogame <pstade.mb@…> | Owner: dave
      Type: Patches | Status: closed
 Milestone: Boost 1.36.0 | Component: iterator
   Version: Boost Development Trunk | Severity: Problem
Resolution: invalid | Keywords: transform_iterator iterator
----------------------------------------------------+-----------------------
Changes (by dave):

  * status: new => closed
  * resolution: => invalid

Comment:

 If I understand correctly what your patch is doing, you are effectively
 determining whether the resulting {{{transform_iterator<...>}}} satisfies
 the access requirements of !ForwardIterator (and thus,
 !RandomAccessIterator) by looking at the lvalueness of the transformed
 result_type. Unfortunately, that's not a valid way to make the
 determination, because the resulting iterator doesn't suddenly become
 multipass just because of a change in the reference type. In fact, most of
 the standard's !InputIterators return references from their
 {{{operator*}}}.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/1519#comment:1>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:03 UTC