pub struct Nested; pub trait Trait { fn thank_you(x: T); } pub fn abracadabra(_: X) where X: Trait {} pub fn alacazam() -> X where X: Trait {} pub trait T1 {} pub trait T2<'a, T> { fn please(_: &'a T); } pub fn presto(_: A, _: B) where A: T1, B: for <'b> T2<'b, Nested> {}