Subject: Re: [boost] Boost should not be saying "_FPOSOFF"
From: Edward Diener (eldiener_at_[hidden])
Date: 2016-09-19 17:26:32
On 9/19/2016 1:32 PM, Rene Rivera wrote:
> On Mon, Sep 19, 2016 at 7:18 AM, Edward Diener <eldiener_at_[hidden]>
>> I have pushed a fix for this on the 'develop' branch of iostreams. In the
>> fix basically iostreams uses _FPOSOFF for versions of VC++ prior to VC++14
>> but uses '((long long)(fp))' for VC++14 on up.
> That seems like a fragile fix to me. How do you know which version of VC is
> not going to have that def? Wouldn't it be better to use _FPOSOFF if it's
> defined, and the cast otherwise? That way whenever the macro goes away it
> will work, regardless of the specific version when that happens.
I understand what you are saying but _FPOSOFF is "undocumented" in the
sense that it should not be relied on. Since I was told in this thread
that for VC++14 on up Microsoft plans to "remove" it would it not simply
be better not to rely on it for those releases of VC++ ?
I could of course easily enough test for it and, if it exists, still use
_FPOSOFF, which is what you are suggesting.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk