// https://github.com/rust-lang/rust/issues/50159 #![crate_name = "foo"] pub trait Signal { type Item; } pub trait Signal2 { type Item2; } impl Signal2 for B where B: Signal, { type Item2 = C; } //@ has foo/struct.Switch.html //@ has - '//h3[@class="code-header"]' 'impl Send for Switchwhere ::Item: Send' //@ has - '//h3[@class="code-header"]' 'impl Sync for Switchwhere ::Item: Sync' //@ count - '//*[@id="implementations-list"]//*[@class="impl"]' 0 //@ count - '//*[@id="synthetic-implementations-list"]//*[@class="impl"]' 6 pub struct Switch { pub inner: ::Item2, }