Re: Re: popen and pclose redefinitions causing many warning in Windows build

Поиск
Список
Период
Сортировка
От Jeff Janes
Тема Re: Re: popen and pclose redefinitions causing many warning in Windows build
Дата
Msg-id CAMkU=1yOGDj89sxFJCFq6Yidw8Wb2njroQ9tuXEGF7s9JEROHw@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Re: popen and pclose redefinitions causing many warning in Windows build  (Bruce Momjian <bruce@momjian.us>)
Список pgsql-hackers
On Wed, May 28, 2014 at 7:38 AM, Bruce Momjian <bruce@momjian.us> wrote:
On Mon, May 26, 2014 at 09:50:42PM +0900, Michael Paquier wrote:
> > x86_64-w64-mingw32-gcc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -I/home/pgrunner/bf/root/HEAD/pgsql.5100/../pgsql/src/interfaces/libpq -I../../../src/include -I/home/pgrunner/bf/root/HEAD/pgsql.5100/../pgsql/src/include -I../pgsql/src/include/port/win32 -DEXEC_BACKEND -I/c/prog/3p64/include/libxml2  -I/c/prog/3p64/include -I/c/prog/3p64/openssl/include "-I/home/pgrunner/bf/root/HEAD/pgsql.5100/../pgsql/src/include/port/win32"  -c -o parallel.o /home/pgrunner/bf/root/HEAD/pgsql.5100/../pgsql/src/bin/pg_dump/parallel.c
> > c:/mingw/msys/1.0/home/pgrunner/bf/root/HEAD/pgsql.5100/../pgsql/src/bin/pg_dump/parallel.c: In function 'pgpipe':
> > c:/mingw/msys/1.0/home/pgrunner/bf/root/HEAD/pgsql.5100/../pgsql/src/bin/pg_dump/parallel.c:1332:2: warning: overflow in implicit constant conversion [-Woverflow]
> >   handles[0] = handles[1] = INVALID_SOCKET;
> >   ^
> > c:/mingw/msys/1.0/home/pgrunner/bf/root/HEAD/pgsql.5100/../pgsql/src/bin/pg_dump/parallel.c:1386:3: warning: overflow in implicit constant conversion [-Woverflow]
> >    handles[1] = INVALID_SOCKET;
> >    ^
> In mingw-w64, SOCKET_INVALID is defined as ~0:
> http://sourceforge.net/p/mingw-w64/mingw-w64/ci/master/tree/mingw-w64-headers/include/psdk_inc/_socket_types.h
> Is this overflow caused because SOCKET_INVALID corresponds to a 64b
> value in mingw-w64?
> Looking at the code this exists since 9.3.

I think this is caused because the variable is not defined as SOCKET.
The attached patch fixes this.  This should prevent the warning.

Wouldn't it be better to use pgsocket rather than SOCKET?

Cheers,

Jeff

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Andres Freund
Дата:
Сообщение: pg_sleep() doesn't work well with recovery conflict interrupts.
Следующее
От: Peter Geoghegan
Дата:
Сообщение: Re: pg_stat directory and pg_stat_statements