summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYunlian Jiang <yunlian@google.com>2017-10-24 14:05:25 -0700
committerYunlian Jiang <yunlian@google.com>2017-10-24 14:05:25 -0700
commite44cf9875724610a41579a7997451ee2fcb390a9 (patch)
tree6a328b6c4fd84c333c5d8df3c3745be484159b19
parenta0fdc06dda0f0ce61aeee2a349884b11202ff342 (diff)
downloadgdb-e44cf9875724610a41579a7997451ee2fcb390a9.tar.gz
Fix dwarf2_string_attr for -gsplit-dwarf
This cherrypicks the upstream commit: commit 16eb6b2db49e6cf2fdca56efd37689fcc170cd37 Author: Leszek Swirski <leszeks@google.com> Date: Mon Aug 7 16:40:38 2017 +0200 Fix dwarf2_string_attr for -gsplit-dwarf The dwarf2_string_attr did not allow DW_FORM_GNU_str_index as a form for string types. This manifested as null strings in the namespace_name lookup (replaced with "(anonymous namespace)") when debugging Fission-compiled code. Change-Id: I81ead0d0cad0dce5d40b6d4efa08af60606ef560
-rw-r--r--gdb-8.0.1/gdb/dwarf2read.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gdb-8.0.1/gdb/dwarf2read.c b/gdb-8.0.1/gdb/dwarf2read.c
index 8503e6171..d10ce286f 100644
--- a/gdb-8.0.1/gdb/dwarf2read.c
+++ b/gdb-8.0.1/gdb/dwarf2read.c
@@ -17577,7 +17577,8 @@ dwarf2_string_attr (struct die_info *die, unsigned int name, struct dwarf2_cu *c
if (attr != NULL)
{
if (attr->form == DW_FORM_strp || attr->form == DW_FORM_line_strp
- || attr->form == DW_FORM_string || attr->form == DW_FORM_GNU_strp_alt)
+ || attr->form == DW_FORM_string || DW_FORM_GNU_str_index
+ || attr->form == DW_FORM_GNU_strp_alt)
str = DW_STRING (attr);
else
complaint (&symfile_complaints,