pgsql: Hide warnings from Python headers when using gcc-compatible comp

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Hide warnings from Python headers when using gcc-compatible comp
Date: 2023-12-26 21:16:56
Message-ID: E1rIEnI-00C3EC-Au@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Hide warnings from Python headers when using gcc-compatible compiler.

Like commit 388e80132, use "#pragma GCC system_header" to silence
warnings appearing within the Python headers, since newer Python
versions no longer worry about some restrictions we still use like
-Wdeclaration-after-statement.

This patch improves on 388e80132 by inventing a separate wrapper
header file, allowing the pragma to be tightly scoped to just
the Python headers and not other stuff we have laying about in
plpython.h. I applied the same technique to plperl for the same
reason: the original patch suppressed warnings for a good deal
of our own code, not only the Perl headers.

Like the previous commit, back-patch to supported branches.

Peter Eisentraut and Tom Lane

Discussion: https://postgr.es/m/ae523163-6d2a-4b81-a875-832e48dec502@eisentraut.org

Branch
------
REL_15_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/5f8d6d7097fee4aa3a6da056489e03b7b1a98871

Modified Files
--------------
src/pl/plperl/GNUmakefile | 4 +-
src/pl/plperl/plperl.h | 195 +---------------------------------
src/pl/plperl/plperl_system.h | 215 ++++++++++++++++++++++++++++++++++++++
src/pl/plpython/Makefile | 3 +-
src/pl/plpython/plpython.h | 73 +------------
src/pl/plpython/plpython_system.h | 103 ++++++++++++++++++
6 files changed, 328 insertions(+), 265 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2023-12-26 22:03:44 pgsql: Fix mistaken file name in plpython's meson recipe.
Previous Message Peter Eisentraut 2023-12-26 20:37:11 pgsql: Add meson NLS support for pg_combinebackup