rust/tests/ui/lub-glb/empty-binder-future-compat.rs

23 lines
426 B
Rust

//@ check-pass
fn lt_in_fn_fn<'a: 'a>() -> fn(fn(&'a ())) {
|_| ()
}
fn foo<'a, 'b, 'lower>(v: bool)
where
'a: 'lower,
'b: 'lower,
{
// if we infer `x` to be higher ranked in the future,
// this would cause a type error.
let x = match v {
true => lt_in_fn_fn::<'a>(),
false => lt_in_fn_fn::<'b>(),
};
let _: fn(fn(&'lower())) = x;
}
fn main() {}