https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101078
Patrick Palka <ppalka at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |ppalka at gcc dot gnu.org --- Comment #2 from Patrick Palka <ppalka at gcc dot gnu.org> --- Reduced rejects-valid testcase: struct A { static void f(); }; template<class> struct B : private A { struct C { void g() { f(); } }; }; int main() { B<int>::C().g(); } This might be a latent bug, for if the call f() is replaced with B::f(), then we started rejecting after r8-5270. If the call f() is replaced with A::f(), we accept.