| error[E0277]: the size for values of type `W` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:23:8 | |
| | | |
| LL | enum E<W: ?Sized, X: ?Sized, Y: ?Sized, Z: ?Sized> { | |
| | - this type parameter needs to be `Sized` | |
| LL | // parameter | |
| LL | VA(W), | |
| | ^ doesn't have a size known at compile-time | |
| | | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: consider removing the `?Sized` bound to make the type parameter `Sized` | |
| | | |
| LL - enum E<W: ?Sized, X: ?Sized, Y: ?Sized, Z: ?Sized> { | |
| LL + enum E<W, X: ?Sized, Y: ?Sized, Z: ?Sized> { | |
| | | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VA(&W), | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VA(Box<W>), | |
| | ++++ + | |
| error[E0277]: the size for values of type `X` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:25:11 | |
| | | |
| LL | enum E<W: ?Sized, X: ?Sized, Y: ?Sized, Z: ?Sized> { | |
| | - this type parameter needs to be `Sized` | |
| ... | |
| LL | VB{x: X}, | |
| | ^ doesn't have a size known at compile-time | |
| | | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: consider removing the `?Sized` bound to make the type parameter `Sized` | |
| | | |
| LL - enum E<W: ?Sized, X: ?Sized, Y: ?Sized, Z: ?Sized> { | |
| LL + enum E<W: ?Sized, X, Y: ?Sized, Z: ?Sized> { | |
| | | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VB{x: &X}, | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VB{x: Box<X>}, | |
| | ++++ + | |
| error[E0277]: the size for values of type `Y` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:27:15 | |
| | | |
| LL | enum E<W: ?Sized, X: ?Sized, Y: ?Sized, Z: ?Sized> { | |
| | - this type parameter needs to be `Sized` | |
| ... | |
| LL | VC(isize, Y), | |
| | ^ doesn't have a size known at compile-time | |
| | | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: consider removing the `?Sized` bound to make the type parameter `Sized` | |
| | | |
| LL - enum E<W: ?Sized, X: ?Sized, Y: ?Sized, Z: ?Sized> { | |
| LL + enum E<W: ?Sized, X: ?Sized, Y, Z: ?Sized> { | |
| | | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VC(isize, &Y), | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VC(isize, Box<Y>), | |
| | ++++ + | |
| error[E0277]: the size for values of type `Z` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:29:21 | |
| | | |
| LL | enum E<W: ?Sized, X: ?Sized, Y: ?Sized, Z: ?Sized> { | |
| | - this type parameter needs to be `Sized` | |
| ... | |
| LL | VD{u: isize, x: Z}, | |
| | ^ doesn't have a size known at compile-time | |
| | | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: consider removing the `?Sized` bound to make the type parameter `Sized` | |
| | | |
| LL - enum E<W: ?Sized, X: ?Sized, Y: ?Sized, Z: ?Sized> { | |
| LL + enum E<W: ?Sized, X: ?Sized, Y: ?Sized, Z> { | |
| | | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VD{u: isize, x: &Z}, | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VD{u: isize, x: Box<Z>}, | |
| | ++++ + | |
| error[E0277]: the size for values of type `[u8]` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:33:8 | |
| | | |
| LL | VE([u8]), | |
| | ^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `[u8]` | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VE(&[u8]), | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VE(Box<[u8]>), | |
| | ++++ + | |
| error[E0277]: the size for values of type `str` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:35:11 | |
| | | |
| LL | VF{x: str}, | |
| | ^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `str` | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VF{x: &str}, | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VF{x: Box<str>}, | |
| | ++++ + | |
| error[E0277]: the size for values of type `[f32]` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:37:15 | |
| | | |
| LL | VG(isize, [f32]), | |
| | ^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `[f32]` | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VG(isize, &[f32]), | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VG(isize, Box<[f32]>), | |
| | ++++ + | |
| error[E0277]: the size for values of type `[u32]` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:39:21 | |
| | | |
| LL | VH{u: isize, x: [u32]}, | |
| | ^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `[u32]` | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VH{u: isize, x: &[u32]}, | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VH{u: isize, x: Box<[u32]>}, | |
| | ++++ + | |
| error[E0277]: the size for values of type `(dyn Foo + 'static)` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:53:8 | |
| | | |
| LL | VM(dyn Foo), | |
| | ^^^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `(dyn Foo + 'static)` | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VM(&dyn Foo), | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VM(Box<dyn Foo>), | |
| | ++++ + | |
| error[E0277]: the size for values of type `(dyn Bar + 'static)` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:55:11 | |
| | | |
| LL | VN{x: dyn Bar}, | |
| | ^^^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `(dyn Bar + 'static)` | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VN{x: &dyn Bar}, | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VN{x: Box<dyn Bar>}, | |
| | ++++ + | |
| error[E0277]: the size for values of type `(dyn FooBar + 'static)` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:57:15 | |
| | | |
| LL | VO(isize, dyn FooBar), | |
| | ^^^^^^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `(dyn FooBar + 'static)` | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VO(isize, &dyn FooBar), | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VO(isize, Box<dyn FooBar>), | |
| | ++++ + | |
| error[E0277]: the size for values of type `(dyn BarFoo + 'static)` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:59:21 | |
| | | |
| LL | VP{u: isize, x: dyn BarFoo}, | |
| | ^^^^^^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `(dyn BarFoo + 'static)` | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VP{u: isize, x: &dyn BarFoo}, | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VP{u: isize, x: Box<dyn BarFoo>}, | |
| | ++++ + | |
| error[E0277]: the size for values of type `[i8]` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:63:8 | |
| | | |
| LL | VQ(<&'static [i8] as Deref>::Target), | |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `[i8]` | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VQ(&<&'static [i8] as Deref>::Target), | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VQ(Box<<&'static [i8] as Deref>::Target>), | |
| | ++++ + | |
| error[E0277]: the size for values of type `[char]` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:65:11 | |
| | | |
| LL | VR{x: <&'static [char] as Deref>::Target}, | |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `[char]` | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VR{x: &<&'static [char] as Deref>::Target}, | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VR{x: Box<<&'static [char] as Deref>::Target>}, | |
| | ++++ + | |
| error[E0277]: the size for values of type `[f64]` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:67:15 | |
| | | |
| LL | VS(isize, <&'static [f64] as Deref>::Target), | |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `[f64]` | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VS(isize, &<&'static [f64] as Deref>::Target), | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VS(isize, Box<<&'static [f64] as Deref>::Target>), | |
| | ++++ + | |
| error[E0277]: the size for values of type `[i32]` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:69:21 | |
| | | |
| LL | VT{u: isize, x: <&'static [i32] as Deref>::Target}, | |
| | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `[i32]` | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VT{u: isize, x: &<&'static [i32] as Deref>::Target}, | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VT{u: isize, x: Box<<&'static [i32] as Deref>::Target>}, | |
| | ++++ + | |
| error[E0277]: the size for values of type `(dyn PathHelper1 + 'static)` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:43:8 | |
| | | |
| LL | VI(Path1), | |
| | ^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: within `Path1`, the trait `Sized` is not implemented for `(dyn PathHelper1 + 'static)` | |
| note: required because it appears within the type `Path1` | |
| --> $DIR/unsized-enum2.rs:16:8 | |
| | | |
| LL | struct Path1(dyn PathHelper1); | |
| | ^^^^^ | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VI(&Path1), | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VI(Box<Path1>), | |
| | ++++ + | |
| error[E0277]: the size for values of type `(dyn PathHelper2 + 'static)` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:45:11 | |
| | | |
| LL | VJ{x: Path2}, | |
| | ^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: within `Path2`, the trait `Sized` is not implemented for `(dyn PathHelper2 + 'static)` | |
| note: required because it appears within the type `Path2` | |
| --> $DIR/unsized-enum2.rs:17:8 | |
| | | |
| LL | struct Path2(dyn PathHelper2); | |
| | ^^^^^ | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VJ{x: &Path2}, | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VJ{x: Box<Path2>}, | |
| | ++++ + | |
| error[E0277]: the size for values of type `(dyn PathHelper3 + 'static)` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:47:15 | |
| | | |
| LL | VK(isize, Path3), | |
| | ^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: within `Path3`, the trait `Sized` is not implemented for `(dyn PathHelper3 + 'static)` | |
| note: required because it appears within the type `Path3` | |
| --> $DIR/unsized-enum2.rs:18:8 | |
| | | |
| LL | struct Path3(dyn PathHelper3); | |
| | ^^^^^ | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VK(isize, &Path3), | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VK(isize, Box<Path3>), | |
| | ++++ + | |
| error[E0277]: the size for values of type `(dyn PathHelper4 + 'static)` cannot be known at compilation time | |
| --> $DIR/unsized-enum2.rs:49:21 | |
| | | |
| LL | VL{u: isize, x: Path4}, | |
| | ^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: within `Path4`, the trait `Sized` is not implemented for `(dyn PathHelper4 + 'static)` | |
| note: required because it appears within the type `Path4` | |
| --> $DIR/unsized-enum2.rs:19:8 | |
| | | |
| LL | struct Path4(dyn PathHelper4); | |
| | ^^^^^ | |
| = note: no field of an enum variant may have a dynamically sized type | |
| = help: change the field's type to have a statically known size | |
| help: borrowed types always have a statically known size | |
| | | |
| LL | VL{u: isize, x: &Path4}, | |
| | + | |
| help: the `Box` type always has a statically known size and allocates its contents in the heap | |
| | | |
| LL | VL{u: isize, x: Box<Path4>}, | |
| | ++++ + | |
| error: aborting due to 20 previous errors | |
| For more information about this error, try `rustc --explain E0277`. |