Re: _isnan() on Windows

Andrew Dunstan <andrew.dunstan@2ndquadrant.com>

From: Andrew Dunstan <andrew.dunstan@2ndquadrant.com>
To: Andres Freund <andres@anarazel.de>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Michael Paquier <michael@paquier.xyz>, Alvaro Herrera <alvherre@2ndquadrant.com>, Emre Hasegeli <emre@hasegeli.com>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>, Thomas Munro <thomas.munro@enterprisedb.com>
Date: 2018-11-18T17:46:14Z
Lists: pgsql-hackers
On 11/17/18 2:46 PM, Andres Freund wrote:
> Hi,
>
> On 2018-07-12 11:28:46 -0400, Andrew Dunstan wrote:
>> On 07/12/2018 10:38 AM, Tom Lane wrote:
>>> Andrew Dunstan <andrew.dunstan@2ndquadrant.com> writes:
>>>> On 07/12/2018 10:20 AM, Tom Lane wrote:
>>>>> bowerbird and hamerkop have some gripes like this:
>>>>>
>>>>> bowerbird     | c:\perl64\lib\core\win32.h(218): warning C4005: 'isnan' : macro redefinition (src/pl/plperl/SPI.c) [G:\prog\bf\root\HEAD\pgsql.build\plperl.vcxproj]
>>>> We actually undef a bunch of things in plperl.h to keep the compiler
>>>> quiet. Maybe we need to add this to the list?
>>> Perhaps.  But how do we tell the platforms where we should do that
>>> from the ones where we shouldn't?
>>>
>>> 			
>> In the _MSCVER section:
>>
>> #ifdef isnan
>> #undef isnan
>> #endif
>>
>> By inspection the perl header is just defining it to _isnan, for every MSC
>> version.
> Let's try undefining it before plperl.h then?  It'd be nice to get rid
> of those warnings...
>


done.


cheers


andrew

-- 
Andrew Dunstan                https://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



Commits

  1. Silence MSVC warnings about redefinition of isnan

  2. Rethink how to get float.h in old Windows API for isnan/isinf