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

--- Comment #10 from Sergei Trofimovich <slyfox at gcc dot gnu.org> ---
Slightly more type-sound program, still ICEs:

typedef unsigned u32;
int b(void);
void f_l_u32(long, u32);
void bug(void) {
  u32 hdr[3];
  u32 offset = 0;
  for (;b();) {
    u32 _addr = offset;
    u32 _size = 4;
    u32 *_data = hdr;
    while (_size) {
      _size--;
      f_l_u32(_addr, *_data);
      _data++;
      _addr += 4;
    }
    offset += 4;
  }
  f_l_u32(offset, 0);
}

Reply via email to