On Mon, May 16, 2022 at 7:18 PM Mark Wielaard <mjw(a)fedoraproject.org> wrote:
Hi Steve,
On Wed, 2022-05-11 at 22:35 -0400, Steve Grubb wrote:
> On Monday, May 9, 2022 5:10:07 AM EDT Daniel P. Berrangé wrote:
> > Are you going to take this idea forward and make a formal change proposal
> > for Fedora to set -ftrivial-auto-var-init=zero by default in its default
> > RPM build flags ?
>
> I've connected with the gcc folks and we will file a proposal in the near
> future.
I am not a fan, because I think this mainly hides bugs. But also
because the original change proposal made it sound like we don't have
any other way to find and fix these kind of bugs. While a little
analysis of your examples showed we can find and fix 100% of these
issues with the existing gcc and analysis tools.
So my counter proposal would probably be to enforce -Werror and running
all package test-suites under valgrind. But maybe others won't like
that "solution".
<why_not_both.gif>
OK, running all package testsuites under valgrind may be overkill but
we should certainly build towards coverage that resembles that.
If you do propose this again could you at least make clear it's
another
tool in the toolbox, not a replacement, and that the other tools do
work, and are trusted (if you pay attention to them). Then at least we
could have a honest discussion why (and in which circumstances) each of
the tools might or might not work/catch an issue. And if we
may/can/should require packagers to pay more attention to compiler
warnings and/or running analysis tools over the sources they package.
We should capture the impact of this on analysis tools and perhaps
document ways to achieve the full benefit of valgrind when debugging
packages. The ideal would be a rawhide-debug (or f37-build-debug,
etc) target that disables trivial-auto-var-init and maybe also some
other flags to improve debuggability, but that could be a separate
proposal.
Thanks,
Siddhesh