aboutsummaryrefslogtreecommitdiff
path: root/gdb/dwarf2read.c
diff options
context:
space:
mode:
authorDoug Evans <dje@google.com>2014-12-02 16:24:37 -0800
committerDoug Evans <dje@google.com>2014-12-02 16:24:37 -0800
commit72998fb37a6a4bc684ba86228e81f27c7a7609ca (patch)
tree56ee7f801e7b39bb411acbfc10bd2be30f35017f /gdb/dwarf2read.c
parent422b9917ceadf6247ac4d52aa198c291e5de4c10 (diff)
downloadgdb-72998fb37a6a4bc684ba86228e81f27c7a7609ca.zip
gdb-72998fb37a6a4bc684ba86228e81f27c7a7609ca.tar.gz
gdb-72998fb37a6a4bc684ba86228e81f27c7a7609ca.tar.bz2
PR symtab/17591
gdb/ChangeLog: PR symtab/17591 * dwarf2read.c (find_slot_in_mapped_hash): Use cp_remove_params to strip parameters.
Diffstat (limited to 'gdb/dwarf2read.c')
-rw-r--r--gdb/dwarf2read.c20
1 files changed, 7 insertions, 13 deletions
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index 5526db3..829611d 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;
+ }
}
}