diff options
| author | mlugg <mlugg@noreply.codeberg.org> | 2025-11-29 20:21:30 +0100 |
|---|---|---|
| committer | mlugg <mlugg@noreply.codeberg.org> | 2025-11-29 20:21:30 +0100 |
| commit | 44e99edd7a12ea7e04fbfe53746c3af4b531f687 (patch) | |
| tree | d1e18165c95c127a53655828c6778fc3fa55bf00 /src | |
| parent | a0289d0cce370729099a1ec0228e7f49bcdabc80 (diff) | |
| parent | 8f5db19791dde73e8e969c6ebf821767f1c3e50b (diff) | |
| download | zig-44e99edd7a12ea7e04fbfe53746c3af4b531f687.tar.gz zig-44e99edd7a12ea7e04fbfe53746c3af4b531f687.zip | |
Merge pull request 'Sema: initialize OPV comptime allocs correctly' (#30043) from reify-empty-struct into master
Reviewed-on: https://codeberg.org/ziglang/zig/pulls/30043
Diffstat (limited to 'src')
| -rw-r--r-- | src/Sema.zig | 4 | ||||
| -rw-r--r-- | src/print_zir.zig | 2 |
2 files changed, 4 insertions, 2 deletions
diff --git a/src/Sema.zig b/src/Sema.zig index 324f1b6867..d31447544c 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -175,9 +175,11 @@ const ComptimeAlloc = struct { /// `src` may be `null` if `is_const` will be set. fn newComptimeAlloc(sema: *Sema, block: *Block, src: LazySrcLoc, ty: Type, alignment: Alignment) !ComptimeAllocIndex { + const pt = sema.pt; + const init_val = try sema.typeHasOnePossibleValue(ty) orelse try pt.undefValue(ty); const idx = sema.comptime_allocs.items.len; try sema.comptime_allocs.append(sema.gpa, .{ - .val = .{ .interned = try sema.pt.intern(.{ .undef = ty.toIntern() }) }, + .val = .{ .interned = init_val.toIntern() }, .is_const = false, .src = src, .alignment = alignment, diff --git a/src/print_zir.zig b/src/print_zir.zig index 316632f2d3..78b451a3f1 100644 --- a/src/print_zir.zig +++ b/src/print_zir.zig @@ -595,7 +595,7 @@ const Writer = struct { }, .reify_slice_arg_ty => { - const reify_slice_arg_info: Zir.Inst.ReifySliceArgInfo = @enumFromInt(extended.operand); + const reify_slice_arg_info: Zir.Inst.ReifySliceArgInfo = @enumFromInt(extended.small); const extra = self.code.extraData(Zir.Inst.UnNode, extended.operand).data; try stream.print("{t}, ", .{reify_slice_arg_info}); try self.writeInstRef(stream, extra.operand); |
