(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
ipa/
pr85447.C
// { dg-do compile }
// { dg-options "-O3 -std=gnu++11" }

typedef int a;
enum b : a;
class c {
public:
  enum { d };
  virtual b e(int *, int, const int *) = 0;
};
class f : c {
  b e(int *, int, const int *);
  b g();
};
b f::e(int *h, int i, const int *j) {
  if (i == d)
    return g();
  for (;;)
    e(h, i, j);
}
int k;
c *l;
void m() { l->e(&k, c::d, nullptr); }