diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2023-11-06 21:17:06 +0100 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2023-11-06 21:18:26 +0100 |
| commit | 261db02018c71e8977d2bf2a78d495cc31abd1bc (patch) | |
| tree | e4de8e92879ff268352fc342ddf0ff23646cb953 /src/link/Elf.zig | |
| parent | 6490e2ed82ebcf7ffe9732bbd7ef881412363336 (diff) | |
| download | zig-261db02018c71e8977d2bf2a78d495cc31abd1bc.tar.gz zig-261db02018c71e8977d2bf2a78d495cc31abd1bc.zip | |
CheckObject: support parsing and dumping archive symtab for ELF
Diffstat (limited to 'src/link/Elf.zig')
| -rw-r--r-- | src/link/Elf.zig | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/link/Elf.zig b/src/link/Elf.zig index adeeb0bbbb..0281fb223e 100644 --- a/src/link/Elf.zig +++ b/src/link/Elf.zig @@ -1582,12 +1582,12 @@ pub fn flushStaticLib(self: *Elf, comp: *Compilation) link.File.FlushError!void // Update file offsets of contributing objects. const total_size: usize = blk: { - var pos: usize = Archive.ARMAG.len; - pos += @sizeOf(Archive.ar_hdr) + ar_symtab.size(.p64); + var pos: usize = elf.ARMAG.len; + pos += @sizeOf(elf.ar_hdr) + ar_symtab.size(.p64); if (ar_strtab.size() > 0) { pos = mem.alignForward(usize, pos, 2); - pos += @sizeOf(Archive.ar_hdr) + ar_strtab.size(); + pos += @sizeOf(elf.ar_hdr) + ar_strtab.size(); } for (files.items) |index| { @@ -1599,7 +1599,7 @@ pub fn flushStaticLib(self: *Elf, comp: *Compilation) link.File.FlushError!void }; pos = mem.alignForward(usize, pos, 2); state.file_off = pos; - pos += @sizeOf(Archive.ar_hdr) + (math.cast(usize, state.size) orelse return error.Overflow); + pos += @sizeOf(elf.ar_hdr) + (math.cast(usize, state.size) orelse return error.Overflow); } break :blk pos; @@ -1615,7 +1615,7 @@ pub fn flushStaticLib(self: *Elf, comp: *Compilation) link.File.FlushError!void try buffer.ensureTotalCapacityPrecise(total_size); // Write magic - try buffer.writer().writeAll(Archive.ARMAG); + try buffer.writer().writeAll(elf.ARMAG); // Write symtab try ar_symtab.write(.p64, self, buffer.writer()); |
