bcc32 patch from Russell Hind applied

[SVN r28811]
This commit is contained in:
Pavol Droba
2005-05-11 09:17:14 +00:00
parent 5419d39b2e
commit e00fd7f159
8 changed files with 82 additions and 66 deletions

View File

@ -64,7 +64,11 @@ namespace boost {
template< typename T1, typename T2 > template< typename T1, typename T2 >
bool operator ()( const T1& Arg1, const T2& Arg2 ) const bool operator ()( const T1& Arg1, const T2& Arg2 ) const
{ {
#if defined(__BORLANDC__) && (__BORLANDC__ >= 0x560) && (__BORLANDC__ <= 0x564) && !defined(_USE_OLD_RW_STL)
return std::toupper(Arg1)==std::toupper(Arg2);
#else
return std::toupper(Arg1,m_Loc)==std::toupper(Arg2,m_Loc); return std::toupper(Arg1,m_Loc)==std::toupper(Arg2,m_Loc);
#endif
} }
private: private:

View File

@ -17,11 +17,7 @@
# error "macro already defined!" # error "macro already defined!"
#endif #endif
#ifdef __BORLANDC__
#define BOOST_STRING_TYPENAME
#else
#define BOOST_STRING_TYPENAME BOOST_DEDUCED_TYPENAME #define BOOST_STRING_TYPENAME BOOST_DEDUCED_TYPENAME
#endif
// Metrowerks workaround // Metrowerks workaround
#if BOOST_WORKAROUND(__MWERKS__, <= 0x3003) // 8.x #if BOOST_WORKAROUND(__MWERKS__, <= 0x3003) // 8.x

View File

@ -30,7 +30,11 @@ namespace boost {
// Operation // Operation
CharT operator ()( CharT Ch ) const CharT operator ()( CharT Ch ) const
{ {
#if defined(__BORLANDC__) && (__BORLANDC__ >= 0x560) && (__BORLANDC__ <= 0x564) && !defined(_USE_OLD_RW_STL)
return std::tolower( Ch);
#else
return std::tolower( Ch, m_Loc ); return std::tolower( Ch, m_Loc );
#endif
} }
private: private:
const std::locale& m_Loc; const std::locale& m_Loc;
@ -46,7 +50,11 @@ namespace boost {
// Operation // Operation
CharT operator ()( CharT Ch ) const CharT operator ()( CharT Ch ) const
{ {
#if defined(__BORLANDC__) && (__BORLANDC__ >= 0x560) && (__BORLANDC__ <= 0x564) && !defined(_USE_OLD_RW_STL)
return std::toupper( Ch);
#else
return std::toupper( Ch, m_Loc ); return std::toupper( Ch, m_Loc );
#endif
} }
private: private:
const std::locale& m_Loc; const std::locale& m_Loc;

View File

@ -46,6 +46,14 @@ namespace boost {
return std::use_facet< std::ctype<CharT> >(m_Locale).is( m_Type, Ch ); return std::use_facet< std::ctype<CharT> >(m_Locale).is( m_Type, Ch );
} }
#if defined(__BORLANDC__) && (__BORLANDC__ >= 0x560) && (__BORLANDC__ <= 0x564) && !defined(_USE_OLD_RW_STL)
template<>
bool operator()( char const Ch ) const
{
return std::use_facet< std::ctype<char> >(m_Locale).is( m_Type, Ch );
}
#endif
private: private:
const std::ctype_base::mask m_Type; const std::ctype_base::mask m_Type;
const std::locale m_Locale; const std::locale m_Locale;

View File

@ -101,7 +101,7 @@ namespace boost {
#endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION #endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
typedef mpl::bool_<value> type; typedef mpl::bool_<has_native_replace<T>::value> type;
}; };
@ -128,7 +128,7 @@ namespace boost {
# endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 ) # endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 )
#endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION #endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
typedef mpl::bool_<value> type; typedef mpl::bool_<has_stable_iterators<T>::value> type;
}; };
@ -155,7 +155,7 @@ namespace boost {
# endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 ) # endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 )
#endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION #endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
typedef mpl::bool_<value> type; typedef mpl::bool_<has_const_time_insert<T>::value> type;
}; };
@ -182,7 +182,7 @@ namespace boost {
# endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 ) # endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 )
#endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION #endif // BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
typedef mpl::bool_<value> type; typedef mpl::bool_<has_const_time_erase<T>::value> type;
}; };
} // namespace algorithm } // namespace algorithm

View File

@ -46,7 +46,7 @@ namespace boost {
#else #else
BOOST_STATIC_CONSTANT(bool, value=true); BOOST_STATIC_CONSTANT(bool, value=true);
#endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 ) #endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 )
typedef mpl::bool_<value> type; typedef mpl::bool_<has_stable_iterators<T>::value> type;
}; };
// const time insert trait // const time insert trait
@ -59,7 +59,7 @@ namespace boost {
#else #else
BOOST_STATIC_CONSTANT(bool, value=true); BOOST_STATIC_CONSTANT(bool, value=true);
#endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 ) #endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 )
typedef mpl::bool_<value> type; typedef mpl::bool_<has_const_time_insert<T>::value> type;
}; };
// const time erase trait // const time erase trait
@ -72,7 +72,7 @@ namespace boost {
#else #else
BOOST_STATIC_CONSTANT(bool, value=true); BOOST_STATIC_CONSTANT(bool, value=true);
#endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 ) #endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 )
typedef mpl::bool_<value> type; typedef mpl::bool_<has_const_time_erase<T>::value> type;
}; };
#endif #endif

View File

@ -46,7 +46,7 @@ namespace boost {
#else #else
BOOST_STATIC_CONSTANT(bool, value=true); BOOST_STATIC_CONSTANT(bool, value=true);
#endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 ) #endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 )
typedef mpl::bool_<value> type; typedef mpl::bool_<has_stable_iterators<T>::value> type;
}; };
// const time insert trait // const time insert trait
@ -59,7 +59,7 @@ namespace boost {
#else #else
BOOST_STATIC_CONSTANT(bool, value=true); BOOST_STATIC_CONSTANT(bool, value=true);
#endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 ) #endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 )
typedef mpl::bool_<value> type; typedef mpl::bool_<has_const_time_insert<T>::value> type;
}; };
// const time erase trait // const time erase trait
@ -72,7 +72,7 @@ namespace boost {
#else #else
BOOST_STATIC_CONSTANT(bool, value=true); BOOST_STATIC_CONSTANT(bool, value=true);
#endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 ) #endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 )
typedef mpl::bool_<value> type; typedef mpl::bool_<has_const_time_erase<T>::value> type;
}; };
#endif #endif

View File

@ -38,7 +38,7 @@ namespace boost {
BOOST_STATIC_CONSTANT(bool, value=true); BOOST_STATIC_CONSTANT(bool, value=true);
#endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 ) #endif // BOOST_WORKAROUND( __IBMCPP__, <= 600 )
typedef mpl::bool_<value> type; typedef mpl::bool_<has_native_replace<T>::value> type;
}; };