aboutsummaryrefslogtreecommitdiff
path: root/lib/std/start.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrewrk@noreply.codeberg.org>2025-12-27 14:10:46 +0100
committerAndrew Kelley <andrewrk@noreply.codeberg.org>2025-12-27 14:10:46 +0100
commite55e6b5528bb2f01de242fcf32b172e244e98e74 (patch)
tree3a5eb3193d3d192c54ab0c2b7295a7f21861c27e /lib/std/start.zig
parentc3f2de5e519926eb0029062fe8e782a6f9df9c05 (diff)
parent60a1ba0a8f3517356fa2941462f002a7f580545b (diff)
downloadzig-e55e6b5528bb2f01de242fcf32b172e244e98e74.tar.gz
zig-e55e6b5528bb2f01de242fcf32b172e244e98e74.zip
Merge pull request 'std: migrate all `fs` APIs to `Io`' (#30232) from std.Io-fs into master
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/30232
Diffstat (limited to 'lib/std/start.zig')
-rw-r--r--lib/std/start.zig16
1 files changed, 13 insertions, 3 deletions
diff --git a/lib/std/start.zig b/lib/std/start.zig
index a5bec41231..c6a9f06724 100644
--- a/lib/std/start.zig
+++ b/lib/std/start.zig
@@ -110,7 +110,7 @@ fn main2() callconv(.c) c_int {
}
fn _start2() callconv(.withStackAlign(.c, 1)) noreturn {
- std.posix.exit(callMain());
+ std.process.exit(callMain());
}
fn spirvMain2() callconv(.kernel) void {
@@ -118,7 +118,7 @@ fn spirvMain2() callconv(.kernel) void {
}
fn wWinMainCRTStartup2() callconv(.c) noreturn {
- std.posix.exit(callMain());
+ std.process.exit(callMain());
}
////////////////////////////////////////////////////////////////////////////////
@@ -627,7 +627,7 @@ fn posixCallMainAndExit(argc_argv_ptr: [*]usize) callconv(.c) noreturn {
for (slice) |func| func();
}
- std.posix.exit(callMainWithArgs(argc, argv, envp));
+ std.process.exit(callMainWithArgs(argc, argv, envp));
}
fn expandStackSize(phdrs: []elf.Phdr) void {
@@ -669,6 +669,11 @@ inline fn callMainWithArgs(argc: usize, argv: [*][*:0]u8, envp: [][*:0]u8) u8 {
std.os.argv = argv[0..argc];
std.os.environ = envp;
+ if (std.Options.debug_threaded_io) |t| {
+ if (@sizeOf(std.Io.Threaded.Argv0) != 0) t.argv0.value = argv[0];
+ t.environ = .{ .block = envp };
+ }
+
std.debug.maybeEnableSegfaultHandler();
return callMain();
@@ -691,6 +696,11 @@ fn main(c_argc: c_int, c_argv: [*][*:0]c_char, c_envp: [*:null]?[*:0]c_char) cal
fn mainWithoutEnv(c_argc: c_int, c_argv: [*][*:0]c_char) callconv(.c) c_int {
std.os.argv = @as([*][*:0]u8, @ptrCast(c_argv))[0..@intCast(c_argc)];
+
+ if (@sizeOf(std.Io.Threaded.Argv0) != 0) {
+ if (std.Options.debug_threaded_io) |t| t.argv0.value = std.os.argv[0];
+ }
+
return callMain();
}