Merge -r 127928:132243 from trunk
[official-gcc.git] / gcc / testsuite / g++.dg / rtti / dyncast2.C
blob2e4f6159696125084345463924347f0bf5dd380b
1 // PR c++/34364
2 // { dg-do run }
4 struct A
6   virtual ~A () {}
7 };
9 struct B : public A
11   template <typename T> struct C
12   {
13     static void f (A &a)
14     {
15       dynamic_cast <B &>(a).g ();
16     }
17   };
19   B () : c (6) {}
20   void g () { c++; }
21   int c;
24 B b;
26 int
27 main (void)
29   B::C<int>::f (b);
30   return b.c != 7;