diff options
Diffstat (limited to 'libiberty/cplus-dem.c')
-rw-r--r-- | libiberty/cplus-dem.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/libiberty/cplus-dem.c b/libiberty/cplus-dem.c index b66d26de6a1..4e60b2cfcbd 100644 --- a/libiberty/cplus-dem.c +++ b/libiberty/cplus-dem.c @@ -478,9 +478,6 @@ do_hpacc_template_literal PARAMS ((struct work_stuff *, const char **, string *) static int snarf_numeric_literal PARAMS ((const char **, string *)); -static char* (*cplus_demangle_v3_p) PARAMS ((const char* mangled)) - = cplus_demangle_v3; - /* There is a TYPE_QUAL value for each type qualifier. They can be combined by bitwise-or to form the complete set of qualifiers for a type. */ @@ -914,7 +911,7 @@ cplus_demangle (mangled, options) /* The V3 ABI demangling is implemented elsewhere. */ if (GNU_V3_DEMANGLING || AUTO_DEMANGLING) { - ret = cplus_demangle_v3_p (mangled); + ret = cplus_demangle_v3 (mangled, work->options); if (ret || GNU_V3_DEMANGLING) return ret; } @@ -4877,7 +4874,7 @@ string_append_template_idx (s, idx) static const char *program_name; static const char *program_version = VERSION; -static int flags = DMGL_PARAMS | DMGL_ANSI; +static int flags = DMGL_PARAMS | DMGL_ANSI | DMGL_VERBOSE; static void demangle_it PARAMS ((char *)); static void usage PARAMS ((FILE *, int)) ATTRIBUTE_NORETURN; @@ -4890,7 +4887,8 @@ demangle_it (mangled_name) { char *result; - result = cplus_demangle (mangled_name, flags); + /* For command line args, also try to demangle type encodings. */ + result = cplus_demangle (mangled_name, flags | DMGL_TYPES); if (result == NULL) { printf ("%s\n", mangled_name); @@ -5089,7 +5087,6 @@ main (argc, argv) if (optind < argc) { - cplus_demangle_v3_p = cplus_demangle_v3_type; for ( ; optind < argc; optind++) { demangle_it (argv[optind]); |