commit ce919ccf45951856a762ffdb8ef850301cd8c588 (tree)
parent 05f78adeaf7685e6107da7c3533b233ce19a54b8
Author: mlugg <mlugg@mlugg.co.uk>
Date: Fri, 22 Sep 2023 23:53:33 +0100
Sema: do not emit dbg_var_val and dbg_var_ptr instructions for comptime-only types
Diffstat:
1 file changed, 6 insertions(+), 8 deletions(-)
diff --git a/src/Sema.zig b/src/Sema.zig
@@ -6526,15 +6526,13 @@ fn addDbgVar(
) CompileError!void {
const mod = sema.mod;
const operand_ty = sema.typeOf(operand);
- switch (air_tag) {
- .dbg_var_ptr => {
- if (!(try sema.typeHasRuntimeBits(operand_ty.childType(mod)))) return;
- },
- .dbg_var_val => {
- if (!(try sema.typeHasRuntimeBits(operand_ty))) return;
- },
+ const val_ty = switch (air_tag) {
+ .dbg_var_ptr => operand_ty.childType(mod),
+ .dbg_var_val => operand_ty,
else => unreachable,
- }
+ };
+ if (try sema.typeRequiresComptime(val_ty)) return;
+ if (!(try sema.typeHasRuntimeBits(val_ty))) return;
try sema.queueFullTypeResolution(operand_ty);