| #[link(name = "foo", kind = "static")] | |
| extern "C" { | |
| fn test_start(f: extern "C" fn()); | |
| fn test_end(); | |
| } | |
| fn main() { | |
| unsafe { | |
| test_start(test_middle); | |
| } | |
| } | |
| struct A; | |
| impl Drop for A { | |
| fn drop(&mut self) {} | |
| } | |
| extern "C" fn test_middle() { | |
| let _a = A; | |
| foo(); | |
| } | |
| fn foo() { | |
| let _a = A; | |
| unsafe { | |
| test_end(); | |
| } | |
| } |