// PR c++/59818 template struct Identity { typedef T type; }; struct Foo { template Foo(T*, void (Identity::type::*m)(void)); }; struct Bar { void Method(void) const; }; void Bar::Method(void) const { Foo foo(this, &Bar::Method); // { dg-error "no match" } }