Re: [Boost-bugs] [Boost C++ Libraries] #5217: File streams broken on Windows with STLPort

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #5217: File streams broken on Windows with STLPort
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-02-23 15:52:32


#5217: File streams broken on Windows with STLPort
-------------------------------+--------------------------------------------
  Reporter: andysem | Owner: bemandawes
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: filesystem
   Version: Boost 1.46.0 | Severity: Showstopper
Resolution: | Keywords: fstream
-------------------------------+--------------------------------------------

Comment (by bemandawes):

 Does the following patch work? It is supposed to support all non-
 Dinkumware libraries.

 Thanks,

 --Beman

 --- c:\temp\fstream_HEAD.hpp 2011-02-23 10:44:34.000000000 -0500
 +++
 c:\boost\github\libs\filesystem\include\boost\filesystem\v3\fstream.hpp
 2011-02-23 10:43:21.000000000 -0500
 @@ -24,13 +24,13 @@

  #include <boost/config/abi_prefix.hpp> // must be the last #include

  // on Windows, except for standard libaries known to have wchar_t
 overloads for
  // file stream I/O, use path::string() to get a narrow character c_str()
  #if defined(BOOST_WINDOWS_API) \
 - && !(defined(_CPPLIB_VER) && _CPPLIB_VER >= 405) // not (Dinkumware
 with overloads)
 + && (!defined(_CPPLIB_VER) || _CPPLIB_VER < 405) // (!Dinkumware || no
 wide overloads)
  # define BOOST_FILESYSTEM_C_STR string().c_str() // use narrow, since
 wide not available
  #else // use the native c_str, which will be narrow on POSIX, wide on
 Windows
  # define BOOST_FILESYSTEM_C_STR c_str()
  #endif

  namespace boost

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/5217#comment:1>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:05 UTC