2002-10-23 Elena Zannoni <ezannoni@redhat.com>

* symtab.c (symbol_demangled_name): New function.
	* symtab.h (SYMBOL_DEMANGLED_NAME): Simplify macro, by
	turning most of it into a function.
	(symbol_demangled_name): Export.
This commit is contained in:
Elena Zannoni 2002-10-23 20:09:28 +00:00
parent 19de93d0c6
commit 9cc0d196fc
3 changed files with 29 additions and 13 deletions

View File

@ -1,3 +1,10 @@
2002-10-23 Elena Zannoni <ezannoni@redhat.com>
* symtab.c (symbol_demangled_name): New function.
* symtab.h (SYMBOL_DEMANGLED_NAME): Simplify macro, by
turning most of it into a function.
(symbol_demangled_name): Export.
2002-10-23 Michael Snyder <msnyder@redhat.com>
* valops.c (value_of_local): Restore quotes in error message.

View File

@ -488,7 +488,24 @@ symbol_init_demangled_name (struct general_symbol_info *gsymbol,
#endif
}
/* Return the demangled name for a symbol based on the language for
that symbol. If no demangled name exists, return NULL. */
char *
symbol_demangled_name (struct general_symbol_info *gsymbol)
{
if (gsymbol->language == language_cplus
|| gsymbol->language == language_java)
return gsymbol->language_specific.cplus_specific.demangled_name;
else if (gsymbol->language == language_objc)
return gsymbol->language_specific.objc_specific.demangled_name;
else
return NULL;
/* OBSOLETE (SYMBOL_LANGUAGE (symbol) == language_chill */
/* OBSOLETE ? SYMBOL_CHILL_DEMANGLED_NAME (symbol) */
}

View File

@ -151,19 +151,11 @@ extern void symbol_init_language_specific (struct general_symbol_info *symbol,
extern void symbol_init_demangled_name (struct general_symbol_info *symbol,
struct obstack *obstack);
/* Macro that returns the demangled name for a symbol based on the language
for that symbol. If no demangled name exists, returns NULL. */
#define SYMBOL_DEMANGLED_NAME(symbol) \
(SYMBOL_LANGUAGE (symbol) == language_cplus \
|| SYMBOL_LANGUAGE (symbol) == language_java \
? SYMBOL_CPLUS_DEMANGLED_NAME (symbol) \
: (SYMBOL_LANGUAGE (symbol) == language_objc \
? SYMBOL_OBJC_DEMANGLED_NAME (symbol) \
: /* OBSOLETE (SYMBOL_LANGUAGE (symbol) == language_chill */ \
/* OBSOLETE ? SYMBOL_CHILL_DEMANGLED_NAME (symbol) */ \
NULL))
/* Return the demangled name for a symbol based on the language for
that symbol. If no demangled name exists, return NULL. */
#define SYMBOL_DEMANGLED_NAME(symbol) \
(symbol_demangled_name (&(symbol)->ginfo))
extern char *symbol_demangled_name (struct general_symbol_info *symbol);
/* OBSOLETE #define SYMBOL_CHILL_DEMANGLED_NAME(symbol) */
/* OBSOLETE (symbol)->ginfo.language_specific.chill_specific.demangled_name */