// PR c++/34364 | |
// { dg-do run } | |
struct A | |
{ | |
virtual ~A () {} | |
}; | |
struct B : public A | |
{ | |
template <typename T> struct C | |
{ | |
static void f (A &a) | |
{ | |
dynamic_cast <B &>(a).g (); | |
} | |
}; | |
B () : c (6) {} | |
void g () { c++; } | |
int c; | |
}; | |
B b; | |
int | |
main (void) | |
{ | |
B::C<int>::f (b); | |
return b.c != 7; | |
} |