#![feature(inherent_associated_types)] #![allow(incomplete_features)] struct S(A, B); struct Featureless; trait One {} trait Two {} impl S { type X = (); } impl S { type X = String; } fn main() { let _: S::::X; //~ ERROR the associated type `X` exists for `S`, but its trait bounds were not satisfied }