#![feature(type_alias_impl_trait)] use std::fmt::Debug; fn main() {} type Two = impl Debug; fn two(t: T, _: U) -> Two { (t, 4u32) //~^ ERROR `T` doesn't implement `Debug` } fn three(_: T, u: U) -> Two { (u, 4u32) //~^ ERROR `U` doesn't implement `Debug` }