https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69753
--- Comment #6 from Patrick Palka <ppalka at gcc dot gnu.org> --- I wonder if adding a non-static overload of FromWebContents should affect the dependent-ness of guest, e.g.: class A { public: template <typename> void As(); static A *FromWebContents(); template <typename... Ts> A *FromWebContents(Ts...); }; template <typename T> class B : A { void FromWebContents() { auto guest = A::FromWebContents(); guest->As<T>(); } };