commit 07c93cb103c8010b97a91029e15e1b238fbe5eb3 (tree) parent 90fb2d97542e5a9fdb8ebf4fcc85b9f900dd3e66 Author: Alex Rønne Petersen <alex@alexrp.com> Date: Sun, 18 May 2025 22:24:42 +0200 compiler-rt: Add a comment explaining why we currently need weak linkage. Diffstat:
| M | lib/compiler_rt/common.zig | | | 3 | +++ |
1 file changed, 3 insertions(+), 0 deletions(-)
diff --git a/lib/compiler_rt/common.zig b/lib/compiler_rt/common.zig @@ -3,6 +3,9 @@ const builtin = @import("builtin"); const native_endian = builtin.cpu.arch.endian(); const ofmt_c = builtin.object_format == .c; +/// For now, we prefer weak linkage because some of the routines we implement here may also be +/// provided by system/dynamic libc. Eventually we should be more disciplined about this on a +/// per-symbol, per-target basis: https://github.com/ziglang/zig/issues/11883 pub const linkage: std.builtin.GlobalLinkage = if (builtin.is_test) .internal else if (ofmt_c)