diff options
Diffstat (limited to 'libiberty')
-rw-r--r-- | libiberty/ChangeLog | 5 | ||||
-rw-r--r-- | libiberty/cplus-dem.c | 10 |
2 files changed, 15 insertions, 0 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index e79260d..5546177 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,8 @@ +2001-12-06 Richard Henderson <rth@redhat.com> + + * cplus-dem.c (libiberty_demanglers): Add no_demangling case. + (cplus_demangle): Support no_demangling. + 2001-11-27 Zack Weinberg <zack@codesourcery.com> * _doprnt.c: Moved here from gcc/doprint.c. Adjust to build diff --git a/libiberty/cplus-dem.c b/libiberty/cplus-dem.c index e19340c..a35ff14 100644 --- a/libiberty/cplus-dem.c +++ b/libiberty/cplus-dem.c @@ -259,6 +259,12 @@ typedef enum type_kind_t const struct demangler_engine libiberty_demanglers[] = { { + NO_DEMANGLING_STYLE_STRING, + no_demangling, + "Demangling disabled" + } + , + { AUTO_DEMANGLING_STYLE_STRING, auto_demangling, "Automatic selection based on executable" @@ -909,6 +915,10 @@ cplus_demangle (mangled, options) { char *ret; struct work_stuff work[1]; + + if (current_demangling_style == no_demangling) + return xstrdup (mangled); + memset ((char *) work, 0, sizeof (work)); work->options = options; if ((work->options & DMGL_STYLE_MASK) == 0) |