Boost logo

Boost :

Subject: Re: [boost] Boost should not be saying "_FPOSOFF"
From: Billy O'Neal (VC LIBS) (bion_at_[hidden])
Date: 2016-09-19 17:45:20


For the moment (as in “what is going to ship with VS “15””) we have done this:

// TRANSITION: Boost nonconformingly uses this macro

#define _FPOSOFF(fp) ((long long)(fp))

Because even if Boost fixes this immediately we don’t want break all the existing Boost instances out there. Will nuke outright next time we break bincompat; sometime after VS “15”.

Billy3

From: Edward Diener<mailto:eldiener_at_[hidden]>
Sent: Monday, September 19, 2016 2:27 PM
To: boost_at_[hidden]<mailto:boost_at_[hidden]>
Subject: Re: [boost] Boost should not be saying "_FPOSOFF"

On 9/19/2016 1:32 PM, Rene Rivera wrote:
> On Mon, Sep 19, 2016 at 7:18 AM, Edward Diener <eldiener_at_[hidden]>
> wrote:
>
>>
>> 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.

_______________________________________________
Unsubscribe & other changes: https://na01.safelinks.protection.outlook.com/?url=http%3a%2f%2flists.boost.org%2fmailman%2flistinfo.cgi%2fboost&data=02%7c01%7cbion%40microsoft.com%7c459d3f195ad04362b8eb08d3e0d3c071%7c72f988bf86f141af91ab2d7cd011db47%7c1%7c0%7c636099172473744664&sdata=im4hQFduonfHAXuSyjiO1J9yTIBEx1T%2fOS5UpasByNo%3d


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk