On 05/14/2014 05:37 PM, Noah Misch wrote:
On Wed, May 14, 2014 at 03:15:38PM +0300, Heikki Linnakangas wrote:
On 05/09/2014 02:56 AM, Noah Misch wrote:
MinGW: 
http://sourceforge.net/p/mingw/mingw-org-wsl/ci/master/tree/include/stdio.h#l467
MinGW-w64: 
http://sourceforge.net/p/mingw-w64/code/HEAD/tree/trunk/mingw-w64-headers/crt/stdio.h#l496

Building with any recent MinGW-w64, 32-bit or 64-bit, gets the reported
warnings; building with MinGW proper does not.

Hmm. The MinGW-w64 header does this:

#if !defined(NO_OLDNAMES) && !defined(popen)
#define popen _popen
#define pclose _pclose
#endif

So if we defined popen() before including stdio.h, that would get
rid of the warning. But we don't usually do things in that order.

True.  I have no strong preference between that and use of #undef.

I think I would prefer #undef. The risk with that is if some platform has #defined popen() to something else entirely, for some good reason, we would be bypassing that hypothetical wrapper. But I guess we'll cross that bridge if we get there.

Could we define NO_OLDNAMES? I couldn't find any documentation on
it, but it seems to a bunch of lot of wrapper functions and defines.
If we can get away without them, that seems like a good thing...

That's a bit like compiling with "gcc -std=c89" on Unix.  It would lead us to
add "#define strdup(x) _strdup(x)" and similar.  I wouldn't do that.

Ugh. I can't believe they marked strdup(x) as deprecated.

- Heikki


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to