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

--- Comment #10 from Matthias Klose <doko at gcc dot gnu.org> ---
here is one more build failure seen with 20170221, with -O1 (works with -O0),
seen in the gtk-gnutella package:

$ gcc-6 -c -O1 -msecure-plt -mcpu=power8 fileinfo.i
fileinfo.c: In function 'file_info_retrieve_binary':
fileinfo.c:2113:1: internal compiler error: in push_reload, at reload.c:1349
Please submit a full bug report,
with preprocessed source if appropriate.

$ cat fileinfo.i
typedef long a;
enum c { e, f, g, h, i, ab } j();
int l, n, o, p;
a q, r;
void *memcpy();
void b();
static int k(int *s) {
  int m;
  if (j(&m))
    *s = m;
  return !0;
}
void d(char s) {
  int af[4];
  int ag;
  enum c ah;
  char ai[24 << 11];
  unsigned aj;
  if (!k(&aj))
    goto ak;
  for (;;) {
    if (!k(&ag))
      goto ak;
    switch (ah) {
    case e:
      b("");
      b("bad length %d for GUID in fileinfo v%u for \"%s\"");
    case i:
      b("bad length %d for TTH in fileinfo v%u for \"%s\"", aj);
    case ab:
      if (ag % 24)
        b("for \"%s\"", s);
    case f:
      if (20 == ag)
      case h:
        if (20 == ag)
          o = 0;
      break;
    case g:
      memcpy(af, ai, sizeof af);
      b();
      if (p) {
        a al, am;
        r = al << 2 | am;
        n = af[2];
        al = n;
        l = __builtin_bswap32(af[3]);
        am = q = n | l;
      }
    default:
      b("%s0 unhandled field ID %u 0", __func__);
    }
  }
ak:;
}

Reply via email to