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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2024-11-15
     Ever confirmed|0                           |1
             Status|UNCONFIRMED                 |NEW

--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
So confirmed.  I get 4294967260 on x86_64.  'c' is unused.  Please use
if (a != 4294967260) abort (); instead of printf, that also makes it obvious
what the correct intended value is.

unsigned a;
short b, d, e;
int main() {
  short h = d;
  short *z = &h;
  for (_Bool i = 0; i < 1; i = 1)
    for (unsigned j = 0; j < (z[i] ?: 10); j += 3) {
      a -= 9;
      b -= ~e;
    }
  if (a != 4294967260)
    __builtin_abort ();
}

Reply via email to