// PR c++/20206
// { dg-do run }
// { dg-options "-O0" }

void
bar (int x)
{
  asm ("" : : "g" (x));
}

struct S { S () {}; virtual ~S () {}; };
struct T { virtual T *foo (int) {}; };
struct V : virtual S, virtual T {};
struct V v;
struct U : public S, public T
{
  bool a;
  U () {}
  virtual ~U () {}
  virtual V *foo (int x)
  {
    switch (x)
      {
      case 12:
	break;
      case 9:
	bar (7);
	break;
      case 10:
	bar (12);
	break;
      case 4:
	bar (18);
	break;
      case 2:
	bar (26);
	break;
      }
    return &v;
  }
};
U u;

int
main ()
{
}
