diff --git a/lib/std/debug/SelfInfo/Windows.zig b/lib/std/debug/SelfInfo/Windows.zig index f75fee09d0e26daf07065d9c331f6ee25d2f4a61..260e012c1e65261dc4c8a88907108620030228d1 100644 --- a/lib/std/debug/SelfInfo/Windows.zig +++ b/lib/std/debug/SelfInfo/Windows.zig @@ -62,7 +62,8 @@ pub const SymbolIterator = struct { const pdb = if (di.pdb) |*pdb| pdb else unreachable; // Get the next inlinee if it exists - if (info.inlinees.next(info.module)) |site| { + while (info.inlinees.next(info.module)) |site| { + const parent: *align(1) const std.pdb.RecordPrefix = @ptrCast(&info.module.symbols[site.parent - @sizeOf(u16) * 2]); if (pdb.getInlineeInfo(info.module, site.inlinee) catch null) |loc| { if (info.proc_sym) |proc_sym| { const offset_in_func = info.addr - proc_sym.code_offset;