Boost logo

Boost Users :

Subject: Re: [Boost-users] boost::zip_iterator does not work with std::istreambuf_iterator
From: Krzysztof Żelechowski (giecrilj_at_[hidden])
Date: 2011-09-04 15:26:52

Dave Abrahams wrote:

> on Sat Sep 03 2011, Krzysztof Żelechowski <>
> wrote:
>> 1. boost::zip_iterator requires a readable iterator.
>> 2. std::istreambuf_iterator is a readable iterator.
>> 3. boost::zip_iterator cannot dereference std::istream_iterator because
>> std::istreambuf_iterator returns by value while boost::zip_iterator
>> returns by reference; the exact error message is
>> invalid initialization of non-const reference of type ‘char&’ from an
>> rvalue of type ‘std::istreambuf_iterator<char, std::char_traits<char>
>> Contradiction? Am I missing anything?
> You're probably not missing anything. I think the docs are wrong.

I would rather prefer if you declared that the implementation is wrong...
I have written an alternative implementation named iterator_pair that does
not have this limitation (although it is probably not as cool as

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at