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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |diagnostic
            Summary|valid -Wmaybe-uninitialized |false -Wmaybe-uninitialized
                   |suppressed by -O2           |with -O1

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
This new testcase is still broken as i & 3 is 0, 1, 2 or 3.  All of the case
statements are there too.  So if you want to say something the bug is in -O1
which should not warn instead.

But that requires VRP which is what figures out i & 3 to have a range of [0,3]
and that only runs at -O2.

There is still no bug for -O2 here.  GCC is correct those j is initialized on
all paths.

Reply via email to