This is not always elidable, since it's possible to be `&'a Trait + 'a` too. Neither cases allow elision consistently, AFAICT. ``` rust fn foo<'a>(&'a self) -> &'a Trait { } ``` `walk_ty`ing and searching for anything wrapping a trait _except_ for a `Box` (`TyUniq`) should work.