https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78216

            Bug ID: 78216
           Summary: Segfault when dealing with a parameter pack of member
                    functions pointers
           Product: gcc
           Version: 6.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: michele.caini at gmail dot com
  Target Milestone: ---

The following code causes an ICE (segfault):

    template<typename...>
    struct S;

    template<typename R, typename... A, typename... T>
    struct S<R(A...), T...> {
        template<R(T::* ...M)(A...)>
        void f() {}
    };

    struct A { void f() {} };
    struct B { void f() {} };

    int main() {
        S<void(void), A, B> s;
        s.f<&A::f, &B::f>();
    }

GCC 7 is affected by a similar problem (ICE with no segfault).

Reply via email to