aboutsummaryrefslogtreecommitdiff
path: root/src/link/Dwarf.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2022-03-08 14:55:54 -0700
committerAndrew Kelley <andrew@ziglang.org>2022-03-08 15:03:03 -0700
commitfb4ad37e0bd07513a0a56afb45e95c68036b1eea (patch)
treea735a6104ec10aae6417b7e11d4b893debb06776 /src/link/Dwarf.zig
parent874b51d8d4d80f224e979adba11526a5dcec61da (diff)
downloadzig-fb4ad37e0bd07513a0a56afb45e95c68036b1eea.tar.gz
zig-fb4ad37e0bd07513a0a56afb45e95c68036b1eea.zip
LLVM: fix memory leak of debug type names
This required adjusting `Type.nameAlloc` to be used with a general-purpose allocator and added `Type.nameAllocArena` for the arena use case (avoids allocation sometimes).
Diffstat (limited to 'src/link/Dwarf.zig')
-rw-r--r--src/link/Dwarf.zig2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/link/Dwarf.zig b/src/link/Dwarf.zig
index c4e31eed6d..fc8f1fab55 100644
--- a/src/link/Dwarf.zig
+++ b/src/link/Dwarf.zig
@@ -882,7 +882,7 @@ fn addDbgInfoType(
const abi_size = ty.abiSize(target);
try leb128.writeULEB128(dbg_info_buffer.writer(), abi_size);
// DW.AT.name, DW.FORM.string
- const struct_name = try ty.nameAlloc(arena);
+ const struct_name = try ty.nameAllocArena(arena);
try dbg_info_buffer.ensureUnusedCapacity(struct_name.len + 1);
dbg_info_buffer.appendSliceAssumeCapacity(struct_name);
dbg_info_buffer.appendAssumeCapacity(0);