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

--- Comment #10 from David Binderman <dcb314 at hotmail dot com> ---
Reduced test case:

typedef struct {
  short a;
  struct {
    unsigned short b;
    unsigned short c
  } d[]
} e;
enum { f, g, h, i };
e j;
char k, l;
e *m;
void n(void) {
  int o;
  char *q, *r = 0, *s, *t, *p = &k;
  for (; *p; ++p)
    switch (o) {
    case f:
      o = s = p;
    case g:
      switch (*p) {
      case '@':
        t = p;
        o = h;
      }
      break;
    case h:
      q = p;
    case i:
      if (p == '#')
        r = p;
    }
  j.d[0].b = q - &k;
  j.d[0].c = r - q;
  if (s) {
    j.d[0].b = s - &k;
    j.d[0].c = t - s;
  }
  if (m)
    j.d[0].b = j.d[0].c = l;
}

Reply via email to