https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87035
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> --- [basic.scope.class] p2: "A name N used in a class S shall refer to the same declaration in its context and when re-evaluated in the completed scope of S. No diagnostic is required for a violation of this rule."