rust/tests/ui/mismatched_types/closure-arg-count-expected-...

21 lines
607 B
Rust

// Regression test for #47244: in this specific scenario, when the
// expected type indicated 1 argument but the closure takes two, we
// would (early on) create type variables for the type of `b`. If the
// user then attempts to invoke a method on `b`, we would get an error
// saying that the type of `b` must be known, which was not very
// helpful.
//@ run-rustfix
use std::collections::HashMap;
fn main() {
let mut m = HashMap::new();
m.insert("foo", "bar");
let _n = m.iter().map(|_, b| {
//~^ ERROR closure is expected to take a single 2-tuple
b.to_string()
});
}