Re: meson: Specify -Wformat as a common warning flag for extensions
От | Tristan Partin |
---|---|
Тема | Re: meson: Specify -Wformat as a common warning flag for extensions |
Дата | |
Msg-id | CZOHWDYQJQCQ.23A5RRV1E05N2@neon.tech обсуждение исходный текст |
Ответ на | Re: meson: Specify -Wformat as a common warning flag for extensions (Michael Paquier <michael@paquier.xyz>) |
Ответы |
Re: meson: Specify -Wformat as a common warning flag for extensions
Re: meson: Specify -Wformat as a common warning flag for extensions |
Список | pgsql-hackers |
On Fri Mar 8, 2024 at 12:32 AM CST, Michael Paquier wrote: > On Thu, Mar 07, 2024 at 11:39:39PM -0600, Tristan Partin wrote: > > It sounds like a legitimate issue. I have confirmed the issue exists with a > > pg_config compiled with Meson. I can also confirm that this issue exists in > > the autotools build. > > First time I'm hearing about that, but I'll admit that I am cheating > because -Wformat is forced in my local builds for some time now. I'm > failing to see the issue with meson and ./configure even if I remove > the switch, though, using a recent version of gcc at 13.2.0, but > perhaps Debian does something underground. Are there version and/or > environment requirements to be aware of? > > Forcing -Wformat implies more stuff that can be disabled with > -Wno-format-contains-nul, -Wno-format-extra-args, and > -Wno-format-zero-length, but the thing is that we're usually very > conservative with such additions in the scripts. See also > 8b6f5f25102f, done, I guess, as an answer to this thread: > https://www.postgresql.org/message-id/4D431505.9010002%40dunslane.net > > A quick look at the past history of pgsql-hackers does not mention > that as a problem, either, but I may have missed something. Ok, I figured this out. -Wall implies -Wformat=1. We set warning_level to 1 in the Meson project() call, which implies -Wall, and set -Wall in CFLAGS for autoconf. That's the reason we don't get issues building Postgres. A user making use of the pg_config --cflags option, as Sutou is, *will* run into the aforementioned issues, since we don't propogate -Wall into pg_config. $ gcc $(pg_config --cflags) -E - < /dev/null > /dev/null cc1: warning: ‘-Wformat-security’ ignored without ‘-Wformat’ [-Wformat-security] $ gcc -Wall $(pg_config --cflags) -E - < /dev/null > /dev/null (nothing printed) -- Tristan Partin Neon (https://neon.tech)
В списке pgsql-hackers по дате отправления: