https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119913

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|x96_64                      |x86_64-*-*
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Note an uninitialized variable use is still UB, -ftrivial-auto-var-init=zero
does not make it well-defined.  Quoting docs:

"GCC still considers an automatic variable that doesn't have an explicit
initializer as uninitialized, @option{-Wuninitialized} and
@option{-Wanalyzer-use-of-uninitialized-value} will still report
warning messages on such automatic variables and the compiler will
perform optimization as if the variable were uninitialized."

In particular

#if 0
    int b = b1, c = c;
#else
    int b, c;
#endif

has in both cases 'c' uninitialized.

Reply via email to