mirror of
https://github.com/ziglang/zig.git
synced 2026-02-13 04:48:20 +00:00
translate-c: float cast from boolean expr fix
This commit is contained in:
parent
e025ad7b46
commit
aafff25897
@ -2388,7 +2388,7 @@ fn transCCast(
|
||||
}
|
||||
if (!cIsFloating(src_type) and cIsFloating(dst_type)) {
|
||||
var rhs = expr;
|
||||
if (qualTypeIsBoolean(src_type)) rhs = try Tag.int_from_bool.create(c.arena, expr);
|
||||
if (qualTypeIsBoolean(src_type) or isBoolRes(rhs)) rhs = try Tag.int_from_bool.create(c.arena, expr);
|
||||
// @as(dest_type, @floatFromInt(val))
|
||||
return Tag.as.create(c.arena, .{
|
||||
.lhs = dst_node,
|
||||
|
||||
8
test/cases/run_translated_c/float_from_bool_expr_cast.c
Normal file
8
test/cases/run_translated_c/float_from_bool_expr_cast.c
Normal file
@ -0,0 +1,8 @@
|
||||
int main() {
|
||||
float f = (float)(10.0f > 1.0f);
|
||||
return 0;
|
||||
}
|
||||
|
||||
// run-translated-c
|
||||
// c_frontend=clang
|
||||
//
|
||||
Loading…
x
Reference in New Issue
Block a user