//ww:run-exit 45 // Migrated from 777_fmt_handle_run row branched_fprintf. package main; import os; import fmt; import io; export fn main() i32 = { let path: str = "wwfmth_777_d"; let fd: i32 = os.open(path, os.flag.RDWR | os.flag.CREATE | os.flag.TRUNC, 0o644: i32); if (fd < 0) { return 90; }; let sel: i32 = 1; let f1: str = "A{}"; let f2: str = "B{}"; let fmtstr: str = f1; if (sel == 0) { fmtstr = f2; }; let wr = fmt.fprintf(fd: io.file, fmtstr, 9i64); let nw: size = 0; match (wr) { case let n: size => { nw = n; }; case io.error => { return 91; }; }; os.close(fd); let rd: i32 = os.open(path, os.flag.RDONLY, 0i32); if (rd < 0) { return 92; }; let buf: [8]u8; let n: i64 = os.read(rd, &buf[0], 8u64); os.close(rd); if (n != 2i64) { return 93; }; if (nw != 2: size) { return 94; }; if (buf[0] != 65u8 || buf[1] != 57u8) { return 95; }; return 45; };