Boost logo

Boost :

From: Sebastian Redl (sebastian.redl_at_[hidden])
Date: 2008-05-24 17:55:01

Roland Schwarz wrote:
> The attached patch to iterator_facade made my "Readable" and
> "Writeable" == "Swapable" iterator work. However I am not
> practised enough to tell if this will break something else.
I believe this would break code where reference == value_type (not
unusual for input iterators), because the two conversion operators would
have the same target type. This could be solved with specialization.

It might also introduce ambiguities where reference == value_type&
(requirement for lvalue iterators). This should be pretty trivial to test.

void foo(const int &i);

int main()
  iterator_with_value_type_ref_as_reference r = get_that_iterator();

It should also be possible to solve via specialization - there's no need
for the conversion to value_type if reference == value_type&.


Boost list run by bdawes at, gregod at, cpdaniel at, john at