File tree Expand file tree Collapse file tree 1 file changed +7
-3
lines changed Expand file tree Collapse file tree 1 file changed +7
-3
lines changed Original file line number Diff line number Diff line change @@ -63,9 +63,13 @@ impl<T: ?Sized> !Send for *mut T { }
6363/// struct BarUse(Bar<[i32]>); // OK
6464/// ```
6565///
66- /// The one exception is the implicit `Self` type of a trait, which does not
67- /// get an implicit `Sized` bound. This is because a `Sized` bound prevents
68- /// the trait from being used to form a [trait object]:
66+ /// The one exception is the implicit `Self` type of a trait. A trait does not
67+ /// have an implicit `Sized` bound as this is incompatible with [trait object]s
68+ /// where, by definition, one cannot know the size of all possible
69+ /// implementations of the trait.
70+ ///
71+ /// Although Rust will let you bind `Sized` to a trait, you won't
72+ /// be able to use it as a trait object later:
6973///
7074/// ```
7175/// # #![allow(unused_variables)]
You can’t perform that action at this time.
0 commit comments