zig/test/incremental/make_decl_pub
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

28 lines
817 B
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 foo = @import("foo.zig");
pub fn main() !void {
try foo.hello();
}
#file=foo.zig
const std = @import("std");
fn hello() !void {
try std.Io.File.stdout().writeStreamingAll(io, "Hello, World!\n");
}
const io = std.Io.Threaded.global_single_threaded.io();
#expect_error=main.zig:3:12: error: 'hello' is not marked 'pub'
#expect_error=foo.zig:2:1: note: declared here
#update=make hello pub
#file=foo.zig
const std = @import("std");
pub fn hello() !void {
try std.Io.File.stdout().writeStreamingAll(io, "Hello, World!\n");
}
const io = std.Io.Threaded.global_single_threaded.io();
#expect_stdout="Hello, World!\n"