mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-15 04:31:49 +08:00
[gdb] Fix regression in dwarf2_name
Since commit 2c830f5475
"Change some uses of DW_STRING to string method" we
have these regressions:
...
FAIL: gdb.base/info-types-c++.exp: info types
FAIL: gdb.cp/anon-struct.exp: print type of t::t
FAIL: gdb.cp/anon-struct.exp: print type of X::t2
FAIL: gdb.cp/anon-struct.exp: print type of X::t2::t2
FAIL: gdb.cp/anon-struct.exp: print type of t3::~t3
...
Fix these in dwarf2_name by updating attr_name each time attr is updated.
Tested on x86_64-linux.
gdb/ChangeLog:
2020-09-30 Tom de Vries <tdevries@suse.de>
PR symtab/26683
* dwarf2/read.c (dwarf2_name): Update attr_name after attr is updated.
This commit is contained in:
parent
cae21f8ebf
commit
95eb9e54a5
@ -1,3 +1,8 @@
|
||||
2020-09-30 Tom de Vries <tdevries@suse.de>
|
||||
|
||||
PR symtab/26683
|
||||
* dwarf2/read.c (dwarf2_name): Update attr_name after attr is updated.
|
||||
|
||||
2020-09-30 Tom Tromey <tromey@adacore.com>
|
||||
|
||||
* dwarf2/read.c (handle_variant): Use constant_value.
|
||||
|
@ -22632,6 +22632,7 @@ dwarf2_name (struct die_info *die, struct dwarf2_cu *cu)
|
||||
if (!attr || attr_name == NULL)
|
||||
{
|
||||
attr = dw2_linkage_name_attr (die, cu);
|
||||
attr_name = attr == nullptr ? nullptr : attr->as_string ();
|
||||
if (attr == NULL || attr_name == NULL)
|
||||
return NULL;
|
||||
|
||||
@ -22645,6 +22646,7 @@ dwarf2_name (struct die_info *die, struct dwarf2_cu *cu)
|
||||
return nullptr;
|
||||
|
||||
attr->set_string_canonical (objfile->intern (demangled.get ()));
|
||||
attr_name = attr->as_string ();
|
||||
}
|
||||
|
||||
/* Strip any leading namespaces/classes, keep only the
|
||||
|
Loading…
Reference in New Issue
Block a user