| ... | ... | @@ -16116,7 +16116,30 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai |
| 16116 | 16116 | try info.pointee_type.lazyAbiAlignment(mod, sema.arena); |
| 16117 | 16117 | |
| 16118 | 16118 | const addrspace_ty = try sema.getBuiltinType("AddressSpace"); |
| 16119 | | const ptr_size_ty = try sema.getBuiltinType("PtrSize"); |
| 16119 | const pointer_ty = t: { |
| 16120 | const decl_index = (try sema.namespaceLookup( |
| 16121 | block, |
| 16122 | src, |
| 16123 | (try sema.getBuiltinType("Type")).getNamespaceIndex(mod).unwrap().?, |
| 16124 | "Pointer", |
| 16125 | )).?; |
| 16126 | try mod.declareDeclDependency(sema.owner_decl_index, decl_index); |
| 16127 | try sema.ensureDeclAnalyzed(decl_index); |
| 16128 | const decl = mod.declPtr(decl_index); |
| 16129 | break :t decl.val.toType(); |
| 16130 | }; |
| 16131 | const ptr_size_ty = t: { |
| 16132 | const decl_index = (try sema.namespaceLookup( |
| 16133 | block, |
| 16134 | src, |
| 16135 | pointer_ty.getNamespaceIndex(mod).unwrap().?, |
| 16136 | "Size", |
| 16137 | )).?; |
| 16138 | try mod.declareDeclDependency(sema.owner_decl_index, decl_index); |
| 16139 | try sema.ensureDeclAnalyzed(decl_index); |
| 16140 | const decl = mod.declPtr(decl_index); |
| 16141 | break :t decl.val.toType(); |
| 16142 | }; |
| 16120 | 16143 | |
| 16121 | 16144 | const field_values = try sema.arena.create([8]Value); |
| 16122 | 16145 | field_values.* = .{ |
| ... | ... | @@ -16469,7 +16492,18 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai |
| 16469 | 16492 | break :v try Value.Tag.opt_payload.create(sema.arena, ty_val); |
| 16470 | 16493 | } else Value.null; |
| 16471 | 16494 | |
| 16472 | | const container_layout_ty = try sema.getBuiltinType("TmpContainerLayoutAlias"); |
| 16495 | const container_layout_ty = t: { |
| 16496 | const decl_index = (try sema.namespaceLookup( |
| 16497 | block, |
| 16498 | src, |
| 16499 | (try sema.getBuiltinType("Type")).getNamespaceIndex(mod).unwrap().?, |
| 16500 | "ContainerLayout", |
| 16501 | )).?; |
| 16502 | try mod.declareDeclDependency(sema.owner_decl_index, decl_index); |
| 16503 | try sema.ensureDeclAnalyzed(decl_index); |
| 16504 | const decl = mod.declPtr(decl_index); |
| 16505 | break :t decl.val.toType(); |
| 16506 | }; |
| 16473 | 16507 | |
| 16474 | 16508 | const field_values = try sema.arena.create([4]Value); |
| 16475 | 16509 | field_values.* = .{ |
| ... | ... | @@ -16648,7 +16682,18 @@ fn zirTypeInfo(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!Ai |
| 16648 | 16682 | } |
| 16649 | 16683 | }; |
| 16650 | 16684 | |
| 16651 | | const container_layout_ty = try sema.getBuiltinType("TmpContainerLayoutAlias"); |
| 16685 | const container_layout_ty = t: { |
| 16686 | const decl_index = (try sema.namespaceLookup( |
| 16687 | block, |
| 16688 | src, |
| 16689 | (try sema.getBuiltinType("Type")).getNamespaceIndex(mod).unwrap().?, |
| 16690 | "ContainerLayout", |
| 16691 | )).?; |
| 16692 | try mod.declareDeclDependency(sema.owner_decl_index, decl_index); |
| 16693 | try sema.ensureDeclAnalyzed(decl_index); |
| 16694 | const decl = mod.declPtr(decl_index); |
| 16695 | break :t decl.val.toType(); |
| 16696 | }; |
| 16652 | 16697 | |
| 16653 | 16698 | const field_values = try sema.arena.create([5]Value); |
| 16654 | 16699 | field_values.* = .{ |