diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2023-04-12 15:17:41 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2023-04-12 15:21:03 -0700 |
| commit | 60bd13bdf2f4834436df8c561b3bc95ec08af34e (patch) | |
| tree | 7fc478696ab6a849d380f19916f52e3fb3159271 /lib/std/start.zig | |
| parent | 35f9c8444980671d634b05d68d0116a88825005a (diff) | |
| download | zig-60bd13bdf2f4834436df8c561b3bc95ec08af34e.tar.gz zig-60bd13bdf2f4834436df8c561b3bc95ec08af34e.zip | |
never use C pointers!!
you maniacs, you absolute monsters. degenerates. hooligans. criminals.
issue #2984 is coming for you.
Diffstat (limited to 'lib/std/start.zig')
| -rw-r--r-- | lib/std/start.zig | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/std/start.zig b/lib/std/start.zig index 377a317df2..5beabe8958 100644 --- a/lib/std/start.zig +++ b/lib/std/start.zig @@ -512,7 +512,7 @@ fn callMainWithArgs(argc: usize, argv: [*][*:0]u8, envp: [][*:0]u8) u8 { return initEventLoopAndCallMain(); } -fn main(c_argc: c_int, c_argv: [*c][*c]u8, c_envp: [*c][*c]u8) callconv(.C) c_int { +fn main(c_argc: c_int, c_argv: [*][*:0]u8, c_envp: [*:null]?[*:0]u8) callconv(.C) c_int { var env_count: usize = 0; while (c_envp[env_count] != null) : (env_count += 1) {} const envp = @ptrCast([*][*:0]u8, c_envp)[0..env_count]; @@ -527,7 +527,7 @@ fn main(c_argc: c_int, c_argv: [*c][*c]u8, c_envp: [*c][*c]u8) callconv(.C) c_in return @call(.always_inline, callMainWithArgs, .{ @intCast(usize, c_argc), @ptrCast([*][*:0]u8, c_argv), envp }); } -fn mainWithoutEnv(c_argc: c_int, c_argv: [*c][*c]u8) callconv(.C) c_int { +fn mainWithoutEnv(c_argc: c_int, c_argv: [*][*:0]u8) callconv(.C) c_int { std.os.argv = @ptrCast([*][*:0]u8, c_argv)[0..@intCast(usize, c_argc)]; return @call(.always_inline, callMain, .{}); } |
