summaryrefslogtreecommitdiffstats
path: root/src/test/ui/mismatched_types/closure-mismatch.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/mismatched_types/closure-mismatch.stderr')
-rw-r--r--src/test/ui/mismatched_types/closure-mismatch.stderr31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/test/ui/mismatched_types/closure-mismatch.stderr b/src/test/ui/mismatched_types/closure-mismatch.stderr
new file mode 100644
index 000000000..ef76ec63f
--- /dev/null
+++ b/src/test/ui/mismatched_types/closure-mismatch.stderr
@@ -0,0 +1,31 @@
+error: implementation of `FnOnce` is not general enough
+ --> $DIR/closure-mismatch.rs:8:5
+ |
+LL | baz(|_| ());
+ | ^^^^^^^^^^^ implementation of `FnOnce` is not general enough
+ |
+ = note: closure with signature `fn(&'2 ())` must implement `FnOnce<(&'1 (),)>`, for any lifetime `'1`...
+ = note: ...but it actually implements `FnOnce<(&'2 (),)>`, for some specific lifetime `'2`
+
+error[E0308]: mismatched types
+ --> $DIR/closure-mismatch.rs:8:5
+ |
+LL | baz(|_| ());
+ | ^^^^^^^^^^^ one type is more general than the other
+ |
+ = note: expected trait `for<'r> Fn<(&'r (),)>`
+ found trait `Fn<(&(),)>`
+note: this closure does not fulfill the lifetime requirements
+ --> $DIR/closure-mismatch.rs:8:9
+ |
+LL | baz(|_| ());
+ | ^^^
+note: the lifetime requirement is introduced here
+ --> $DIR/closure-mismatch.rs:5:11
+ |
+LL | fn baz<T: Foo>(_: T) {}
+ | ^^^
+
+error: aborting due to 2 previous errors
+
+For more information about this error, try `rustc --explain E0308`.