If a C23 compiler is detected, try asking for C17. Branches before 16 can't be compiled with a C23 compiler (see deprecation warnings silenced by commit f9a56e72, and non-back-patchable changes made in 16 by commit 1c27d16e). Test __STDC_VERSION__, and if it's above C17 then try appending -std=gnu17. The test is done with the user's CFLAGS, so an acceptable language version can also be configured manually that way.
This is done in branches 15 and older, back to 9.2, per policy of keeping them buildable with modern tools. Discussion: https://postgr.es/m/87o72eo9iu.fsf%40gentoo.org Branch ------ REL9_4_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/b1b8b8e6f141e378db21c609d8ee74d9125a4aca Modified Files -------------- configure | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ configure.in | 20 +++++++++++++++++ 2 files changed, 92 insertions(+)