(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
torture/
pr93347.C
// { dg-additional-options "--param early-inlining-insns=3 --param ipa-cp-eval-threshold=100" }


struct A {
  int a;
};
struct B {
  int b;
};
struct C : B, A {};
struct RA {
  virtual A *operator-();
};
struct RC : RA {
  C *operator-() {
    C *x = new C();
    return x;
  }
};
void fop(RC *x) { -static_cast<RA &>(*x); }