zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit a5d5c097f55d7a1b53055310e2d150b23e56eebb (tree)
parent eae9aa800e76efb835f81ee5b788890425ee95dd
Author: mlugg <mlugg@mlugg.co.uk>
Date:   Thu,  4 Jul 2024 10:21:30 +0100

Sema: add missing references

Diffstat:
Msrc/Sema.zig | 5+++++
1 file changed, 5 insertions(+), 0 deletions(-)

diff --git a/src/Sema.zig b/src/Sema.zig @@ -877,6 +877,7 @@ pub fn deinit(sema: *Sema) void { sema.maybe_comptime_allocs.deinit(gpa); sema.comptime_allocs.deinit(gpa); sema.exports.deinit(gpa); + sema.references.deinit(gpa); sema.* = undefined; } @@ -2824,6 +2825,7 @@ fn zirStructDecl( try mod.finalizeAnonDecl(new_decl_index); try mod.comp.work_queue.writeItem(.{ .resolve_type_fully = wip_ty.index }); + try sema.addReferenceEntry(src, AnalUnit.wrap(.{ .decl = new_decl_index })); return Air.internedToRef(wip_ty.finish(ip, new_decl_index, new_namespace_index)); } @@ -3325,6 +3327,7 @@ fn zirUnionDecl( try mod.finalizeAnonDecl(new_decl_index); try mod.comp.work_queue.writeItem(.{ .resolve_type_fully = wip_ty.index }); + try sema.addReferenceEntry(src, AnalUnit.wrap(.{ .decl = new_decl_index })); return Air.internedToRef(wip_ty.finish(ip, new_decl_index, new_namespace_index)); } @@ -21966,6 +21969,7 @@ fn reifyUnion( try mod.finalizeAnonDecl(new_decl_index); try mod.comp.work_queue.writeItem(.{ .resolve_type_fully = wip_ty.index }); + try sema.addReferenceEntry(src, AnalUnit.wrap(.{ .decl = new_decl_index })); return Air.internedToRef(wip_ty.finish(ip, new_decl_index, .none)); } @@ -22231,6 +22235,7 @@ fn reifyStruct( try mod.finalizeAnonDecl(new_decl_index); try mod.comp.work_queue.writeItem(.{ .resolve_type_fully = wip_ty.index }); + try sema.addReferenceEntry(src, AnalUnit.wrap(.{ .decl = new_decl_index })); return Air.internedToRef(wip_ty.finish(ip, new_decl_index, .none)); }