From a5f18c2b2ae86126e0fd0cba67676ae68ba0f1df Mon Sep 17 00:00:00 2001 From: Rocknest <35231115+Rocknest@users.noreply.github.com> Date: Thu, 30 Jan 2020 10:00:28 +0200 Subject: Fix one more edge case --- lib/std/debug.zig | 1 + 1 file changed, 1 insertion(+) (limited to 'lib') diff --git a/lib/std/debug.zig b/lib/std/debug.zig index 2dd1da50c3..9cd76cb30c 100644 --- a/lib/std/debug.zig +++ b/lib/std/debug.zig @@ -131,6 +131,7 @@ pub fn dumpStackTraceFromBase(bp: usize, ip: usize) void { const tty_config = detectTTYConfig(); printSourceAtAddress(debug_info, stderr, ip, tty_config) catch return; const first_return_address = @intToPtr(*const usize, bp + @sizeOf(usize)).*; + if (first_return_address == 0) return; // The whole call stack may be optimized out printSourceAtAddress(debug_info, stderr, first_return_address - 1, tty_config) catch return; var it = StackIterator{ .first_addr = null, -- cgit v1.2.3