| author | |
| committer | |
| log | 9a52abf3b47447b4ce976a99daca1c9c859c5aca |
| tree | 3edb1bbc987575ec18ee68a6c54f67b9c92a001d |
| parent | 3b60a6de2fd68d7d02de7a10b8b88c919aa088f0 |
Closes #131713 files changed, 19 insertions(+), 0 deletions(-)
src/Sema.zig+2| ... | ... | @@ -28775,6 +28775,7 @@ fn semaBackingIntType(mod: *Module, struct_obj: *Module.Struct) CompileError!voi |
| 28775 | 28775 | |
| 28776 | 28776 | try sema.checkBackingIntType(&block, backing_int_src, backing_int_ty, fields_bit_sum); |
| 28777 | 28777 | struct_obj.backing_int_ty = try backing_int_ty.copy(decl_arena_allocator); |
| 28778 | try wip_captures.finalize(); | |
| 28778 | 28779 | } else { |
| 28779 | 28780 | var buf: Type.Payload.Bits = .{ |
| 28780 | 28781 | .base = .{ .tag = .int_unsigned }, |
| ... | ... | @@ -29386,6 +29387,7 @@ fn semaStructFields(mod: *Module, struct_obj: *Module.Struct) CompileError!void |
| 29386 | 29387 | } |
| 29387 | 29388 | } |
| 29388 | 29389 | } |
| 29390 | try wip_captures.finalize(); | |
| 29389 | 29391 | |
| 29390 | 29392 | struct_obj.have_field_inits = true; |
| 29391 | 29393 | } |
test/behavior.zig+1| ... | ... | @@ -108,6 +108,7 @@ test { |
| 108 | 108 | _ = @import("behavior/bugs/13112.zig"); |
| 109 | 109 | _ = @import("behavior/bugs/13128.zig"); |
| 110 | 110 | _ = @import("behavior/bugs/13164.zig"); |
| 111 | _ = @import("behavior/bugs/13171.zig"); | |
| 111 | 112 | _ = @import("behavior/byteswap.zig"); |
| 112 | 113 | _ = @import("behavior/byval_arg_var.zig"); |
| 113 | 114 | _ = @import("behavior/call.zig"); |
test/behavior/bugs/13171.zig created+16| ... | ... | @@ -0,0 +1,16 @@ |
| 1 | const std = @import("std"); | |
| 2 | const expect = std.testing.expect; | |
| 3 | ||
| 4 | fn BuildType(comptime T: type) type { | |
| 5 | return struct { | |
| 6 | val: union { | |
| 7 | b: T, | |
| 8 | }, | |
| 9 | }; | |
| 10 | } | |
| 11 | ||
| 12 | test { | |
| 13 | const TestStruct = BuildType(u32); | |
| 14 | const c = TestStruct{ .val = .{ .b = 10 } }; | |
| 15 | try expect(c.val.b == 10); | |
| 16 | } |