Re: Raising our compiler requirements for 9.6

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Noah Misch <noah(at)leadboat(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Raising our compiler requirements for 9.6
Date: 2015-08-07 18:48:43
Message-ID: 7858.1438973323@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Andres Freund <andres(at)anarazel(dot)de> writes:
> On 2015-08-07 14:32:35 -0400, Tom Lane wrote:
>> Eventually I think we're going to have to spend some effort on making a
>> clearer separation between "front end safe" and "not front end safe"
>> header files. Until we do that, though, adding these #error directives
>> may just do more harm than good. We don't know which backend headers
>> are being used by third-party code, but we can be 100% sure it's more
>> than what's used by the frontend code in the core distribution.

> Right now the #errors are in only in places that'd also break without
> them, but only on the old platforms without inline support and in a more
> subtle way.

Indeed, but the buildfarm results say that the set of such platforms is
nearly empty. It's very likely that a lot of third-party authors won't
ever care if their code doesn't build on such platforms; certainly not
nearly as much as they'll care if their code doesn't build *at all*,
and they have no recourse except to modify the PG headers because they
need some symbol that happens to be defined in a header that also has
some lock-related junk.

My point is simply that adding those #errors represents a large bet that
the separation between frontend and backend headers is clean enough.
I really doubt that it is, and I don't see anyone volunteering to put
adequate time into fixing that right now. I'm afraid we'll put in
ugly, hurried, piecemeal hacks in response to complaints.

> I'm ok with getting lock.h from the list of headers where that's the
> case, done by removing lwlock.h from it, which I proposed that
> upthread. But then you objected to that approach.

Well, we're still discussing what's the best compromise.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2015-08-07 19:02:09 Re: 9.5 release notes
Previous Message Heikki Linnakangas 2015-08-07 18:45:22 Re: WIP: SCRAM authentication