https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100335
--- Comment #8 from Jonathan Wakely <redi at gcc dot gnu.org> --- Like I already suggested in comment 3: Either the overloads should conflict because of [over.load]/2.3 (and the definition of Derived should be ill-formed) or they should be hidden and not visible in Derived (so the call to test.method() should be ill-formed).