Re: pgsql: Refactor libpqwalreceiver - Mailing list pgsql-committers

From Alvaro Herrera
Subject Re: pgsql: Refactor libpqwalreceiver
Date
Msg-id 20161202041747.ymo6gbnbdjmuqryo@alvherre.pgsql
Whole thread Raw
In response to Re: pgsql: Refactor libpqwalreceiver  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: pgsql: Refactor libpqwalreceiver
List pgsql-committers
Tom Lane wrote:
> Peter Eisentraut <peter_e@gmx.net> writes:
> > Refactor libpqwalreceiver
>
> Buildfarm results indicate this broke the Windows build.

src/backend/replication/walreceiver.c(296): error C2039: 'pgwin32_connect' : is not a member of
'WalReceiverFunctionsType'[c:\prog\bf\root\HEAD\pgsql.build\postgres.vcxproj] 
          c:\prog\bf\root\HEAD\pgsql.build\src\include\replication/walreceiver.h(163) : see declaration of
'WalReceiverFunctionsType'
src/backend/replication/walreceiver.c(1152): warning C4003: not enough actual parameters for macro 'send'
[c:\prog\bf\root\HEAD\pgsql.build\postgres.vcxproj]
src/backend/replication/walreceiver.c(1152): error C2039: 'pgwin32_send' : is not a member of
'WalReceiverFunctionsType'[c:\prog\bf\root\HEAD\pgsql.build\postgres.vcxproj] 
          c:\prog\bf\root\HEAD\pgsql.build\src\include\replication/walreceiver.h(163) : see declaration of
'WalReceiverFunctionsType'
src/backend/replication/walreceiver.c(1152): error C2059: syntax error : ')'
[c:\prog\bf\root\HEAD\pgsql.build\postgres.vcxproj]
src/backend/replication/walreceiver.c(1230): warning C4003: not enough actual parameters for macro 'send'
[c:\prog\bf\root\HEAD\pgsql.build\postgres.vcxproj]
src/backend/replication/walreceiver.c(1230): error C2039: 'pgwin32_send' : is not a member of
'WalReceiverFunctionsType'[c:\prog\bf\root\HEAD\pgsql.build\postgres.vcxproj] 
          c:\prog\bf\root\HEAD\pgsql.build\src\include\replication/walreceiver.h(163) : see declaration of
'WalReceiverFunctionsType'
src/backend/replication/walreceiver.c(1230): error C2059: syntax error : ')'
[c:\prog\bf\root\HEAD\pgsql.build\postgres.vcxproj]

That's because win32.h has this line:

#define connect(s, name, namelen) pgwin32_connect(s, name, namelen)

which breaks the use of "connect" as a struct member name (same with send).
The easiest fix seems to rename the struct members.

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


pgsql-committers by date:

Previous
From: Alvaro Herrera
Date:
Subject: pgsql: Permit dump/reload of not-too-large >1GB tuples
Next
From: Petr Jelinek
Date:
Subject: Re: pgsql: Refactor libpqwalreceiver