aboutsummaryrefslogtreecommitdiff
path: root/src/Sema.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2022-03-28 16:20:38 -0700
committerAndrew Kelley <andrew@ziglang.org>2022-03-28 16:27:45 -0700
commitf4a357d7209db61acdfcb24ecec316da66eb318d (patch)
tree4cca3c0a134ceda850bcc23309cda5352774185a /src/Sema.zig
parentc546608fcae4e36a593c4ff6c566b864d379e741 (diff)
downloadzig-f4a357d7209db61acdfcb24ecec316da66eb318d.tar.gz
zig-f4a357d7209db61acdfcb24ecec316da66eb318d.zip
stage2: finish debug info for unions in the LLVM backend
Sema: * queue full resolution of std.builtin.Type.Error when doing `@typeInfo` for error sets. LLVM backend: * change a TODO comment to a proper explanation of why debug info for structs is left as a fwd decl sometimes. * remove handling of packed unions which does not match the type information or constant generation code. * remove copy+pasted code * fix union debug info not matching the memory layout * remove unnecessary error checks and type casting
Diffstat (limited to 'src/Sema.zig')
-rw-r--r--src/Sema.zig2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/Sema.zig b/src/Sema.zig
index e79e358907..8842c74ca7 100644
--- a/src/Sema.zig
+++ b/src/Sema.zig
@@ -11091,6 +11091,8 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai
break :t try set_field_ty_decl.val.toType(&buffer).copy(fields_anon_decl.arena());
};
+ try sema.queueFullTypeResolution(try error_field_ty.copy(sema.arena));
+
// If the error set is inferred it has to be resolved at this point
try sema.resolveInferredErrorSetTy(block, src, ty);