#![feature(type_alias_impl_trait)] fn main() {} type MyIter = impl Iterator; fn my_iter(t: T) -> MyIter { std::iter::once(t) } fn my_iter2(t: T) -> MyIter { Some(t).into_iter() //~^ ERROR concrete type differs from previous }