diff options
| author | Jakub Konka <kubkon@jakubkonka.com> | 2023-11-02 19:33:10 +0100 |
|---|---|---|
| committer | Jakub Konka <kubkon@jakubkonka.com> | 2023-11-04 09:12:07 +0100 |
| commit | 3b9455f0052d4ae648e8eec9685455eb501abcfd (patch) | |
| tree | 793590c4bee2b58126f28c9f397085d44056c638 /src/link/Elf | |
| parent | eddf9cc65b0abe8a8cdf8c80d8cd97e56e860515 (diff) | |
| download | zig-3b9455f0052d4ae648e8eec9685455eb501abcfd.tar.gz zig-3b9455f0052d4ae648e8eec9685455eb501abcfd.zip | |
elf: generate pretty rudimentary archive
Diffstat (limited to 'src/link/Elf')
| -rw-r--r-- | src/link/Elf/Archive.zig | 4 | ||||
| -rw-r--r-- | src/link/Elf/ZigObject.zig | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/link/Elf/Archive.zig b/src/link/Elf/Archive.zig index 1493ded684..49496ec7b5 100644 --- a/src/link/Elf/Archive.zig +++ b/src/link/Elf/Archive.zig @@ -10,7 +10,7 @@ strtab: []const u8 = &[0]u8{}, /// String that begins an archive file. pub const ARMAG: *const [SARMAG:0]u8 = "!<arch>\n"; /// Size of that string. -pub const SARMAG: u4 = 8; +pub const SARMAG = 8; /// String in ar_fmag at the end of each header. pub const ARFMAG: *const [2:0]u8 = "`\n"; @@ -58,7 +58,7 @@ pub const ar_hdr = extern struct { } fn isSymtab(self: ar_hdr) bool { - return mem.eql(u8, getValue(&self.ar_name), "/"); + return mem.eql(u8, getValue(&self.ar_name), "/") or mem.eql(u8, getValue(&self.ar_name), SYM64NAME); } }; diff --git a/src/link/Elf/ZigObject.zig b/src/link/Elf/ZigObject.zig index fd8de4002b..12ba88b7a9 100644 --- a/src/link/Elf/ZigObject.zig +++ b/src/link/Elf/ZigObject.zig @@ -514,7 +514,7 @@ pub fn updateArSymtab(self: ZigObject, elf_file: *Elf) !void { if (global.type(elf_file) == elf.SHN_UNDEF) continue; const off = try elf_file.ar_strtab.insert(gpa, global.name(elf_file)); - elf_file.ar_symtab.appendAssumeCapacity(.{ off, self.index }); + elf_file.ar_symtab.appendAssumeCapacity(.{ .off = off, .file_index = self.index }); } } |
