From e9fc58eab77d60dfb02155ff17178b496d75d035 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Mon, 6 Jun 2022 18:21:24 -0700 Subject: LLVM: handle extern function name collisions Zig allows multiple extern functions with the same name, and the backends have to handle this possibility. For LLVM, we keep a sparse map of collisions, and then resolve them in flushModule(). This introduces some technical debt that will have to be resolved when adding incremental compilation support to the LLVM backend. --- test/behavior/bugs/529.zig | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'test') diff --git a/test/behavior/bugs/529.zig b/test/behavior/bugs/529.zig index e23321cd5c..b111cea564 100644 --- a/test/behavior/bugs/529.zig +++ b/test/behavior/bugs/529.zig @@ -8,8 +8,14 @@ comptime { _ = @import("529_other_file_2.zig"); } +const builtin = @import("builtin"); + test "issue 529 fixed" { - if (@import("builtin").zig_backend != .stage1) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_c) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_wasm) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO + if (builtin.zig_backend == .stage2_arm) return error.SkipZigTest; // TODO @import("529_other_file.zig").issue529(null); issue529(null); -- cgit v1.2.3