aboutsummaryrefslogtreecommitdiff
path: root/src/link.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/link.cpp')
-rw-r--r--src/link.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/link.cpp b/src/link.cpp
index 61a5ad5664..efb60976cb 100644
--- a/src/link.cpp
+++ b/src/link.cpp
@@ -1894,9 +1894,14 @@ static void link_diag_callback(void *context, const char *ptr, size_t len) {
buf_append_mem(diag, ptr, len);
}
-static bool zig_lld_link(ZigLLVM_ObjectFormatType oformat, const char **args, size_t arg_count, Buf *diag) {
+static bool zig_lld_link(ZigLLVM_ObjectFormatType oformat, const char **args, size_t arg_count,
+ Buf *diag)
+{
+ Buf *stdout_diag = buf_alloc();
buf_resize(diag, 0);
- return ZigLLDLink(oformat, args, arg_count, link_diag_callback, diag);
+ bool result = ZigLLDLink(oformat, args, arg_count, link_diag_callback, stdout_diag, diag);
+ buf_destroy(stdout_diag);
+ return result;
}
static void add_uefi_link_args(LinkJob *lj) {