[iostreams] Patch for BCB2006

Hallo, the enclosed patch brings support for the latest Borland compiler to the same level as bcc 5.6.4 . I tested it against bcc 5.8.2, bcc 5.6.4, VC++ 8.0 and g++ 3.4.2 . Cheers, Nicola Musatti ******Index: positioning.hpp =================================================================== RCS file: /cvsroot/boost/boost/boost/iostreams/positioning.hpp,v retrieving revision 1.8 diff -d -u -r1.8 positioning.hpp --- positioning.hpp 19 Nov 2005 19:56:13 -0000 1.8 +++ positioning.hpp 8 Apr 2006 14:09:33 -0000 @@ -46,7 +46,7 @@ return std::streampos(std::mbstate_t(), off); } -inline stream_offset fpos_t_to_offset(fpos_t pos) +inline stream_offset fpos_t_to_offset(std::fpos_t pos) { // Helper function. #if defined(_POSIX_) || (_INTEGRAL_MAX_BITS >= 64) return pos; Index: detail/bool_trait_def.hpp =================================================================== RCS file: /cvsroot/boost/boost/boost/iostreams/detail/bool_trait_def.hpp,v retrieving revision 1.6 diff -d -u -r1.6 bool_trait_def.hpp --- detail/bool_trait_def.hpp 12 Oct 2005 00:32:43 -0000 1.6 +++ detail/bool_trait_def.hpp 8 Apr 2006 14:09:57 -0000 @@ -20,7 +20,7 @@ // Description: Used to generate the traits classes is_istream, is_ostream, // etc. // -#if BOOST_WORKAROUND(__BORLANDC__, <= 0x564) +#if BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x582)) # define BOOST_IOSTREAMS_TRAIT_NAMESPACE(trait) #else # define BOOST_IOSTREAMS_TRAIT_NAMESPACE(trait) BOOST_PP_CAT(trait, _impl_):: Index: detail/config/codecvt.hpp =================================================================== RCS file: /cvsroot/boost/boost/boost/iostreams/detail/config/codecvt.hpp,v retrieving revision 1.3 diff -d -u -r1.3 codecvt.hpp --- detail/config/codecvt.hpp 1 Jun 2005 19:13:15 -0000 1.3 +++ detail/config/codecvt.hpp 8 Apr 2006 14:10:21 -0000 @@ -63,7 +63,7 @@ #if defined(__LIBCOMO__) using ::mbstate_t; -#elif defined(BOOST_DINKUMWARE_STDLIB) +#elif defined(BOOST_DINKUMWARE_STDLIB) && !defined(__BORLANDC__) using ::mbstate_t; #elif defined(__SGI_STL_PORT) #elif defined(BOOST_NO_STDC_NAMESPACE)

Nicola Musatti wrote:
Hallo, the enclosed patch brings support for the latest Borland compiler to the same level as bcc 5.6.4 . I tested it against bcc 5.8.2, bcc 5.6.4, VC++ 8.0 and g++ 3.4.2 .
Having heard from nobody on this subject, I plan to wait a few days more and if I hear no objections I'll apply this patch myself. Note however that while the other modifications are Borland specific changes, the positioning.hpp patch solves what I believe to be a latent bug. fpos_t requires qualification, given that no explicit using directive/declaration is present nor is <stdio.h> included in its C form. Cheers, Nicola Musatti

Nicola Musatti wrote: [...]
Having heard from nobody on this subject, I plan to wait a few days more and if I hear no objections I'll apply this patch myself. Note however that while the other modifications are Borland specific changes, the positioning.hpp patch solves what I believe to be a latent bug. fpos_t requires qualification, given that no explicit using directive/declaration is present nor is <stdio.h> included in its C form.
Applied, with Jonathan Turkanis's consent, to HEAD and RC_1_34_0. Cheers, Nicola Musatti
participants (1)
-
Nicola Musatti