diff options
| author | Andrew Kelley <superjoe30@gmail.com> | 2017-04-04 00:17:24 -0400 |
|---|---|---|
| committer | Andrew Kelley <superjoe30@gmail.com> | 2017-04-04 00:17:24 -0400 |
| commit | 72fb2443e0e5dd0c8c3a0265428832796b4ff548 (patch) | |
| tree | dd4cfda1e44784a80538ccd3c6d776c3fb664651 /std/special/bootstrap.zig | |
| parent | b46344fd01db28384b51d9898ef25c4825bb19b0 (diff) | |
| download | zig-72fb2443e0e5dd0c8c3a0265428832796b4ff548.tar.gz zig-72fb2443e0e5dd0c8c3a0265428832796b4ff548.zip | |
API for command line args
closes #300
Diffstat (limited to 'std/special/bootstrap.zig')
| -rw-r--r-- | std/special/bootstrap.zig | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/std/special/bootstrap.zig b/std/special/bootstrap.zig index 3a210987d8..3b014869f9 100644 --- a/std/special/bootstrap.zig +++ b/std/special/bootstrap.zig @@ -37,20 +37,14 @@ fn callMainAndExit() -> noreturn { exit(0); } -var args_data: [32][]u8 = undefined; fn callMain(argc: usize, argv: &&u8, envp: &?&u8) -> %void { - // TODO create args API to make it work with > 32 args - const args = args_data[0...argc]; - for (args) |_, i| { - const ptr = argv[i]; - args[i] = ptr[0...std.cstr.len(ptr)]; - } + std.os.args.raw = argv[0...argc]; var env_count: usize = 0; while (envp[env_count] != null; env_count += 1) {} std.os.environ_raw = @ptrcast(&&u8, envp)[0...env_count]; - return root.main(args); + return root.main(); } export fn main(c_argc: i32, c_argv: &&u8, c_envp: &?&u8) -> i32 { |
