Hi, On 2022-09-16 09:14:20 +1200, Thomas Munro wrote: > GCC 12 produces a bunch of warnings by default with meson, and that > turned out to be because the default optimisation level is -O3. > That's a change from the make build, which uses -O2. Should we set a > default of 2, or is there some meson-way-of-doing-things reason why > not?
We can change the defaults - the only downside is that there's a convenience setting 'buildtype' (debug, debugoptimized, release, minsize, custom, plain) that changes multiple settings (optimization level, amount of debugging information) and that doesn't work as nicely if you change the default compiler optimization setting. They made a similar discovery as us, deriving the defaults of settings based on other settings quickly can become confusing. I think they're looking at how to make that UI a bit nicer. I'd prefer to defer fine-tuning the default settings till a bunch of this has gone in, but I won't insist on that course. Their default warning flags passed to compilers trigger a bunch of warnings in our build (irrespective of -O*), so I lowered the warning level. But I think their set of settings likely is sensible, an we should just disable a bunch of warnings we don't care about. But I haven't done that for now, to keep the set of warning flags the same between meson and autoconf. Greetings, Andres Freund