rust/tests/run-pass/backtrace-api.stderr
Aaron Hill be51e6bd07
Add an fn_ptr field to MiriFrame
The `backtrace-rs` crate can use this to implement
`Frame::symbol_address`, which is used to skip frames
above the call to `Backtrace::capture` on the stack.

The function pointer will not be useable for comparison purposes if the
function is generic, as CTFE creates a new function pointer for each
cast of a (monomorphized) generic function. However, this already
affects code running under Miri, and isn't a problem for `backtrace-rs`
(which only casts a non-generic function).

I've added logic to allow `MiriFrame` to have either 4 or 5 fields - if
a 5th field is present, we write the function pointer to it.
2020-10-10 13:07:57 -04:00

15 lines
826 B
Plaintext

$DIR/backtrace-api.rs:13:59 (func_d)
$DIR/backtrace-api.rs:12:50 (func_c)
$DIR/backtrace-api.rs:6:53 (func_b)
$DIR/backtrace-api.rs:5:50 (func_a)
$DIR/backtrace-api.rs:17:18 (main)
RUSTLIB/core/src/ops/function.rs:LL:COL (<fn() as std::ops::FnOnce<()>>::call_once - shim(fn()))
RUSTLIB/std/src/sys_common/backtrace.rs:LL:COL (std::sys_common::backtrace::__rust_begin_short_backtrace)
RUSTLIB/std/src/rt.rs:LL:COL (std::rt::lang_start::{closure#0})
RUSTLIB/core/src/ops/function.rs:LL:COL (std::ops::function::impls::call_once)
RUSTLIB/std/src/panicking.rs:LL:COL (std::panicking::r#try::do_call)
RUSTLIB/std/src/panicking.rs:LL:COL (std::panicking::r#try)
RUSTLIB/std/src/panic.rs:LL:COL (std::panic::catch_unwind)
RUSTLIB/std/src/rt.rs:LL:COL (std::rt::lang_start_internal)
RUSTLIB/std/src/rt.rs:LL:COL (std::rt::lang_start)