https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80152
--- Comment #4 from Marc Glisse <glisse at gcc dot gnu.org> --- (In reply to Sebastian Dröge from comment #3) > But even after optimization, there would be the argc!=1 code path left, > which uses the uninitialized foo. No, the optimization sets foo to 1 always, and argc is not tested anymore.