//@ run-pass //@ revisions: current next //@ ignore-compare-mode-next-solver (explicit revisions) //@[next] compile-flags: -Znext-solver trait Foo: Fn(i32) -> i32 + Send {} impl i32 + Send> Foo for T {} fn wants_foo(f: Box) -> i32 { f(42) } fn main() { let f = Box::new(|x| x); assert_eq!(wants_foo(f), 42); }