From 079c672a7a387d8324fa11348b0fa6b87016f9dc Mon Sep 17 00:00:00 2001 From: DJ Delorie Date: Fri, 23 Mar 2001 23:57:50 +0000 Subject: merge from gcc --- libiberty/ChangeLog | 5 +++++ libiberty/cp-demangle.c | 8 ++------ 2 files changed, 7 insertions(+), 6 deletions(-) (limited to 'libiberty') diff --git a/libiberty/ChangeLog b/libiberty/ChangeLog index f6e537f..5780bcd 100644 --- a/libiberty/ChangeLog +++ b/libiberty/ChangeLog @@ -1,3 +1,8 @@ +2001-03-23 Jakub Jelinek + + * cp-demangle.c (demangle_discriminator): `_0' is discriminator #1, + `_' not followed by a digit is invalid. + 2001-03-22 Jim Blandy * cp-demangle.c (string_list_delete): Use dyn_string_delete diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c index b8255b3..8419eef 100644 --- a/libiberty/cp-demangle.c +++ b/libiberty/cp-demangle.c @@ -3446,15 +3446,11 @@ demangle_discriminator (dm, suppress_first) /* Write the discriminator. The mangled number is two less than the discriminator ordinal, counting from zero. */ - RETURN_IF_ERROR (int_to_dyn_string (discriminator + 2, + RETURN_IF_ERROR (int_to_dyn_string (discriminator + 1, (dyn_string_t) dm->result)); } else - { - if (flag_verbose) - /* A missing digit correspond to one. */ - RETURN_IF_ERROR (result_add_char (dm, '1')); - } + return STATUS_ERROR; if (flag_verbose) RETURN_IF_ERROR (result_add_char (dm, ']')); } -- cgit v1.1