summaryrefslogtreecommitdiff
path: root/example/subcommands.zig
diff options
context:
space:
mode:
Diffstat (limited to 'example/subcommands.zig')
-rw-r--r--example/subcommands.zig13
1 files changed, 9 insertions, 4 deletions
diff --git a/example/subcommands.zig b/example/subcommands.zig
index 8223f31..644e371 100644
--- a/example/subcommands.zig
+++ b/example/subcommands.zig
@@ -41,8 +41,10 @@ pub fn main() !void {
41 // not fully consumed. It can then be reused to parse the arguments for subcommands. 41 // not fully consumed. It can then be reused to parse the arguments for subcommands.
42 .terminating_positional = 0, 42 .terminating_positional = 0,
43 }) catch |err| { 43 }) catch |err| {
44 diag.report(std.io.getStdErr().writer(), err) catch {}; 44 var buf: [1024]u8 = undefined;
45 return err; 45 var stderr = std.fs.File.stderr().writer(&buf);
46 try diag.report(&stderr.interface, err);
47 return stderr.interface.flush();
46 }; 48 };
47 defer res.deinit(); 49 defer res.deinit();
48 50
@@ -77,8 +79,11 @@ fn mathMain(gpa: std.mem.Allocator, iter: *std.process.ArgIterator, main_args: M
77 .diagnostic = &diag, 79 .diagnostic = &diag,
78 .allocator = gpa, 80 .allocator = gpa,
79 }) catch |err| { 81 }) catch |err| {
80 diag.report(std.io.getStdErr().writer(), err) catch {}; 82 var buf: [1024]u8 = undefined;
81 return err; 83 var stderr = std.fs.File.stderr().writer(&buf);
84 try diag.report(&stderr.interface, err);
85 try stderr.interface.flush();
86 return err; // propagate error
82 }; 87 };
83 defer res.deinit(); 88 defer res.deinit();
84 89