#[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() {
test_end();