[PATCH] DWZ aborted "write_types: Assertion `ref && ref->die_dup == NULL'"
Mark Wielaard
mark@klomp.org
Sat Feb 6 03:01:59 GMT 2021
Hi Jini,
On Fri, Feb 05, 2021 at 01:21:16PM +0000, George, Jini Susan via Dwz wrote:
> This was triggering with the gdb test case
> gdb.dwarf2/dw4-sig-types.exp when compiled with clang.
Thanks, I could replicate it with that. The difference between g++
and clang++ building that testcase with -gdwarf-4
-fdebug-types-section is that g++ always creates the actual type DIE
as a top-level DIE in the type unit, while clang++ can create a deeper
embedded type DIE. If g++ needs the type to be nested (for example
inside a namespace, it will still create a top-level DIE with a
DW_AT_specification pointing to the nested type. Which is why we never
saw this assert accidentially trigger in the g++ case.
I pushed the patch.
Thanks,
Mark
More information about the Dwz
mailing list