summaryrefslogtreecommitdiffstats
path: root/src/test/ui/mismatched_types/closure-arg-type-mismatch.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/mismatched_types/closure-arg-type-mismatch.rs')
-rw-r--r--src/test/ui/mismatched_types/closure-arg-type-mismatch.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/test/ui/mismatched_types/closure-arg-type-mismatch.rs b/src/test/ui/mismatched_types/closure-arg-type-mismatch.rs
new file mode 100644
index 000000000..98abb0ba9
--- /dev/null
+++ b/src/test/ui/mismatched_types/closure-arg-type-mismatch.rs
@@ -0,0 +1,11 @@
+fn main() {
+ let a = [(1u32, 2u32)];
+ a.iter().map(|_: (u32, u32)| 45); //~ ERROR type mismatch
+ a.iter().map(|_: &(u16, u16)| 45); //~ ERROR type mismatch
+ a.iter().map(|_: (u16, u16)| 45); //~ ERROR type mismatch
+}
+
+fn baz<F: Fn(*mut &u32)>(_: F) {}
+fn _test<'a>(f: fn(*mut &'a u32)) {
+ baz(f);
+}