aboutsummaryrefslogtreecommitdiff
path: root/test/behavior
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2022-06-06 18:21:24 -0700
committerAndrew Kelley <andrew@ziglang.org>2022-06-07 00:47:10 -0400
commite9fc58eab77d60dfb02155ff17178b496d75d035 (patch)
tree97cfc4358856f63f1676065df5a6055ded0c6f8b /test/behavior
parentd9b0c984aaf4f5e738ca4d06f160a9110f9167ec (diff)
downloadzig-e9fc58eab77d60dfb02155ff17178b496d75d035.tar.gz
zig-e9fc58eab77d60dfb02155ff17178b496d75d035.zip
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.
Diffstat (limited to 'test/behavior')
-rw-r--r--test/behavior/bugs/529.zig8
1 files changed, 7 insertions, 1 deletions
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);