From 6490e2ed82ebcf7ffe9732bbd7ef881412363336 Mon Sep 17 00:00:00 2001 From: Jakub Konka Date: Mon, 6 Nov 2023 14:47:01 +0100 Subject: [PATCH] test/link/elf: improve test linking with static lib --- test/link/elf.zig | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/test/link/elf.zig b/test/link/elf.zig index c32f3b26d2..a16d012b91 100644 --- a/test/link/elf.zig +++ b/test/link/elf.zig @@ -1858,28 +1858,30 @@ fn testLinkingObj(b: *Build, opts: Options) *Step { fn testLinkingStaticLib(b: *Build, opts: Options) *Step { const test_step = addTestStep(b, "linking-static-lib", opts); + const obj = addObject(b, "bobj", opts); + addZigSourceBytes(obj, "export var bar: i32 = -42;"); + const lib = addStaticLibrary(b, "alib", opts); addZigSourceBytes(lib, - \\extern var mod: usize; - \\export fn callMe() usize { - \\ return me * mod; + \\export fn foo() i32 { + \\ return 42; \\} - \\var me: usize = 42; ); + lib.addObject(obj); const exe = addExecutable(b, "testlib", opts); addZigSourceBytes(exe, \\const std = @import("std"); - \\extern fn callMe() usize; - \\export var mod: usize = 2; + \\extern fn foo() i32; + \\extern var bar: i32; \\pub fn main() void { - \\ std.debug.print("{d}\n", .{callMe()}); + \\ std.debug.print("{d}\n", .{foo() + bar}); \\} ); exe.linkLibrary(lib); const run = addRunArtifact(exe); - run.expectStdErrEqual("84\n"); + run.expectStdErrEqual("0\n"); test_step.dependOn(&run.step); return test_step;