Use allocated cplus_specific for cplus symbols.

2010-07-16  Sami Wagiaalla  <swagiaal@redhat.com>

	* symtab.h (symbol_set_demangled_name): Now takes an optional objfile*
	argument.
	(cplus_specific): New struct.
	* symtab.c (symbol_set_demangled_name): Updated.
	Use cplus_specific for cplus symbols.
	(symbol_get_demangled_name): Retrive the name from the cplus_specific
	struct for cplus symbols.
	(symbol_init_language_specific): Set cplus_specific for cplus symbols.
	(symbol_set_names): Pass objfile to symbol_set_demangled_name.
	* symtab.c (symbol_init_cplus_specific): New function.
This commit is contained in:
Sami Wagiaalla
2010-07-16 19:23:56 +00:00
parent 502abbdf22
commit 29df156df4
4 changed files with 70 additions and 11 deletions

View File

@@ -9744,7 +9744,9 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu)
between gfortran, iFort etc. */
if (cu->language == language_fortran
&& symbol_get_demangled_name (&(sym->ginfo)) == NULL)
symbol_set_demangled_name (&(sym->ginfo), (char *) dwarf2_full_name (name, die, cu));
symbol_set_demangled_name (&(sym->ginfo),
(char *) dwarf2_full_name (name, die, cu),
NULL);
/* Default assumptions.
Use the passed type or decode it from the die. */