// check-pass #![feature(type_alias_impl_trait)] use std::fmt::Debug; fn main() {} type Two = impl Debug; fn two(t: T, u: U) -> Two { (t, t) } fn three(t: T, t2: T, u: U) -> Two { (t, t2) } fn four(t: T, t2: T, u: U, v: V) -> Two { (t, t2) } fn five(x: X, y: Y, y2: Y) -> Two { (y, y2) }