OSDN Git Service

2e4f6159696125084345463924347f0bf5dd380b
[pf3gnuchains/gcc-fork.git] / dyncast2.C
1 // PR c++/34364
2 // { dg-do run }
3
4 struct A
5 {
6   virtual ~A () {}
7 };
8
9 struct B : public A
10 {
11   template <typename T> struct C
12   {
13     static void f (A &a)
14     {
15       dynamic_cast <B &>(a).g ();
16     }
17   };
18
19   B () : c (6) {}
20   void g () { c++; }
21   int c;
22 };
23
24 B b;
25
26 int
27 main (void)
28 {
29   B::C<int>::f (b);
30   return b.c != 7;
31 }