diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2024-02-21 22:49:58 +0100 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2024-02-21 22:49:58 +0100 |
| commit | d19001abac6b5c0bc478799dc683bf71a6e6b2d8 (patch) | |
| tree | f0ca763017b7bb4e82b34c7a61ea3dc78b81e078 /src/link/Elf/Object.zig | |
| parent | 9fd112804fbdeb288b90cf8323d3ebefaa26372f (diff) | |
| download | zig-d19001abac6b5c0bc478799dc683bf71a6e6b2d8.tar.gz zig-d19001abac6b5c0bc478799dc683bf71a6e6b2d8.zip | |
elf: skip STT_NOTYPE only if SHN_UNDEF from symtab inclusion
Diffstat (limited to 'src/link/Elf/Object.zig')
| -rw-r--r-- | src/link/Elf/Object.zig | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/link/Elf/Object.zig b/src/link/Elf/Object.zig index 31b31f0578..16f8e263e7 100644 --- a/src/link/Elf/Object.zig +++ b/src/link/Elf/Object.zig @@ -848,7 +848,8 @@ pub fn updateSymtabSize(self: *Object, elf_file: *Elf) !void { if (local.atom(elf_file)) |atom| if (!atom.flags.alive) continue; const esym = local.elfSym(elf_file); switch (esym.st_type()) { - elf.STT_SECTION, elf.STT_NOTYPE => continue, + elf.STT_SECTION => continue, + elf.STT_NOTYPE => if (esym.st_shndx == elf.SHN_UNDEF) continue, else => {}, } local.flags.output_symtab = true; |
