
Borland Compiler has a problem with typename keyword followed by a double-colon, trivial patch follows: cvs diff -u -wb -- boost\detail\iterator.hpp (in directory E:\sourceforge\devel\boost\) Index: boost/detail/iterator.hpp =================================================================== RCS file: /cvsroot/boost/boost/boost/detail/iterator.hpp,v retrieving revision 1.33 diff -u -w -b -r1.33 iterator.hpp --- boost/detail/iterator.hpp 3 Sep 2004 15:41:08 -0000 1.33 +++ boost/detail/iterator.hpp 27 Jan 2006 22:30:08 -0000 @@ -477,7 +477,11 @@ distance(Iterator first, Iterator last) { typedef typename iterator_traits<Iterator>::difference_type diff_t; +#if BOOST_WORKAROUND( __BORLANDC__, BOOST_TESTED_AT(0x581)) + typedef typename boost::detail::iterator_traits<Iterator>::iterator_category iterator_category; +#else typedef typename ::boost::detail::iterator_traits<Iterator>::iterator_category iterator_category; +#endif return iterator_traits_::distance_select<Iterator,diff_t>::execute( first, last, (iterator_category*)0); OK to apply? -- AlisdairM