//@ run-pass
// A basic test of using a higher-ranked trait bound.

trait FnLike<A,R> {
    fn call(&self, arg: A) -> R;
}

type FnObject<'b> = dyn for<'a> FnLike<(&'a i32,), &'a i32> + 'b;

struct Identity;

impl<'a, T> FnLike<(&'a T,), &'a T> for Identity {
    fn call(&self, (arg,): (&'a T,)) -> &'a T {
        arg
    }
}

fn call_repeatedly(f: &FnObject) {
    let x = 3;
    let y = f.call((&x,));
    assert_eq!(3, *y);
}

fn main() {
    call_repeatedly(&Identity);
}
