There should be no `b` here in the println, this looks like a typo:
while let Some((a, a + 1)) = iterator.next() {
println!("({}, {})", a, b);
} while let Some((a, a + 1)) = iterator.next() {
println!("({}, {})", a, b);
} if let (a, 2) = (1, 2) &&
let (c, 4) = (3, 4) && // should be b, not c
b == a + 2 {
println!("Made it, a = {}, b = {}", a, b);
} if let (a, 2) = (1, 2) &&
let (b, 4) = (3, 4) && // <-- This should be an open brace.
println!("Made it, a = {}, b = {}", a, b);
}