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

--- Comment #9 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Richard mentioned that #c7 doesn't ICE on the 4.9 branch, only trunk.  This one
ICEs on the 4.9 branch too (the only change is " = 0", i.e. making A::a pure
virtual), again -O3 -m32 is needed:

struct A
{
  virtual int a (int, int = 0) = 0;
  void b ();
  void c ();
  int d;
};

struct B : virtual A
{
  int a (int, int);
  int e;
};

int f;

void
A::b ()
{
  a (0);
}

void
A::c ()
{
  a (f);
}

int
B::a (int, int)
{
  return e;
}

Reply via email to