FreeBSD/contrib/gcc/cp/class.c
/* Note that NAME was declared (as DECL) in the current class.  Check
   to see that the declaration is valid.  */
Note that NAME was declared (as DECL) in the current class.  Check
to see that the declaration is valid.
Note that NAME was declared ( as DECL ) in the current class . Check to see that the declaration is valid .
void
note_name_declared_in_class (tree name, tree decl)
{
  splay_tree names_used;
  splay_tree_node n;
  names_used
    = current_class_stack[current_class_depth - 1].names_used;
  if (!names_used)
    return;
  n = splay_tree_lookup (names_used, (splay_tree_key) name);
  if (n)
    {
      error ("declaration of %q#D", decl);
      error ("changes meaning of %qD from %q+#D",
	     DECL_NAME (OVL_CURRENT (decl)), (tree) n->value);
    }
}
void note_name_declared_in_class ( tree name , tree decl ) { splay_tree names_used ; splay_tree_node n ; names_used = current_class_stack [ current_class_depth - 1 ] . names_used ; if ( ! names_used ) return ; n = splay_tree_lookup ( names_used , ( splay_tree_key ) name ) ; if ( n ) { error ( " " , decl ) ; error ( " " , DECL_NAME ( OVL_CURRENT ( decl ) ) , ( tree ) n -> value ) ; } }
Note that NAME was declared (as DECL) in the current class.
Note that NAME was declared ( as DECL ) in the current class .
/* Look to see if we ever used this name.  */ /* [basic.scope.class]

	 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.  */