authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2021-10-21 23:22:55-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2021-10-21 23:22:55-07:00
log912e7dc54b9b49d96123ffd398e6d40b455997fe
treeabeeab43faa3f56766f745b905b9d189076a5972
parent6cd14f051d22fdba913a800f1230143965e360ca

Sema: resoveTypeLayout resolves optionals and error unions too

Previously it only worked on struct, union, and array.

1 files changed, 9 insertions(+), 0 deletions(-)

src/Sema.zig+9
......@@ -13662,6 +13662,15 @@ pub fn resolveTypeLayout(
1366213662 const elem_ty = ty.childType();
1366313663 return sema.resolveTypeLayout(block, src, elem_ty);
1366413664 },
13665 .Optional => {
13666 var buf: Type.Payload.ElemType = undefined;
13667 const payload_ty = ty.optionalChild(&buf);
13668 return sema.resolveTypeLayout(block, src, payload_ty);
13669 },
13670 .ErrorUnion => {
13671 const payload_ty = ty.errorUnionPayload();
13672 return sema.resolveTypeLayout(block, src, payload_ty);
13673 },
1366513674 else => {},
1366613675 }
1366713676}