1 // PR c++/43031 2 // { dg-do compile { target { { i?86-*-* x86_64-*-* } && ia32 } } } 3 4 class T; 5 class L { }; 6 class P : public L 7 { 8 typedef void (__attribute__((__stdcall__)) T::*F) (L*); 9 void f(bool aAdd); 10 }; 11 class T 12 { 13 public: 14 virtual void __attribute__((__stdcall__)) A(L *listener) = 0; 15 virtual void __attribute__((__stdcall__)) R(L *listener) = 0; 16 }; f(bool aAdd)17void P::f(bool aAdd) 18 { 19 F addRemoveEventListener = (aAdd ? &T::A : &T::R); 20 } 21