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

#write test.zig {
export fn foo() void {
    var a: u32 = 2;
    _ = &a;
    _ = @as(comptime_int, @intCast(a));
}
export fn bar() void {
    var a: u32 = 2;
    _ = &a;
    _ = @as(u32, @floatFromInt(a));
}
export fn bar2() void {
    _ = @as(comptime_int, @floatFromInt(2));
}
export fn baz() void {
    var a: u32 = 2;
    _ = &a;
    _ = @as(u32, @intFromFloat(a));
}
export fn qux() void {
    var a: f32 = 2;
    _ = &a;
    _ = @as(u32, @intCast(a));
}
#}
#update
#check errors {
test.zig:4:36: error: unable to cast runtime value to 'comptime_int'
test.zig:9:18: error: expected float result type, found 'u32'
test.zig:12:27: error: expected float result type, found 'comptime_int'
test.zig:17:32: error: expected float type, found 'u32'
test.zig:22:27: error: expected integer or vector, found 'f32'
#}
