1 // { dg-do assemble  }
2 // 981203 bkoz
3 // g++/13478
4 
5 class A {};
6 class AData {};
7 
8 typedef void (A::* hand) (void);
9 
10 struct hand_table {
11   const int data1;
12   const hand data2;
13 };
14 
15 class Agent : public A {
16 public:
17   enum { first = 1, last };
18 protected:
19   static const hand_table table_1[];
20   static const AData 	  table_2;
21 private:
22   void foo (void);
23 };
24 
25 const hand_table Agent::table_1[] =
26 {
27    {0,     &Agent::table_2},
28    {first, &Agent::foo},
29    {last,  &(hand)Agent::foo} // { dg-error "" } no match
30 };
31