aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/dwarf2read.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 0221554..bff1141 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2014-10-25 Doug Evans <xdje42@gmail.com>
+
+ * dwarf2read.c (process_structure_scope): Remove second (nested) copy
+ of local var child_die.
+
2014-10-24 Don Breazeal <donb@codesourcery.com>
* infrun.c (follow_fork_inferior): Update fork message printing
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index eccd11a..3f2a127 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -13016,7 +13016,7 @@ static void
process_structure_scope (struct die_info *die, struct dwarf2_cu *cu)
{
struct objfile *objfile = cu->objfile;
- struct die_info *child_die = die->child;
+ struct die_info *child_die;
struct type *type;
type = get_die_type (die, cu);
@@ -13026,7 +13026,6 @@ process_structure_scope (struct die_info *die, struct dwarf2_cu *cu)
if (die->child != NULL && ! die_is_declaration (die, cu))
{
struct field_info fi;
- struct die_info *child_die;
VEC (symbolp) *template_args = NULL;
struct cleanup *back_to = make_cleanup (null_cleanup, 0);
@@ -13197,6 +13196,8 @@ process_structure_scope (struct die_info *die, struct dwarf2_cu *cu)
current die is a declaration. Normally, of course, a declaration
won't have any children at all. */
+ child_die = die->child;
+
while (child_die != NULL && child_die->tag)
{
if (child_die->tag == DW_TAG_member