This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH v2 4/8] DWARF-5 basic functionality
On Tue, 21 Feb 2017 20:18:36 +0100, Andreas Arnez wrote:
> When I compile with "-O3", GCC now yields warnings for the two changed
> lines above:
>
> [...] warning: ‘header.comp_unit_head::type_offset_in_tu.cu_offset::cu_off’
> may be used uninitialized in this function [-Wmaybe-uninitialized]
What compiler/version/options do you use? I have tried now
gcc-4.8.5-11.el7.x86_64
CFLAGS=-O3 CXXFLAGS=-O3 ./configure;make
While I get some warnings/errors none of them is in dwarf2read.c.
I do not want to patch it without reproducibility of the warnings.
> I *think* GCC is wrong. From what I understand, we can only get here if
> header.unit_type == DW_UT_type, and then these fields should have been
> initialized in read_comp_unit_head before (right?).
Yes, I hope so.
> But then I wonder
> about the effect of the call to create_debug_type_hash_table in
> create_all_type_units:
>
> create_debug_type_hash_table (NULL, &dwarf2_per_objfile->info, types_htab,
> rcuh_kind::COMPILE);
>
> Is that needed?
Yes. Otherwise GDB would not read definitions of classes during
-gdwarf-5 -fdebug-types-section
as then DW_UT_type are located inside .debug_info.
> When doing so (see untested patch below),
No, that breaks: -gdwarf-5 -fdebug-types-section
Jan