struct S {

template< typename Derv, void (Derv::*PF)() >
void thunk();
};

struct Derv : S {
	void func() {}
};

template< typename Derv, void (Derv::*PF)() >
void thunk();


void test_func()
{
	&S::thunk< Derv, &Derv::func >;
	&thunk<  Derv, &Derv::func >;
}
