Re: perl 5.36, C99, -Wdeclaration-after-statement -Wshadow=compatible-local - Mailing list pgsql-hackers

From Andres Freund
Subject Re: perl 5.36, C99, -Wdeclaration-after-statement -Wshadow=compatible-local
Date
Msg-id 20221102234346.zcupk5mqysavci4t@awork3.anarazel.de
Whole thread Raw
In response to Re: perl 5.36, C99, -Wdeclaration-after-statement -Wshadow=compatible-local  (Peter Eisentraut <peter.eisentraut@enterprisedb.com>)
Responses Re: perl 5.36, C99, -Wdeclaration-after-statement -Wshadow=compatible-local
List pgsql-hackers
Hi,

On 2022-11-01 17:00:27 -0400, Peter Eisentraut wrote:
> On 01.11.22 19:01, Andres Freund wrote:
> > I don't know how much longer we can rely on headers being
> > -Wdeclaration-after-statement clean, my impression is that people don't have a
> > lot of patience for C89isms anymore.
> 
> > I wonder if we should try to use -isystem for a bunch of external
> > dependencies. That way we can keep the more aggressive warnings with a lower
> > likelihood of conflicting with stuff outside of our control.
> 
> Python has the same issues.  There are a few other Python-embedding projects
> that use -Wdeclaration-after-statement and complain if the Python headers
> violate it.  But it's getting tedious.  -isystem would be a better solution.

Which dependencies should we convert to -isystem? And I assume we should do so
with meson and autoconf? It's easy with meson, it provides a function to
change a dependency to use -isystem without knowing how the compiler spells
that. I guess with autoconf we'd have to check if the compiler understands
-isystem?

The other alternative would be to drop -Wdeclaration-after-statement :)

Greetings,

Andres Freund



pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: spinlock support on loongarch64
Next
From: Tom Lane
Date:
Subject: Re: perl 5.36, C99, -Wdeclaration-after-statement -Wshadow=compatible-local