1 error[E0225]: only auto traits can be used as additional traits in a trait object
2 --> $DIR/bad-sized.rs:4:28
4 LL | let x: Vec<dyn Trait + Sized> = Vec::new();
7 | | additional non-auto trait
8 | | trait alias used in trait object type (additional use)
10 | trait alias used in trait object type (first use)
12 error[E0277]: the size for values of type `dyn Trait` cannot be known at compilation time
13 --> $DIR/bad-sized.rs:4:12
15 LL | let x: Vec<dyn Trait + Sized> = Vec::new();
16 | ^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time
18 = help: the trait `std::marker::Sized` is not implemented for `dyn Trait`
19 = note: to learn more, visit <https://doc.rust-lang.org/book/ch19-04-advanced-types.html#dynamically-sized-types-and-the-sized-trait>
20 = note: required by `std::vec::Vec`
22 error[E0277]: the size for values of type `dyn Trait` cannot be known at compilation time
23 --> $DIR/bad-sized.rs:4:37
25 LL | let x: Vec<dyn Trait + Sized> = Vec::new();
26 | ^^^^^^^^ doesn't have a size known at compile-time
28 = help: the trait `std::marker::Sized` is not implemented for `dyn Trait`
29 = note: to learn more, visit <https://doc.rust-lang.org/book/ch19-04-advanced-types.html#dynamically-sized-types-and-the-sized-trait>
30 = note: required by `std::vec::Vec::<T>::new`
32 error: aborting due to 3 previous errors
34 Some errors have detailed explanations: E0225, E0277.
35 For more information about an error, try `rustc --explain E0225`.