rust/tests/ui/traits/issue-24010.rs

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

17 lines
304 B
Rust
Raw Normal View History

// run-pass
// revisions: classic next
//[next] compile-flags: -Ztrait-solver=next
2018-11-04 04:47:10 +00:00
trait Foo: Fn(i32) -> i32 + Send {}
2018-11-04 04:47:10 +00:00
impl<T: ?Sized + Fn(i32) -> i32 + Send> Foo for T {}
2019-05-28 18:47:21 +00:00
fn wants_foo(f: Box<dyn Foo>) -> i32 {
2018-11-04 04:47:10 +00:00
f(42)
}
2018-10-25 00:03:25 +00:00
2018-11-04 04:47:10 +00:00
fn main() {
let f = Box::new(|x| x);
assert_eq!(wants_foo(f), 42);
}