From: Simon Marchi Date: Tue, 25 Feb 2020 22:21:54 +0000 (-0500) Subject: Remove dwarf2_per_cu_data::dwarf2_per_objfile reference in cutu_reader::keep X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=68a44194a5b1220e81122f4edc2f8a7f5f548ba1;p=thirdparty%2Fbinutils-gdb.git Remove dwarf2_per_cu_data::dwarf2_per_objfile reference in cutu_reader::keep Here, it should be safe to use dwarf2_per_cu_data->cu->per_objfile, as we know that dwarf2_per_cu_data->cu will be set at this point. Note that this adds a reference to dwarf2_per_cu_data::cu, which we'll want to remove later, but the current focus is to remove references to dwarf2_per_cu_data::dwarf2_per_objfile. We'll deal with that in a subsequent patch. gdb/ChangeLog: * dwarf2/read.c (cutu_reader::keep): Access dwarf2_per_objfile object through m_this_cu->cu. --- diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c index 3138e961bc9..d028e86c356 100644 --- a/gdb/dwarf2/read.c +++ b/gdb/dwarf2/read.c @@ -7124,8 +7124,11 @@ cutu_reader::keep () gdb_assert (!dummy_p); if (m_new_cu != NULL) { - struct dwarf2_per_objfile *dwarf2_per_objfile - = m_this_cu->dwarf2_per_objfile; + /* We know that m_this_cu->cu is set, since we are in the process of + parsing the CU. */ + gdb_assert (m_this_cu->cu != nullptr); + dwarf2_per_objfile *dwarf2_per_objfile = m_this_cu->cu->per_objfile; + /* Link this CU into read_in_chain. */ m_this_cu->cu->read_in_chain = dwarf2_per_objfile->per_bfd->read_in_chain; dwarf2_per_objfile->per_bfd->read_in_chain = m_this_cu;