//ww:run-exit 46 // Migrated from 778_bufio_vstream_run row stream_write_flush. package main; import os; import bufio; import memio; import io; export fn main() i32 = { let raw: [16]u8; let mst: memio.stream = memio.fixed(raw[0:16]); let msrc: io.stream = &mst.vt; let rbuf: [8]u8; let wbuf: [8]u8; let b: bufio.stream = bufio.init(msrc, rbuf[0:8], wbuf[0:8]); let vs: io.stream = &b.vt; let payload: [5]u8; payload[0] = 104u8; payload[1] = 105u8; payload[2] = 33u8; payload[3] = 98u8; payload[4] = 121u8; let wr = io.write(vs, payload[0:5]); let nw: size = 0; if (wr is size) { nw = wr as size; }; if (mst.pos != 0) { return 91; }; let cl = io.close(vs); if (cl is io.error) { return 92; }; if (mst.pos != 5) { return 93; }; if (nw != 5: size) { return 94; }; if (raw[0] != 104u8 || raw[4] != 121u8) { return 95; }; return 46; };