Boost logo

Boost :

From: Stefan Slapeta (stefan_nospam__at_[hidden])
Date: 2004-07-13 05:05:40

Pavol Droba wrote:

> I have fixed all regresions that I could. No luck with the remaining. Major compiler
> platforms are regression free.

I've investigated what the Intel problem is. Even if I don't know why
yet, I know what the problem is; for the split testcases where input is
of const char*, the iterators get confused somehow.

See iter_find.hpp/line 144:

In the constructor of SequenceSequenceT Tmp(...), the sequence passed is

I've found a workaround which works, but I still can't understand why:
just make local variables for the iterators!

input_iterator_type InputEnd=end(Input);

typedef transform_iterator<copy_range_type, find_iterator_type>

transform_iter_t b = make_transform_iterator(
                        find_iterator_type( begin(Input), InputEnd, Finder ),

transform_iter_t e = make_transform_iterator(

SequenceSequenceT Tmp(b, e);


With this code, everything is fine. I hope I can find out the reason for
this strange compiler behaviour...


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