]> git.ipfire.org Git - thirdparty/elfutils.git/commit
backends: Handle DW_TAG_unspecified_type in dwarf_peeled_die_type
authorMark Wielaard <mark@klomp.org>
Thu, 26 Jan 2023 17:19:15 +0000 (18:19 +0100)
committerMark Wielaard <mark@klomp.org>
Tue, 14 Feb 2023 15:30:24 +0000 (16:30 +0100)
commitf2c522567ad63ac293535fba9704895e685ab5bc
tree667604fa01006ac0b8041d156dbd9d345bcb0d17
parent3fa98a6f29b0f370e32549ead7eb897c839af980
backends: Handle DW_TAG_unspecified_type in dwarf_peeled_die_type

binutils 2.40 introduces DW_TAG_unspecified_type for assembly
functions with an unknown return type. This breaks the
run-funcretval.sh testcase because dwfl_module_return_value_location
returns an error for such functions because it cannot determine the
return value location. Fix that by treating DW_TAG_unspecified_type
as if the DIE doesn't have a DW_AT_type.

Also update the testcase to explicitly checking for
DW_TAG_unspecified_type and printing "returns unspecified type".

https://sourceware.org/bugzilla/show_bug.cgi?id=30047

Signed-off-by: Mark Wielaard <mark@klomp.org>
NEWS
backends/ChangeLog
backends/libebl_CPU.h
tests/ChangeLog
tests/funcretval.c