#zig build-obj {
--name test -fno-emit-bin
-Mroot=test.zig
#}

#write test.zig {
export fn entry1() void {
    const spartan_count: u16 = 300;
    const byte: u8 = @intCast(spartan_count);
    _ = byte;
}
export fn entry2() void {
    const spartan_count: u16 = 300;
    const byte: u8 = spartan_count;
    _ = byte;
}
export fn entry3() void {
    var spartan_count: u16 = 300;
    var byte: u8 = spartan_count;
    _ = .{ &spartan_count, &byte };
}
export fn entry4() void {
    var signed: i8 = -1;
    var unsigned: u64 = signed;
    _ = .{ &signed, &unsigned };
}
#}
#update
#check errors {
test.zig:3:31: error: type 'u8' cannot represent integer value '300'
test.zig:8:22: error: type 'u8' cannot represent integer value '300'
test.zig:13:20: error: expected type 'u8', found 'u16'
test.zig:13:20: note: unsigned 8-bit int cannot represent all possible unsigned 16-bit values
test.zig:18:25: error: expected type 'u64', found 'i8'
test.zig:18:25: note: unsigned 64-bit int cannot represent all possible signed 8-bit values
#}
