Is the DWARF debugging info in compiled Go ELF executables compatible with standard parsers?

When adding DWARF debugging information to ELF executables, how closely does the Go compiler follow the DWARF spec? Should the DWARF information be readable by any DWARF parser, or is it expected that only the Go debugging tools will be able to parse it fully?

The reason I ask is that a tool I’m working with that parses DWARF information generates an error when used with a Go binaries, and from chatting with the tool developers it sounds like the DWARF information appears to go against the specification. I’m wondering if this is by design (and handled appropriately by the Go debugging tools) or if it’s a bug in the Go compiler code that inserts this information.

I’m happy to provide more specifics if anyone would like to see what specifically is causing the issue. Thank you!

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.