// Checks that the impl trait can have its own generics. use impl_trait::impl_trait; struct Foo(T); trait Bar { } impl_trait! { impl Foo { impl trait Bar { } } } fn static_assert_1, U>(_t: T, _u: U) {} fn main() { static_assert_1(Foo(()), ()); }