From ba9d9bfa1c53e9ef319a84279e213ded7844d4e5 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Wed, 20 Mar 1996 06:11:33 +0000 Subject: [PATCH] (demangle_template): Fix for non-mangled pointer arguments. From-SVN: r11572 --- gcc/cplus-dem.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gcc/cplus-dem.c b/gcc/cplus-dem.c index da0ffffd1cc..a7f86802278 100644 --- a/gcc/cplus-dem.c +++ b/gcc/cplus-dem.c @@ -1067,11 +1067,17 @@ demangle_template (work, mangled, tname, trawname) { char *p = xmalloc (symbol_len + 1), *q; strncpy (p, *mangled, symbol_len); + p [symbol_len] = '\0'; q = cplus_demangle (p, work->options); string_appendn (tname, "&", 1); - string_append (tname, q); + if (q) + { + string_append (tname, q); + free (q); + } + else + string_append (tname, p); free (p); - free (q); } *mangled += symbol_len; } -- 2.30.2