error[E0621]: explicit lifetime required in the type of `cont` --> $DIR/issue-13058.rs:24:26 | LL | fn check<'r, I: Iterator, T: Itble<'r, usize, I>>(cont: &T) -> bool | -- help: add explicit lifetime `'r` to the type of `cont`: `&'r T` LL | { LL | let cont_iter = cont.iter(); | ^^^^ lifetime `'r` required error[E0308]: mismatched types --> $DIR/issue-13058.rs:36:11 | LL | check((3, 5)); | ^^^^^^ | | | expected reference, found tuple | help: consider borrowing here: `&(3, 5)` | = note: expected type `&_` found type `({integer}, {integer})` error: aborting due to 2 previous errors Some errors occurred: E0308, E0621. For more information about an error, try `rustc --explain E0308`.