Fixes for Borland C++ Builder 6

[SVN r13662]
This commit is contained in:
John Maddock 2002-05-04 11:03:42 +00:00
parent 7126ea2685
commit 13e6d78fa8

View File

@ -85,15 +85,17 @@ template <class Iterator,
struct non_portable_tests struct non_portable_tests
{ {
// Unfortunately, the VC6 standard library doesn't supply these :( // Unfortunately, the VC6 standard library doesn't supply these :(
typedef typename boost::detail::iterator_traits<Iterator>::pointer test_pt;
typedef typename boost::detail::iterator_traits<Iterator>::reference test_rt;
BOOST_STATIC_ASSERT(( BOOST_STATIC_ASSERT((
boost::is_same< ::boost::is_same<
typename boost::detail::iterator_traits<Iterator>::pointer, test_pt,
pointer pointer
>::value)); >::value));
BOOST_STATIC_ASSERT(( BOOST_STATIC_ASSERT((
boost::is_same< ::boost::is_same<
typename boost::detail::iterator_traits<Iterator>::reference, test_rt,
reference reference
>::value)); >::value));
}; };
@ -102,15 +104,17 @@ template <class Iterator,
class value_type, class difference_type, class pointer, class reference, class category> class value_type, class difference_type, class pointer, class reference, class category>
struct portable_tests struct portable_tests
{ {
typedef typename boost::detail::iterator_traits<Iterator>::difference_type test_dt;
typedef typename boost::detail::iterator_traits<Iterator>::iterator_category test_cat;
BOOST_STATIC_ASSERT(( BOOST_STATIC_ASSERT((
boost::is_same< ::boost::is_same<
typename boost::detail::iterator_traits<Iterator>::difference_type, test_dt,
difference_type difference_type
>::value)); >::value));
BOOST_STATIC_ASSERT(( BOOST_STATIC_ASSERT((
boost::is_same< ::boost::is_same<
typename boost::detail::iterator_traits<Iterator>::iterator_category, test_cat,
category category
>::value)); >::value));
}; };
@ -121,9 +125,10 @@ template <class Iterator,
struct input_iterator_test struct input_iterator_test
: portable_tests<Iterator,value_type,difference_type,pointer,reference,category> : portable_tests<Iterator,value_type,difference_type,pointer,reference,category>
{ {
typedef typename boost::detail::iterator_traits<Iterator>::value_type test_vt;
BOOST_STATIC_ASSERT(( BOOST_STATIC_ASSERT((
boost::is_same< ::boost::is_same<
typename boost::detail::iterator_traits<Iterator>::value_type, test_vt,
value_type value_type
>::value)); >::value));
}; };