Boost logo

Boost :

From: Beman Dawes (bdawes_at_[hidden])
Date: 2002-09-14 13:43:40

At 08:33 AM 9/14/2002, Thomas Witt wrote:
>On Friday 13 September 2002 19:49, Beman Dawes wrote:
>> * The directory_iterator implementation now uses
>IIUC directory_iterator is derived from iterator_adaptor and reimplements

>operator-> as a compiler workaround.
>Are you sure the following works (i.e. does not need the workaround)
>(++directory_iterator(valid_directory_path))->file_path(); ?
>See posting

I added a test case to operations_test.cpp, and it failed miserably at run
time (protection fault) for all compilers except Borland:-( Incrementing
the iterator first in a separate expression, then using ->, worked

I frankly don't understand the details of this problem. Am I using
iterator_adaptor incorrectly, or is there really a compiler problem, or is
there a problem with iterator_adaptor?

If it is a compiler problem, we need a better workaround obviously. Also
there should be a BOOST_NO_xxx macro so we can #ifdef the workaround code
so it doesn't live forever.

Thanks for the alert!


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