2021-09-04 14:00:10 +02:00
|
|
|
#![feature(unboxed_closures)]
|
|
|
|
|
|
|
|
trait SomeTrait<'a> {
|
|
|
|
type Associated;
|
|
|
|
}
|
|
|
|
|
|
|
|
fn give_me_ice<T>() {
|
|
|
|
callee::<fn(&()) -> <T as SomeTrait<'_>>::Associated>();
|
2022-09-21 17:57:30 +02:00
|
|
|
//~^ ERROR the trait bound `for<'a> T: SomeTrait<'a>` is not satisfied [E0277]
|
2022-09-17 21:35:47 +03:00
|
|
|
//~| ERROR the trait bound `for<'a> T: SomeTrait<'a>` is not satisfied [E0277]
|
2021-09-04 14:00:10 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
fn callee<T: Fn<(&'static (),)>>() {
|
|
|
|
println!("{}", std::any::type_name::<<T as FnOnce<(&'static (),)>>::Output>());
|
|
|
|
}
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
give_me_ice::<()>();
|
|
|
|
}
|