debug/dwarf

Guided tour · Runtime & Debug · pkg.go.dev →

Parse DWARF debugging info from binaries. Used by debug/elf, debug/macho, etc. to expose types and line tables.

Usage

Iterate entries

f, _ := elf.Open("a.out")
d, _ := f.DWARF()
r := d.Reader()
for {
    entry, err := r.Next()
    if err != nil || entry == nil { break }
    fmt.Println(entry.Tag, entry.Val(dwarf.AttrName))
}