summaryrefslogtreecommitdiffstats
path: root/src/test/ui/rfc1623.stderr
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/rfc1623.stderr')
-rw-r--r--src/test/ui/rfc1623.stderr39
1 files changed, 39 insertions, 0 deletions
diff --git a/src/test/ui/rfc1623.stderr b/src/test/ui/rfc1623.stderr
new file mode 100644
index 000000000..b15a4cb11
--- /dev/null
+++ b/src/test/ui/rfc1623.stderr
@@ -0,0 +1,39 @@
+error[E0308]: mismatched types
+ --> $DIR/rfc1623.rs:28:8
+ |
+LL | f: &id,
+ | ^^^ one type is more general than the other
+ |
+ = note: expected trait `for<'a, 'b> Fn<(&'a Foo<'b>,)>`
+ found trait `Fn<(&Foo<'_>,)>`
+
+error[E0308]: mismatched types
+ --> $DIR/rfc1623.rs:28:8
+ |
+LL | f: &id,
+ | ^^^ one type is more general than the other
+ |
+ = note: expected trait `for<'a, 'b> Fn<(&'a Foo<'b>,)>`
+ found trait `Fn<(&Foo<'_>,)>`
+
+error: implementation of `FnOnce` is not general enough
+ --> $DIR/rfc1623.rs:28:8
+ |
+LL | f: &id,
+ | ^^^ implementation of `FnOnce` is not general enough
+ |
+ = note: `fn(&'2 Foo<'_>) -> &'2 Foo<'_> {id::<&'2 Foo<'_>>}` must implement `FnOnce<(&'1 Foo<'b>,)>`, for any lifetime `'1`...
+ = note: ...but it actually implements `FnOnce<(&'2 Foo<'_>,)>`, for some specific lifetime `'2`
+
+error: implementation of `FnOnce` is not general enough
+ --> $DIR/rfc1623.rs:28:8
+ |
+LL | f: &id,
+ | ^^^ implementation of `FnOnce` is not general enough
+ |
+ = note: `fn(&Foo<'2>) -> &Foo<'2> {id::<&Foo<'2>>}` must implement `FnOnce<(&'a Foo<'1>,)>`, for any lifetime `'1`...
+ = note: ...but it actually implements `FnOnce<(&Foo<'2>,)>`, for some specific lifetime `'2`
+
+error: aborting due to 4 previous errors
+
+For more information about this error, try `rustc --explain E0308`.