aboutsummaryrefslogtreecommitdiff
path: root/libiberty
diff options
context:
space:
mode:
authorBen Elliston <bje@au.ibm.com>2009-01-05 22:14:16 +0000
committerBen Elliston <bje@gcc.gnu.org>2009-01-06 09:14:16 +1100
commit381009fe75fca1b2c0440e101fa46a2decdbb0fa (patch)
treeb7f3081d285a36da657ab5ef1f9eb7fb5ccf5857 /libiberty
parent7b10257fdddb77e1854f223fc38c7d695fb8ebb4 (diff)
downloadgcc-381009fe75fca1b2c0440e101fa46a2decdbb0fa.zip
gcc-381009fe75fca1b2c0440e101fa46a2decdbb0fa.tar.gz
gcc-381009fe75fca1b2c0440e101fa46a2decdbb0fa.tar.bz2
cp-demangle.c (cplus_demangle_type): Return NULL if the character following a 'D' cannot be recognised.
* cp-demangle.c (cplus_demangle_type): Return NULL if the character following a 'D' cannot be recognised. From-SVN: r143098
Diffstat (limited to 'libiberty')
-rw-r--r--libiberty/ChangeLog5
-rw-r--r--libiberty/cp-demangle.c3
2 files changed, 8 insertions, 0 deletions
diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog
index f46fe05..ef17410 100644
--- a/libiberty/ChangeLog
+++ b/libiberty/ChangeLog
@@ -1,3 +1,8 @@
+2009-01-06 Ben Elliston <bje@au.ibm.com>
+
+ * cp-demangle.c (cplus_demangle_type): Return NULL if the
+ character following a 'D' cannot be recognised.
+
2008-12-18 Jason Merrill <jason@redhat.com>
PR c++/38561
diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c
index 5ae04c0..aa36db6 100644
--- a/libiberty/cp-demangle.c
+++ b/libiberty/cp-demangle.c
@@ -2131,6 +2131,9 @@ cplus_demangle_type (struct d_info *di)
peek = d_next_char (di);
ret->u.s_fixed.sat = (peek == 's');
break;
+
+ default:
+ return NULL;
}
break;