diff options
author | H.J. Lu <hjl@gnu.org> | 2002-02-03 04:00:36 +0000 |
---|---|---|
committer | H.J. Lu <hjl@gcc.gnu.org> | 2002-02-02 20:00:36 -0800 |
commit | d74697b84d79ac7f863e9a65b445ac2e72b59090 (patch) | |
tree | c5e77d08efd7f3370d2e01b346b00712f1485d05 /libiberty/cplus-dem.c | |
parent | 4437e4d46bea5eb68ea903e94fbf18f6b2aeb4ca (diff) | |
download | gcc-d74697b84d79ac7f863e9a65b445ac2e72b59090.tar.gz |
cp-demangle.c (cp_demangle_type): Do not protect with IN_LIBGCC2.
2002-02-02 H.J. Lu (hjl@gnu.org)
* cp-demangle.c (cp_demangle_type): Do not protect with
IN_LIBGCC2.
(cplus_demangle_v3_all): New.
(cplus_demangle_v3): Call cplus_demangle_v3_all.
(cplus_demangle_v3_type): Call cplus_demangle_v3_all.
* cplus-dem.c (cplus_demangle_v3_p): New function pointer.
Initialized to cplus_demangle_v3.
(cplus_demangle_with_style): Call cplus_demangle_v3_p instead
of cplus_demangle_v3.
(main): Set cplus_demangle_v3_p to cplus_demangle_v3_type for
command line symbol.
* testsuite/regress-demangle: Pass the mangled name at the
command line.
From-SVN: r49456
Diffstat (limited to 'libiberty/cplus-dem.c')
-rw-r--r-- | libiberty/cplus-dem.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/libiberty/cplus-dem.c b/libiberty/cplus-dem.c index 5af88263686..b66d26de6a1 100644 --- a/libiberty/cplus-dem.c +++ b/libiberty/cplus-dem.c @@ -478,6 +478,9 @@ 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. */ @@ -911,7 +914,7 @@ cplus_demangle (mangled, options) /* The V3 ABI demangling is implemented elsewhere. */ if (GNU_V3_DEMANGLING || AUTO_DEMANGLING) { - ret = cplus_demangle_v3 (mangled); + ret = cplus_demangle_v3_p (mangled); if (ret || GNU_V3_DEMANGLING) return ret; } @@ -5086,6 +5089,7 @@ main (argc, argv) if (optind < argc) { + cplus_demangle_v3_p = cplus_demangle_v3_type; for ( ; optind < argc; optind++) { demangle_it (argv[optind]); |