On 4/30/18 13:56, Tom Lane wrote:
> So this isn't working on Windows:
>
> contrib/jsonb_plperl/jsonb_plperl.c(226): warning C4013: 'isnan' undefined; assuming extern returning int
[c:\pgbuildfarm\pgbuildroot\HEAD\pgsql.build\jsonb_plperl.vcxproj]
> ...
> .\Release\jsonb_plperl\jsonb_plperl.dll : fatal error LNK1120: 1 unresolved externals
[c:\pgbuildfarm\pgbuildroot\HEAD\pgsql.build\jsonb_plperl.vcxproj]
>
> The reason seems to be this kluge in plperl.h:
>
> /* stop perl headers from hijacking stdio and other stuff on Windows */
> #ifdef WIN32
> #define WIN32IO_IS_STDIO
> /*
> * isnan is defined in both the perl and mingw headers. We don't use it,
> * so this just clears up the compile warning.
> */
> #ifdef isnan
> #undef isnan
> #endif
> #endif /* WIN32 */
>
> Looks like the half-life of that hack just expired. What shall
> we do about it?
I have removed this for now. If it's really just about a compiler
warning, then we can find a different workaround later.
--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services