| ... | @@ -3810,6 +3810,13 @@ fn recreateStructType( | ... | @@ -3810,6 +3810,13 @@ fn recreateStructType( |
| 3810 | // No need to re-scan the namespace -- `zirStructDecl` will ultimately do that if the type is still alive. | 3810 | // No need to re-scan the namespace -- `zirStructDecl` will ultimately do that if the type is still alive. |
| 3811 | try zcu.comp.queueJob(.{ .resolve_type_fully = wip_ty.index }); | 3811 | try zcu.comp.queueJob(.{ .resolve_type_fully = wip_ty.index }); |
| 3812 | | 3812 | |
| | 3813 | codegen_type: { |
| | 3814 | if (zcu.comp.config.use_llvm) break :codegen_type; |
| | 3815 | if (file.mod.strip) break :codegen_type; |
| | 3816 | // This job depends on any resolve_type_fully jobs queued up before it. |
| | 3817 | try zcu.comp.queueJob(.{ .codegen_type = wip_ty.index }); |
| | 3818 | } |
| | 3819 | |
| 3813 | const new_ty = wip_ty.finish(ip, struct_obj.namespace); | 3820 | const new_ty = wip_ty.finish(ip, struct_obj.namespace); |
| 3814 | if (inst_info.inst == .main_struct_inst) { | 3821 | if (inst_info.inst == .main_struct_inst) { |
| 3815 | // This is the root type of a file! Update the reference. | 3822 | // This is the root type of a file! Update the reference. |
| ... | @@ -3898,6 +3905,14 @@ fn recreateUnionType( | ... | @@ -3898,6 +3905,14 @@ fn recreateUnionType( |
| 3898 | zcu.namespacePtr(namespace_index).owner_type = wip_ty.index; | 3905 | zcu.namespacePtr(namespace_index).owner_type = wip_ty.index; |
| 3899 | // No need to re-scan the namespace -- `zirUnionDecl` will ultimately do that if the type is still alive. | 3906 | // No need to re-scan the namespace -- `zirUnionDecl` will ultimately do that if the type is still alive. |
| 3900 | try zcu.comp.queueJob(.{ .resolve_type_fully = wip_ty.index }); | 3907 | try zcu.comp.queueJob(.{ .resolve_type_fully = wip_ty.index }); |
| | 3908 | |
| | 3909 | codegen_type: { |
| | 3910 | if (zcu.comp.config.use_llvm) break :codegen_type; |
| | 3911 | if (file.mod.strip) break :codegen_type; |
| | 3912 | // This job depends on any resolve_type_fully jobs queued up before it. |
| | 3913 | try zcu.comp.queueJob(.{ .codegen_type = wip_ty.index }); |
| | 3914 | } |
| | 3915 | |
| 3901 | return wip_ty.finish(ip, namespace_index); | 3916 | return wip_ty.finish(ip, namespace_index); |
| 3902 | } | 3917 | } |
| 3903 | | 3918 | |