Hi, On Mon, Aug 24, 2020 at 07:38:10PM +0200, Jakub Jelinek wrote: > On Mon, Aug 24, 2020 at 02:56:54PM +0200, Mark Wielaard wrote: > > DWARF5 makes it possible to read loclists tables without consulting > > the debuginfo tree by introducing a table header. Adding location views > > breaks this (at least for binutils and elfutils). So don't enable > > variable-location-views by default if DWARF5 or higher is selected. > > This should be discussed with Alex, CCed. > I'd say elfutils/binutils should just show .debug_loclists independent of > .debug_info if there are no loc views and use .debug_info otherwise.
Yes, sorry, should have CCed Alex. I do agree this is less than ideal. It was really just to make sure the elfutils testsuite was clean. But the issue is real. As is, when enabling DWARF5, it is impossible for consumers to parse the .debug_loclists independently. The only way to know whether (and where) the locviews are is by finding and then parsing the corresponding CU DIE tree. There is actually an alternative representation enabled by -gvariable-location-views=incompat5 that might help, but as the name implies it isn't standard DWARF5, and I believe neither elfutils nor binutils parses it. I am not sure what a good default is in case we enable -gdwarf-5. Cheers, Mark