//@ compile-flags: -Cstrip=none -Cdebuginfo=line-tables-only | |
#[no_mangle] | |
pub fn baz<F>(mut cb: F, data: u32) where F: FnMut(u32) { | |
cb(data); | |
} | |
#[no_mangle] | |
pub fn bar<F>(cb: F, data: u32) where F: FnMut(u32) { | |
baz(cb, data); | |
} | |
#[no_mangle] | |
pub fn foo<F>(cb: F, data: u32) where F: FnMut(u32) { | |
bar(cb, data); | |
} | |
pub fn capture_backtrace() -> std::backtrace::Backtrace { | |
let mut bt = None; | |
foo(|_| bt = Some(std::backtrace::Backtrace::capture()), 42); | |
bt.unwrap() | |
} |