From: Doug Evans Date: Wed, 3 Dec 2014 00:24:37 +0000 (-0800) Subject: PR symtab/17591 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=72998fb37a6a4bc684ba86228e81f27c7a7609ca;p=binutils-gdb.git PR symtab/17591 gdb/ChangeLog: PR symtab/17591 * dwarf2read.c (find_slot_in_mapped_hash): Use cp_remove_params to strip parameters. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index c71c3011850..4ca9ac17672 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2014-12-02 Doug Evans + + PR symtab/17591 + * dwarf2read.c (find_slot_in_mapped_hash): Use cp_remove_params + to strip parameters. + 2014-12-02 Doug Evans * dwarf2read.c (peek_die_abbrev): Improve error message text. diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index 5526db35b9c..829611dfe9d 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -2918,22 +2918,16 @@ find_slot_in_mapped_hash (struct mapped_index *index, const char *name, { /* NAME is already canonical. Drop any qualifiers as .gdb_index does not contain any. */ - const char *paren = NULL; - /* Need to handle "(anonymous namespace)". */ - if (*name != '(') - paren = strchr (name, '('); - - if (paren) + if (strchr (name, '(') != NULL) { - char *dup; - - dup = xmalloc (paren - name + 1); - memcpy (dup, name, paren - name); - dup[paren - name] = 0; + char *without_params = cp_remove_params (name); - make_cleanup (xfree, dup); - name = dup; + if (without_params != NULL) + { + make_cleanup (xfree, without_params); + name = without_params; + } } }