
Pavel Vozenilek wrote:
Then I get second error:
C:\work\reviews\boost-05-02-24-1300\boost/range/iterator.hpp(37): error: class "mine::dummy" has no member "iterator" typedef BOOST_DEDUCED_TYPENAME C::iterator type; ^ detected during instantiation of class "boost::range_iterator<C> [with C=const mine::dummy]" at line 64 of
"C:\work\reviews\foreach\libs\foreach\test\regress.cpp" compilation aborted for C:\work\reviews\foreach\libs\foreach\test\regress.cpp (code 2)
that looks as mistake in test (range<> really expects a richer "dummy" type).
I "fixed" it by changing:
struct dummy { typedef void iterator; };
This is not a bug in the test. It is a compiler bug. range_iterator has been specialized for mine::dummy, but the compiler is not picking up the specialization. This test should be broken out and marked as an expected failure for this compiler. -- Eric Niebler Boost Consulting www.boost-consulting.com