# std: replace debug.Dwarf.ElfModule with debug.ElfFile · gitcafe/zig

[View on GitCafe](https://git.cafe/gitcafe/zig/commit/c1a30bd0d876330ce7a241fc297c66577ae7e6aa)

Repository: [gitcafe/zig](https://git.cafe/gitcafe/zig)

Visibility: public

Requested revision: c1a30bd0d876330ce7a241fc297c66577ae7e6aa

Requested commit: c1a30bd0d876330ce7a241fc297c66577ae7e6aa

Commit: c1a30bd0d876330ce7a241fc297c66577ae7e6aa

Tree: fbc6e50c11746e259fb5366caf57fce40c4d6964

Author: mlugg

Committer: mlugg

## Message

```
std: replace debug.Dwarf.ElfModule with debug.ElfFile

This abstraction isn't really tied to DWARF at all! Really, we're just
loading some information from an ELF file which is useful for debugging.
That *includes* DWARF, but it also includes other information. For
instance, the other change here:

Now, if DWARF information is missing, `debug.SelfInfo.ElfModule` will
name symbols by finding a matching symtab entry. We actually already do
this on Mach-O, so it makes obvious sense to do the same on ELF! This
change is what motivated the restructuring to begin with.

The symtab work is derived from #22077.

Co-authored-by: geemili <opensource@geemili.xyz>

```

## Parents

- [f7980487395b660d5c568ba57891ab371a27102d](https://git.cafe/gitcafe/zig/commit/f7980487395b660d5c568ba57891ab371a27102d?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zig/tree/c1a30bd0d876330ce7a241fc297c66577ae7e6aa?format=markdown)
