aboutsummaryrefslogtreecommitdiff
path: root/gdb/language.h
diff options
context:
space:
mode:
authorAdam Fedor <fedor@gnu.org>2003-04-02 03:02:46 +0000
committerAdam Fedor <fedor@gnu.org>2003-04-02 03:02:46 +0000
commit9a3d7dfd2e56889dce422be422767465d3f0f06b (patch)
treef86ad9aba59abf9c3148e8b7596b96e36ba4c3bf /gdb/language.h
parent5eb7f2340accc91a9efeab18386f95f24dd9709e (diff)
downloadgdb-9a3d7dfd2e56889dce422be422767465d3f0f06b.zip
gdb-9a3d7dfd2e56889dce422be422767465d3f0f06b.tar.gz
gdb-9a3d7dfd2e56889dce422be422767465d3f0f06b.tar.bz2
* Makefile.in (c_lang.o, jv_lang.o, language.o): Add $(demangle_h).
* language.h (struct language_defn): Add la_demangle. (language_demangle): Declare. * language.c (language_demangle): New function. (unk_lang_demangle): Likewise. (unknown_language_defn, auto_language_defn, local_language_defn): Add ukn_lang_demangle. * ada-lang.c (ada_language_defn): Add NULL for la_demangle element. * f-lang.c, m2-lang.c, p-lang.c, scm-lang.c: Likewise. * c-lang.c (c_language_defn, asm_language_defn): Likewise. (cplus_language_defn): Add cplus_demangle for la_demangle element. * jv-lang.c (java_demangle): New function (java_language_defn): Use it for la_demangle element. * objc-lang.c (objc_demangle): Add options argument (objc_language_defn): Use objc_demangle for la_demangle element. * maint.c (maintenance_demangle): Replace switch with call to language_demangle. * utils.c (fprintf_symbol_filtered): Likewise.
Diffstat (limited to 'gdb/language.h')
-rw-r--r--gdb/language.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/gdb/language.h b/gdb/language.h
index 4b9f8ce..d926532 100644
--- a/gdb/language.h
+++ b/gdb/language.h
@@ -209,6 +209,9 @@ struct language_defn
if it isn't a language tramp for this language. */
CORE_ADDR (*skip_trampoline) (CORE_ADDR pc);
+ /* Return demangled language symbol, or NULL. */
+ char *(*la_demangle) (const char *mangled, int options);
+
/* Base 2 (binary) formats. */
struct language_format_info la_binary_format;
@@ -475,4 +478,8 @@ extern enum language get_frame_language (void); /* In stack.c */
extern CORE_ADDR skip_language_trampoline (CORE_ADDR pc);
+/* Return demangled language symbol, or NULL. */
+extern char *language_demangle (const struct language_defn *current_language,
+ const char *mangled, int options);
+
#endif /* defined (LANGUAGE_H) */