zig/test/cases/compile_errors/invalid_float_casts.zig
mlugg f26dda2117 all: migrate code to new cast builtin syntax
Most of this migration was performed automatically with `zig fmt`. There
were a few exceptions which I had to manually fix:

* `@alignCast` and `@addrSpaceCast` cannot be automatically rewritten
* `@truncate`'s fixup is incorrect for vectors
* Test cases are not formatted, and their error locations change
2023-06-24 16:56:39 -07:00

26 lines
599 B
Zig

export fn foo() void {
var a: f32 = 2;
_ = @as(comptime_float, @floatCast(a));
}
export fn bar() void {
var a: f32 = 2;
_ = @as(f32, @intFromFloat(a));
}
export fn baz() void {
var a: f32 = 2;
_ = @as(f32, @floatFromInt(a));
}
export fn qux() void {
var a: u32 = 2;
_ = @as(f32, @floatCast(a));
}
// error
// backend=stage2
// target=native
//
// :3:40: error: unable to cast runtime value to 'comptime_float'
// :7:18: error: expected integer type, found 'f32'
// :11:32: error: expected integer type, found 'f32'
// :15:29: error: expected float type, found 'u32'