blob: eea89f421a577f7db84c24392d9a443d821cbddd [file] [log] [blame]
// { dg-do compile }
struct base { void somemethod() {} };
struct derived : public base { };
struct smartpointer
{
~smartpointer() { }
operator derived*() const
{
return 0;
}
};
typedef void ( derived::* methodptr_type )();
methodptr_type getmemberptr()
{
return &derived::somemethod;
}
void somefunction()
{
smartpointer pObj;
( pObj->*getmemberptr() )();
}