summaryrefslogtreecommitdiffstats
path: root/src/test/ui/lifetimes/lifetime-errors/issue_74400.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/lifetimes/lifetime-errors/issue_74400.rs')
-rw-r--r--src/test/ui/lifetimes/lifetime-errors/issue_74400.rs16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/test/ui/lifetimes/lifetime-errors/issue_74400.rs b/src/test/ui/lifetimes/lifetime-errors/issue_74400.rs
new file mode 100644
index 000000000..ddb8bacce
--- /dev/null
+++ b/src/test/ui/lifetimes/lifetime-errors/issue_74400.rs
@@ -0,0 +1,16 @@
+//! Regression test for #74400: Type mismatch in function arguments E0631, E0271 are falsely
+//! recognized as E0308 mismatched types.
+
+use std::convert::identity;
+
+fn main() {}
+
+fn f<T, S>(data: &[T], key: impl Fn(&T) -> S) {
+}
+
+fn g<T>(data: &[T]) {
+ f(data, identity)
+ //~^ ERROR the parameter type
+ //~| ERROR mismatched types
+ //~| ERROR implementation of `FnOnce` is not general
+}