* buildsym.c (add_symbol_to_list): Do not call

cp_scan_for_anonymous_namespaces here.
	(finish_block): Do not call cp_set_block_scope here.
	* cp-namespace.c (processing_has_namespace_info)
	(processing_current_prefix): Delete.
	(cp_initialize_namespace): Do not initialize
	processing_has_namespace_info.
	(cp_scan_for_anonymous_namespaces): Use SYMBOL_DEMANGLED_NAME.  Do
	not check processing_has_namespace_info.
	(cp_set_block_scope): Take prefix and namespace info flag as
	arguments.  Honor namespaces regardless of a demangled name.
	* cp-support.h (processing_has_namespace_info)
	(processing_current_prefix): Delete declarations.
	(cp_set_block_scope): Update prototype.
	* dwarf2read.c (processing_has_namespace_info)
	(processing_current_prefix): New static variables.
	(read_file_scope): Initialize processing_has_namespace_info.
	(read_func_scope): Call cp_set_block_scope for C++.
	(new_symbol): Call cp_scan_for_anonymous_namespaces for C++.
	* symtab.c (symbol_demangled_name): Accept a const argument.
	* symtab.h (symbol_demangled_name): Update prototype.
This commit is contained in:
Daniel Jacobowitz 2008-08-21 18:40:34 +00:00
parent 3567439cde
commit df8a16a1ee
9 changed files with 115 additions and 81 deletions

View file

@ -74,10 +74,6 @@ extern struct type *cp_lookup_rtti_type (const char *name,
/* Functions/variables from cp-namespace.c. */
extern unsigned char processing_has_namespace_info;
extern const char *processing_current_prefix;
extern int cp_is_anonymous (const char *namespace);
extern void cp_add_using_directive (const char *name,
@ -91,7 +87,9 @@ extern void cp_finalize_namespace (struct block *static_block,
extern void cp_set_block_scope (const struct symbol *symbol,
struct block *block,
struct obstack *obstack);
struct obstack *obstack,
const char *processing_current_prefix,
int processing_has_namespace_info);
extern void cp_scan_for_anonymous_namespaces (const struct symbol *symbol);