Boost logo

Boost Users :

Subject: [Boost-users] Turning off BOOST_IOSTREAMS_HAS_DINKUMWARE_FPOS for MSVC++
From: Billy O'Neal (VC LIBS) (bion_at_[hidden])
Date: 2018-04-16 22:43:03


Hi folks!

As part of a recent cleanup of some of our iostreams bits I removed a double-seek inside std::filebuf. (Previously, std::filebuf didn't take advantage that we know ::fsetpos just accepts a 64 bit number position) Moreover, in previous releases of MSVC++, that still would have been correct; filebuf was getting to the same place in a very indirect way.

I know just casting std::fpos to a streamoff works to get the position going back to at least VS 2015, and it probably works a decade earlier than that (though I have not tested). Shame on us for adding a pretty name to std::fpos not depicted in the standard. Would you accept a patch to $\boost\iostreams\detail\config\fpos.hpp adding this guard before attempting to define BOOST_IOSTREAMS_HAS_DINKUMWARE_FPOS?

!(_MSVC_STL_VERSION >= 141)

I submitted a patch to do that here: https://github.com/boostorg/iostreams/pull/57

Thanks folks!

Billy O'Neal
Visual C++ Libraries



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net