You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Stack traces can be pretty unreadable currently, because we are showing the code of all call sites, including stuff somewhere deep in libstd that's between the startn-fn lang item and main.
We should be smarter and not print code snippets for all call sites.
But I still find one thing pretty confusing: we print things like
= note: inside call to `std::alloc::alloc` at /home/r/.rustup/toolchains/miri/lib/rustlib/src/rust/src/liballoc/alloc.rs:172:35
= note: inside call to `<std::alloc::Global as std::alloc::AllocRef>::alloc` at /home/r/.rustup/toolchains/miri/lib/rustlib/src/rust/src/liballoc/alloc.rs:225:15
= note: inside call to `alloc::alloc::exchange_malloc` at /home/r/.rustup/toolchains/miri/lib/rustlib/src/rust/src/liballoc/rc.rs:327:49
Usually, backtraces pair up a function name with the relevant file and line inside that function. But Miri pairs up a function name with the file and line of its caller. I think that is unnecessarily confusing.
Activity
RalfJung commentedon Mar 28, 2020
Backtraces are better now since we don't show code outside the current crate.
But I still find one thing pretty confusing: we print things like
Usually, backtraces pair up a function name with the relevant file and line inside that function. But Miri pairs up a function name with the file and line of its caller. I think that is unnecessarily confusing.
Auto merge of #1283 - RalfJung:backtrace, r=RalfJung