From 04366576ea4be4959b596ebff7041d17e18d08d8 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Sat, 25 Sep 2021 17:52:50 -0700 Subject: stage2: implement `@sizeOf` for non-packed structs --- src/Sema.zig | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'src/Sema.zig') diff --git a/src/Sema.zig b/src/Sema.zig index 41fabbfacd..1001b388a9 100644 --- a/src/Sema.zig +++ b/src/Sema.zig @@ -6575,6 +6575,7 @@ fn zirSizeOf(sema: *Sema, block: *Scope.Block, inst: Zir.Inst.Index) CompileErro const src = inst_data.src(); const operand_src: LazySrcLoc = .{ .node_offset_builtin_call_arg0 = inst_data.src_node }; const operand_ty = try sema.resolveType(block, operand_src, inst_data.operand); + try sema.resolveTypeLayout(block, src, operand_ty); const target = sema.mod.getTarget(); const abi_size = switch (operand_ty.zigTypeTag()) { .Fn => unreachable, @@ -10846,9 +10847,6 @@ pub fn resolveTypeLayout( ty: Type, ) CompileError!void { switch (ty.zigTypeTag()) { - .Pointer => { - return sema.resolveTypeLayout(block, src, ty.elemType()); - }, .Struct => { const resolved_ty = try sema.resolveTypeFields(block, src, ty); const struct_obj = resolved_ty.castTag(.@"struct").?.data; -- cgit v1.2.3