// PR c++/90664 // { dg-do compile { target c++11 } } template struct OpM; template struct OpM {}; class Class { public: int address() noexcept { return 0; } void address(int) noexcept {} }; struct Sk { template Sk(R (C::*p)()) { typedef OpM OP; } }; Sk sk(static_cast(&Class::address));