1 // { dg-do assemble  }
2 // GROUPS passed bad-errors
3 #include <iostream>
4 
5 class ParX
6         {
7         public:
ParX()8                 ParX() {}
9         };
10 
11 class X : public ParX
12         {
13         public:
fn2()14                 void fn2() { std::cout << "hi" << std::endl; }
15         };
16 
main()17 int main()
18         {
19         X               x;
20         ParX*   pParX                   = &x;
21         void    (ParX::*p)()    = (void (ParX::*)()) &X::fn2;    // line 19
22 
23         (pParX->*p)();
24         }
25 
26 
27 
28 
29 
30 
31