zig/test/incremental/add_decl
Andrew Kelley 0403f9647b std: different mechanism for disabling network dependency
On Windows, it is sometimes problematic to depend on ws2_32.dll. Before,
users of std.Io.Threaded would have to call ioBasic() rather than io()
in order to avoid unnecessary dependencies on ws2_32.dll. Now, the
application can disable networking with std.Options.

This change is necessary due to moving networking functionality to
be based on Io.Operation, which is a tagged union.
2026-03-05 22:36:33 -08:00

69 lines
1.9 KiB
Text

#target=x86_64-linux-selfhosted
#target=x86_64-windows-selfhosted
#target=x86_64-linux-cbe
#target=x86_64-windows-cbe
//#target=wasm32-wasi-selfhosted
#update=initial version
#file=main.zig
const std = @import("std");
pub fn main() !void {
try std.Io.File.stdout().writeStreamingAll(io, foo);
}
const foo = "good morning\n";
const io = std.Io.Threaded.global_single_threaded.io();
#expect_stdout="good morning\n"
#update=add new declaration
#file=main.zig
const std = @import("std");
pub fn main() !void {
try std.Io.File.stdout().writeStreamingAll(io, foo);
}
const foo = "good morning\n";
const bar = "good evening\n";
const io = std.Io.Threaded.global_single_threaded.io();
#expect_stdout="good morning\n"
#update=reference new declaration
#file=main.zig
const std = @import("std");
pub fn main() !void {
try std.Io.File.stdout().writeStreamingAll(io, bar);
}
const foo = "good morning\n";
const bar = "good evening\n";
const io = std.Io.Threaded.global_single_threaded.io();
#expect_stdout="good evening\n"
#update=reference missing declaration
#file=main.zig
const std = @import("std");
pub fn main() !void {
try std.Io.File.stdout().writeStreamingAll(io, qux);
}
const foo = "good morning\n";
const bar = "good evening\n";
const io = std.Io.Threaded.global_single_threaded.io();
#expect_error=main.zig:3:52: error: use of undeclared identifier 'qux'
#update=add missing declaration
#file=main.zig
const std = @import("std");
pub fn main() !void {
try std.Io.File.stdout().writeStreamingAll(io, qux);
}
const foo = "good morning\n";
const bar = "good evening\n";
const qux = "good night\n";
const io = std.Io.Threaded.global_single_threaded.io();
#expect_stdout="good night\n"
#update=remove unused declarations
#file=main.zig
const std = @import("std");
pub fn main() !void {
try std.Io.File.stdout().writeStreamingAll(io, qux);
}
const qux = "good night\n";
const io = std.Io.Threaded.global_single_threaded.io();
#expect_stdout="good night\n"