// compile-flags: -Z chalk trait Foo: Sized { } trait Bar { type Item: Foo; } impl Foo for i32 { } impl Foo for str { } //~^ ERROR the size for values of type `str` cannot be known at compilation time // Implicit `T: Sized` bound. impl Foo for Option { } impl Bar for () { type Item = i32; } impl Bar for Option { type Item = Option; } impl Bar for f32 { type Item = f32; //~^ ERROR the trait bound `f32: Foo` is not satisfied } trait Baz where U: Foo { } impl Baz for i32 { } impl Baz for f32 { } //~^ ERROR the trait bound `f32: Foo` is not satisfied fn main() { }