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

--- Comment #4 from Marc Glisse <glisse at gcc dot gnu.org> ---
struct B {
  B(int = 0);
};
int c;
int *d;
struct G {
  G();
  int numProcs_;
};
int fn1();
B fn2() {
  if (c)
    return 0;
  return B();
}

long &fn3(long &p1, long &p2) {
  if (p2 < p1)
    return p2;
  return p1;
}

void fn4(long p1) {
  long a = fn1();
  fn2();
  int b = fn3(p1, a);
  for (int i; i < b; ++i)
    d[0] = 0;
  for (; a < p1; ++a)
    d[a] = 0;
}

G::G() { fn4(numProcs_ + 1); }

(compiled with -O3 -ftrapv)

Reply via email to