mirror of
https://github.com/ziglang/zig.git
synced 2026-02-21 16:54:52 +00:00
stage2: Resolve union layout before getting tag type in zirTagname
This bug only causes a failure on my machine when running test/behavior/eval.zig directly. If running the full behavior test suite, std.builtin.TypeInfo will have already resolved its layout, causing the test to pass. I'd love to add a test that can reliably reproduce this problem, but I'm afraid I'm not sure how to reliably create a union with un-resolved layout.
This commit is contained in:
parent
4d658f83ed
commit
b52948444f
@ -11837,6 +11837,7 @@ fn zirTagName(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Air
|
||||
const operand = sema.resolveInst(inst_data.operand);
|
||||
const operand_ty = sema.typeOf(operand);
|
||||
|
||||
try sema.resolveTypeLayout(block, operand_src, operand_ty);
|
||||
const enum_ty = switch (operand_ty.zigTypeTag()) {
|
||||
.EnumLiteral => {
|
||||
const val = try sema.resolveConstValue(block, operand_src, operand);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user