2 // { dg-do compile { target c++14 } }
4 template <typename> struct SpecPerType;
6 public: template <bool> static void MbrFnTempl();
7 template <unsigned> struct A { static void InnerMemberFn(); };
8 void Trigger() { A<0>::InnerMemberFn; }
10 template <> struct SpecPerType<Specializer> {
11 using FnType = void *;
13 static constexpr FnType SpecMbrFnPtr = Specializer::MbrFnTempl<P>;
15 template <unsigned X> void Specializer::A<X>::InnerMemberFn() {
16 using Spec = SpecPerType<Specializer>;
17 Spec ErrorSite = Spec::SpecMbrFnPtr<SpecMbrFnPtr>; // { dg-error "not declared" }