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

--- Comment #2 from Stephan Hartmann <stha09 at googlemail dot com> ---
Handwritten reduced testcase:

template <typename T>
struct raw_ptr {
    T* operator->() const;
    template <typename U>
    explicit operator U*() const;
};

struct bar {
   static void func(); 
};

struct foo {
    typedef void (bar::*GenFunc)();
    foo(GenFunc gen_func) {
        (bar_->*gen_func)();
    }
    raw_ptr<bar> bar_;
};

Reply via email to