authorgravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2024-07-16 02:22:53-04:00
committergravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2024-07-16 02:24:16-04:00
log7dbd2a6bb549afa6dc3c95df46f40bf144db23a6
treee69d14539d69b8a22908316c418b8cba4d516caf
parenta20d081129ac6cad1df4afff057bd07e79d1d561

InternPool: fix `DependencyIterator` iteration


1 files changed, 6 insertions(+), 4 deletions(-)

src/InternPool.zig+6-4
......@@ -283,10 +283,12 @@ pub const DependencyIterator = struct {
283283 ip: *const InternPool,
284284 next_entry: DepEntry.Index.Optional,
285285 pub fn next(it: *DependencyIterator) ?AnalUnit {
286 const idx = it.next_entry.unwrap() orelse return null;
287 const entry = it.ip.dep_entries.items[@intFromEnum(idx)];
288 it.next_entry = entry.next;
289 return entry.depender.unwrap().?;
286 while (true) {
287 const idx = it.next_entry.unwrap() orelse return null;
288 const entry = it.ip.dep_entries.items[@intFromEnum(idx)];
289 it.next_entry = entry.next;
290 if (entry.depender.unwrap()) |depender| return depender;
291 }
290292 }
291293};
292294