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();
5 | ----- ^^^^^ additional non-auto trait
9 = help: consider creating a new trait with all of these as super-traits and using that trait here instead: `trait NewTrait: Trait + Sized {}`
10 = note: auto-traits like `Send` and `Sync` are traits that have special properties; for more information on them, visit <https://doc.rust-lang.org/reference/special-types-and-traits.html#auto-traits>
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 `Sized` is not implemented for `dyn Trait`
19 note: required by a bound in `Vec`
20 --> $SRC_DIR/alloc/src/vec/mod.rs:LL:COL
22 LL | pub struct Vec<T, #[unstable(feature = "allocator_api", issue = "32838")] A: Allocator = Global> {
23 | ^ required by this bound in `Vec`
25 error[E0277]: the size for values of type `dyn Trait` cannot be known at compilation time
26 --> $DIR/bad-sized.rs:4:37
28 LL | let x: Vec<dyn Trait + Sized> = Vec::new();
29 | ^^^^^^^^ doesn't have a size known at compile-time
31 = help: the trait `Sized` is not implemented for `dyn Trait`
32 note: required by `Vec::<T>::new`
33 --> $SRC_DIR/alloc/src/vec/mod.rs:LL:COL
35 LL | pub const fn new() -> Self {
36 | ^^^^^^^^^^^^^^^^^^^^^^^^^^
38 error[E0277]: the size for values of type `dyn Trait` cannot be known at compilation time
39 --> $DIR/bad-sized.rs:4:37
41 LL | let x: Vec<dyn Trait + Sized> = Vec::new();
42 | ^^^ doesn't have a size known at compile-time
44 = help: the trait `Sized` is not implemented for `dyn Trait`
45 note: required by a bound in `Vec`
46 --> $SRC_DIR/alloc/src/vec/mod.rs:LL:COL
48 LL | pub struct Vec<T, #[unstable(feature = "allocator_api", issue = "32838")] A: Allocator = Global> {
49 | ^ required by this bound in `Vec`
51 error: aborting due to 4 previous errors
53 Some errors have detailed explanations: E0225, E0277.
54 For more information about an error, try `rustc --explain E0225`.