Hide Forgot
Created attachment 480487 [details] testsuite/gdb.dwarf2/dw4-sig-types.x Another gdb testsuite nitpick. Current gcc (4.5.1 20100924) with -gdwarf-4 outputs type_units with DW_AT_GNU_odr_signature set. eu-readelf doesn't know about these, dwarflint and libdw/c++/values.cc (from the dwarf branch) barf on them. It isn't immediately clear to me whether DW_AT_GNU_odr_signature is an alternative form of DW_AT_signature or not. It is a strange kind of "reference" since it really is a md5 hash in data8 form. Maybe gcc should just not output this anymore? testsuite file attached. Some background http://gcc.gnu.org/wiki/DwarfSeparateTypeInfo
I haven't found what DW_AT_GNU_odr_signature is actually used for. It doesn't appear to be a reference kind of thing in the DWARF sense. I've added eu-readelf support to print its name. For the dwarf branch, there is just known-dwarf.h regeneration (--enable-maintainer-mode) that should keep dwarf::attributes::name from missing it. There should not be anything else required there for handling it, it's just a 64-bit constant. dwarflint might need to add it.
Thanks for this test case. It uncovered a couple bugs that are now fixed on the dwarf branch where it makes sense. I'll write to the list about the one place where it doesn't make sense. I think we can consider this fixed from dwarflint perspective, too.
Just for reference, DW_AT_GNU_odr_signature isn't the same as DW_AT_signature. DW_AT_GNU_odr_signature is meant to be a helper for One Definition Rule (ODR) detection https://secure.wikimedia.org/wikipedia/en/wiki/One_Definition_Rule but no support for it has been written yet. See: http://gcc.gnu.org/ml/gcc/2011-04/msg00065.html DW_AT_signature of course is a new reference type for .debug_types.
This can be closed when 0.153 is released. Commit 47c532 "Handle DW_AT_GNU_odr_signature in readelf." is all there is to do for now.
elfutils-0.153-1.fc16 has been submitted as an update for Fedora 16. https://admin.fedoraproject.org/updates/elfutils-0.153-1.fc16
elfutils-0.153-1.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/elfutils-0.153-1.fc17
Package elfutils-0.153-1.fc17: * should fix your issue, * was pushed to the Fedora 17 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing elfutils-0.153-1.fc17' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2012-2344/elfutils-0.153-1.fc17 then log in and leave karma (feedback).
elfutils-0.153-1.fc17 has been pushed to the Fedora 17 stable repository. If problems still persist, please make note of it in this bug report.
elfutils-0.153-1.fc15 has been submitted as an update for Fedora 15. https://admin.fedoraproject.org/updates/elfutils-0.153-1.fc15
elfutils-0.153-1.fc16 has been pushed to the Fedora 16 stable repository. If problems still persist, please make note of it in this bug report.
elfutils-0.153-1.fc15 has been pushed to the Fedora 15 stable repository. If problems still persist, please make note of it in this bug report.