1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
// check-pass #![feature(associated_type_bounds)] fn foo<F>(_: F) where F: for<'a> Trait<Output: 'a>, { } trait Trait { type Output; } impl<T> Trait for T { type Output = (); } fn main() { foo(()); }