Commit e57df6fe by Kriang Lerdsuwanakij Committed by Kriang Lerdsuwanakij

Friend class name lookup 4/n

	Friend class name lookup 4/n
	* class.c (pushclass): Don't call cxx_remember_type_decls.
	* cp-tree.h (clear_anon_tags): Remove declaration.
	* decl.c (grokdeclarator): Don't call lookup_tag_reverse.
	* name-lookup.c (binding_entry_free, binding_table_free): Comment
	out functions.
	(binding_table_find_anon_type, binding_table_reverse_maybe_remap,
	binding_table_remove_anonymous_types, cxx_remember_type_decls,
	bt_print_entry, clear_anon_tags, follow_tag_typedef, lookup_tag,
	lookup_tag_reverse): Remove
	(begin_scope, leave_scope, kept_level_p, print_binding_level):
	Don't use type_decls field in cp_binding_level.
	(maybe_process_template_type_declaration, pushtag): Set
	CLASSTYPE_NESTED_UTDS directly.
	* name-lookup.h (binding_table_remove_anonymous_types,
	cxx_remember_type_decls, lookup_tag, lookup_tag_reverse): Remove
	declaration.
	(cp_binding_level): Remove type_decls field.

From-SVN: r91342
parent 7510740d
2004-11-27 Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net>
Friend class name lookup 4/n
* class.c (pushclass): Don't call cxx_remember_type_decls.
* cp-tree.h (clear_anon_tags): Remove declaration.
* decl.c (grokdeclarator): Don't call lookup_tag_reverse.
* name-lookup.c (binding_entry_free, binding_table_free): Comment
out functions.
(binding_table_find_anon_type, binding_table_reverse_maybe_remap,
binding_table_remove_anonymous_types, cxx_remember_type_decls,
bt_print_entry, clear_anon_tags, follow_tag_typedef, lookup_tag,
lookup_tag_reverse): Remove
(begin_scope, leave_scope, kept_level_p, print_binding_level):
Don't use type_decls field in cp_binding_level.
(maybe_process_template_type_declaration, pushtag): Set
CLASSTYPE_NESTED_UTDS directly.
* name-lookup.h (binding_table_remove_anonymous_types,
cxx_remember_type_decls, lookup_tag, lookup_tag_reverse): Remove
declaration.
(cp_binding_level): Remove type_decls field.
2004-11-26 Kazu Hirata <kazu@cs.umass.edu>
* typeck.c: Fix a comment typo.
......
......@@ -5376,8 +5376,6 @@ pushclass (tree type)
pushlevel_class ();
else
restore_class_cache ();
cxx_remember_type_decls (CLASSTYPE_NESTED_UTDS (type));
}
/* When we exit a toplevel class scope, we save its binding level so
......
......@@ -3709,7 +3709,6 @@ extern void push_switch (tree);
extern void pop_switch (void);
extern void pushtag (tree, tree, int);
extern tree make_anon_name (void);
extern void clear_anon_tags (void);
extern int decls_match (tree, tree);
extern tree duplicate_decls (tree, tree);
extern tree pushdecl_top_level (tree);
......
......@@ -7663,7 +7663,6 @@ grokdeclarator (const cp_declarator *declarator,
tree t;
/* Replace the anonymous name with the real name everywhere. */
lookup_tag_reverse (type, unqualified_id);
for (t = TYPE_MAIN_VARIANT (type); t; t = TYPE_NEXT_VARIANT (t))
if (TYPE_NAME (t) == oldname)
TYPE_NAME (t) = decl;
......
......@@ -46,10 +46,8 @@ struct binding_entry_s GTY(())
#define NAMESPACE_STD_HT_SIZE (1 << 8)
#define GLOBAL_SCOPE_HT_SIZE (1 << 8)
extern void binding_table_remove_anonymous_types (binding_table);
extern void binding_table_foreach (binding_table, bt_foreach_proc, void *);
extern binding_entry binding_table_find (binding_table, tree);
extern void cxx_remember_type_decls (binding_table);
/* Datatype that represents binding established by a declaration between
a name and a C++ entity. */
......@@ -194,9 +192,6 @@ struct cp_binding_level GTY(())
/* A chain of VTABLE_DECL nodes. */
tree vtables;
/* A dictionary for looking up user-defined-types. */
binding_table type_decls;
/* A list of USING_DECL nodes. */
tree usings;
......@@ -317,8 +312,6 @@ extern void pop_nested_namespace (tree);
extern void pushlevel_class (void);
extern void poplevel_class (void);
extern tree pushdecl_with_scope (tree, cxx_scope *);
extern tree lookup_tag (enum tree_code, tree, cxx_scope *, int);
extern tree lookup_tag_reverse (tree, tree);
extern tree lookup_name (tree, int);
extern tree lookup_name_real (tree, int, int, bool, int, int);
extern tree lookup_type_scope (tree, tag_scope);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment