| ... | @@ -877,6 +877,7 @@ pub fn deinit(sema: *Sema) void { | ... | @@ -877,6 +877,7 @@ pub fn deinit(sema: *Sema) void { |
| 877 | sema.maybe_comptime_allocs.deinit(gpa); | 877 | sema.maybe_comptime_allocs.deinit(gpa); |
| 878 | sema.comptime_allocs.deinit(gpa); | 878 | sema.comptime_allocs.deinit(gpa); |
| 879 | sema.exports.deinit(gpa); | 879 | sema.exports.deinit(gpa); |
| | 880 | sema.references.deinit(gpa); |
| 880 | sema.* = undefined; | 881 | sema.* = undefined; |
| 881 | } | 882 | } |
| 882 | | 883 | |
| ... | @@ -2824,6 +2825,7 @@ fn zirStructDecl( | ... | @@ -2824,6 +2825,7 @@ fn zirStructDecl( |
| 2824 | | 2825 | |
| 2825 | try mod.finalizeAnonDecl(new_decl_index); | 2826 | try mod.finalizeAnonDecl(new_decl_index); |
| 2826 | try mod.comp.work_queue.writeItem(.{ .resolve_type_fully = wip_ty.index }); | 2827 | try mod.comp.work_queue.writeItem(.{ .resolve_type_fully = wip_ty.index }); |
| | 2828 | try sema.addReferenceEntry(src, AnalUnit.wrap(.{ .decl = new_decl_index })); |
| 2827 | return Air.internedToRef(wip_ty.finish(ip, new_decl_index, new_namespace_index)); | 2829 | return Air.internedToRef(wip_ty.finish(ip, new_decl_index, new_namespace_index)); |
| 2828 | } | 2830 | } |
| 2829 | | 2831 | |
| ... | @@ -3325,6 +3327,7 @@ fn zirUnionDecl( | ... | @@ -3325,6 +3327,7 @@ fn zirUnionDecl( |
| 3325 | | 3327 | |
| 3326 | try mod.finalizeAnonDecl(new_decl_index); | 3328 | try mod.finalizeAnonDecl(new_decl_index); |
| 3327 | try mod.comp.work_queue.writeItem(.{ .resolve_type_fully = wip_ty.index }); | 3329 | try mod.comp.work_queue.writeItem(.{ .resolve_type_fully = wip_ty.index }); |
| | 3330 | try sema.addReferenceEntry(src, AnalUnit.wrap(.{ .decl = new_decl_index })); |
| 3328 | return Air.internedToRef(wip_ty.finish(ip, new_decl_index, new_namespace_index)); | 3331 | return Air.internedToRef(wip_ty.finish(ip, new_decl_index, new_namespace_index)); |
| 3329 | } | 3332 | } |
| 3330 | | 3333 | |
| ... | @@ -21966,6 +21969,7 @@ fn reifyUnion( | ... | @@ -21966,6 +21969,7 @@ fn reifyUnion( |
| 21966 | | 21969 | |
| 21967 | try mod.finalizeAnonDecl(new_decl_index); | 21970 | try mod.finalizeAnonDecl(new_decl_index); |
| 21968 | try mod.comp.work_queue.writeItem(.{ .resolve_type_fully = wip_ty.index }); | 21971 | try mod.comp.work_queue.writeItem(.{ .resolve_type_fully = wip_ty.index }); |
| | 21972 | try sema.addReferenceEntry(src, AnalUnit.wrap(.{ .decl = new_decl_index })); |
| 21969 | return Air.internedToRef(wip_ty.finish(ip, new_decl_index, .none)); | 21973 | return Air.internedToRef(wip_ty.finish(ip, new_decl_index, .none)); |
| 21970 | } | 21974 | } |
| 21971 | | 21975 | |
| ... | @@ -22231,6 +22235,7 @@ fn reifyStruct( | ... | @@ -22231,6 +22235,7 @@ fn reifyStruct( |
| 22231 | | 22235 | |
| 22232 | try mod.finalizeAnonDecl(new_decl_index); | 22236 | try mod.finalizeAnonDecl(new_decl_index); |
| 22233 | try mod.comp.work_queue.writeItem(.{ .resolve_type_fully = wip_ty.index }); | 22237 | try mod.comp.work_queue.writeItem(.{ .resolve_type_fully = wip_ty.index }); |
| | 22238 | try sema.addReferenceEntry(src, AnalUnit.wrap(.{ .decl = new_decl_index })); |
| 22234 | return Air.internedToRef(wip_ty.finish(ip, new_decl_index, .none)); | 22239 | return Air.internedToRef(wip_ty.finish(ip, new_decl_index, .none)); |
| 22235 | } | 22240 | } |
| 22236 | | 22241 | |