summaryrefslogtreecommitdiffstats
path: root/src/test/ui/issues/issue-41139.rs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/test/ui/issues/issue-41139.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/test/ui/issues/issue-41139.rs b/src/test/ui/issues/issue-41139.rs
new file mode 100644
index 000000000..94c53216f
--- /dev/null
+++ b/src/test/ui/issues/issue-41139.rs
@@ -0,0 +1,12 @@
+trait Trait {}
+
+fn get_function<'a>() -> &'a dyn Fn() -> dyn Trait {
+ panic!("")
+}
+
+fn main() {
+ // This isn't great. The issue here is that `dyn Trait` is not sized, so
+ // `dyn Fn() -> dyn Trait` is not well-formed.
+ let t: &dyn Trait = &get_function()();
+ //~^ ERROR expected function, found `&dyn Fn() -> (dyn Trait + 'static)`
+}