//@ known-bug: #141124 struct S; trait SimpleTrait {} trait TraitAssoc { type Assoc; } impl TraitAssoc for T where T: SimpleTrait, { type Assoc = <(T,) as TraitAssoc>::Assoc; } impl SimpleTrait for ::Assoc {} pub fn main() {}