//ww:run package main; import math; fn rdbias(f: *math.floatinfo) int = { return f.expbias; }; fn rdmant(f: *math.floatinfo) u64 = { return f.mantbits; }; fn rdmask(f: *math.floatinfo) u64 = { return f.mantmask; }; fn rdebits(f: *math.floatinfo) u64 = { return f.expbits; }; fn rdemask(f: *math.floatinfo) u64 = { return f.expmask; }; export fn main() i32 = { if (rdbias(&math.f64info) != 1023) { return 1; }; if (rdmant(&math.f64info) != 52u64) { return 2; }; if (rdmask(&math.f64info) != 0xFFFFFFFFFFFFFu64) { return 3; }; if (rdbias(&math.f32info) != 127) { return 4; }; if (rdmant(&math.f32info) != 23u64) { return 5; }; if (rdmask(&math.f32info) != 0x7FFFFFu64) { return 6; }; if (rdebits(&math.f64info) != 11u64) { return 7; }; if (rdemask(&math.f64info) != 0x7FFu64) { return 8; }; if (rdebits(&math.f32info) != 8u64) { return 9; }; if (rdemask(&math.f32info) != 0xFFu64) { return 10; }; return 0; };