summaryrefslogtreecommitdiff
path: root/libiberty/cplus-dem.c
diff options
context:
space:
mode:
authorJoel Brobecker <brobecker@gnat.com>2003-10-20 23:50:37 +0000
committerJoel Brobecker <brobecker@gnat.com>2003-10-20 23:50:37 +0000
commit8df884ec6c89269b6dfd5a6374f830c47166a808 (patch)
tree393beace6408bd17b1626062d30400cbde34dc83 /libiberty/cplus-dem.c
parent078505894efddcd927fb8a6d9b85477a784717a3 (diff)
downloadgdb-8df884ec6c89269b6dfd5a6374f830c47166a808.tar.gz
* cplus-dem.c (demangle_template): Register a new Btype only
when needed. * testsuite/demangle-expected: Add a new test.
Diffstat (limited to 'libiberty/cplus-dem.c')
-rw-r--r--libiberty/cplus-dem.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/libiberty/cplus-dem.c b/libiberty/cplus-dem.c
index 59afcd371ba..5e2e7a7126c 100644
--- a/libiberty/cplus-dem.c
+++ b/libiberty/cplus-dem.c
@@ -2043,13 +2043,10 @@ demangle_template (work, mangled, tname, trawname, is_type, remember)
const char *start;
int is_java_array = 0;
string temp;
- int bindex = 0;
(*mangled)++;
if (is_type)
{
- if (remember)
- bindex = register_Btype (work);
start = *mangled;
/* get template name */
if (**mangled == 'z')
@@ -2226,7 +2223,10 @@ demangle_template (work, mangled, tname, trawname, is_type, remember)
}
if (is_type && remember)
- remember_Btype (work, tname->b, LEN_STRING (tname), bindex);
+ {
+ const int bindex = register_Btype (work);
+ remember_Btype (work, tname->b, LEN_STRING (tname), bindex);
+ }
/*
if (work -> static_type)