diff --git a/src/AstGen.zig b/src/AstGen.zig index af77cdacc4..1151ed60da 100644 --- a/src/AstGen.zig +++ b/src/AstGen.zig @@ -7676,7 +7676,8 @@ fn builtinCall( } }, }); gz.instructions.appendAssumeCapacity(new_index); - return indexToRef(new_index); + const result = indexToRef(new_index); + return rvalue(gz, rl, result, node); }, .panic => { try emitDbgNode(gz, node); diff --git a/test/behavior.zig b/test/behavior.zig index e9c4ec779b..40f8ca0fb3 100644 --- a/test/behavior.zig +++ b/test/behavior.zig @@ -84,6 +84,7 @@ test { _ = @import("behavior/bugs/11213.zig"); _ = @import("behavior/bugs/12003.zig"); _ = @import("behavior/bugs/12033.zig"); + _ = @import("behavior/bugs/12430.zig"); _ = @import("behavior/byteswap.zig"); _ = @import("behavior/byval_arg_var.zig"); _ = @import("behavior/call.zig"); diff --git a/test/behavior/bugs/12430.zig b/test/behavior/bugs/12430.zig new file mode 100644 index 0000000000..cbf1658b1c --- /dev/null +++ b/test/behavior/bugs/12430.zig @@ -0,0 +1,11 @@ +const std = @import("std"); + +test { + const T = comptime b: { + break :b @Type(.{ .Int = .{ + .signedness = .unsigned, + .bits = 8, + } }); + }; + try std.testing.expect(T == u8); +}