summaryrefslogtreecommitdiffstats
path: root/src/test/ui/traits/issue-24010.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/traits/issue-24010.rs')
-rw-r--r--src/test/ui/traits/issue-24010.rs14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/test/ui/traits/issue-24010.rs b/src/test/ui/traits/issue-24010.rs
new file mode 100644
index 000000000..f18185334
--- /dev/null
+++ b/src/test/ui/traits/issue-24010.rs
@@ -0,0 +1,14 @@
+// run-pass
+
+trait Foo: Fn(i32) -> i32 + Send {}
+
+impl<T: ?Sized + Fn(i32) -> i32 + Send> Foo for T {}
+
+fn wants_foo(f: Box<dyn Foo>) -> i32 {
+ f(42)
+}
+
+fn main() {
+ let f = Box::new(|x| x);
+ assert_eq!(wants_foo(f), 42);
+}