// 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 () | |
{ | |
} |