1 // PR c++/47303 2 // { dg-do compile } 3 4 5 struct Z 6 { 7 void foo (int); 8 }; 9 10 struct F 11 { 12 typedef void (Z::*zm) (int); 13 typedef void (F::*fm) (int); 14 template <zm> barF15 void bar (int) 16 { 17 union 18 { 19 Z z; 20 }; 21 } 22 }; 23 24 F::fm m = &F::bar <&Z::foo>; 25