mirror of
https://github.com/rust-lang/rust-clippy
synced 2024-11-24 21:53:23 +00:00
197 lines
6.3 KiB
Text
197 lines
6.3 KiB
Text
error: large size difference between variants
|
|
--> $DIR/large_enum_variant.rs:12:5
|
|
|
|
|
LL | B([i32; 8000]),
|
|
| ^^^^^^^^^^^^^^ this variant is 32000 bytes
|
|
|
|
|
= note: `-D clippy::large-enum-variant` implied by `-D warnings`
|
|
note: and the second-largest variant is 4 bytes:
|
|
--> $DIR/large_enum_variant.rs:11:5
|
|
|
|
|
LL | A(i32),
|
|
| ^^^^^^
|
|
help: consider boxing the large fields to reduce the total size of the enum
|
|
|
|
|
LL | B(Box<[i32; 8000]>),
|
|
| ~~~~~~~~~~~~~~~~
|
|
|
|
error: large size difference between variants
|
|
--> $DIR/large_enum_variant.rs:36:5
|
|
|
|
|
LL | ContainingLargeEnum(LargeEnum),
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this variant is 32004 bytes
|
|
|
|
|
note: and the second-largest variant is 8 bytes:
|
|
--> $DIR/large_enum_variant.rs:35:5
|
|
|
|
|
LL | VariantOk(i32, u32),
|
|
| ^^^^^^^^^^^^^^^^^^^
|
|
help: consider boxing the large fields to reduce the total size of the enum
|
|
|
|
|
LL | ContainingLargeEnum(Box<LargeEnum>),
|
|
| ~~~~~~~~~~~~~~
|
|
|
|
error: large size difference between variants
|
|
--> $DIR/large_enum_variant.rs:40:5
|
|
|
|
|
LL | ContainingMoreThanOneField(i32, [i32; 8000], [i32; 9500]),
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this variant is 70004 bytes
|
|
|
|
|
note: and the second-largest variant is 8 bytes:
|
|
--> $DIR/large_enum_variant.rs:42:5
|
|
|
|
|
LL | StructLikeLittle { x: i32, y: i32 },
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
help: consider boxing the large fields to reduce the total size of the enum
|
|
|
|
|
LL | ContainingMoreThanOneField(i32, Box<[i32; 8000]>, Box<[i32; 9500]>),
|
|
| ~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~
|
|
|
|
error: large size difference between variants
|
|
--> $DIR/large_enum_variant.rs:47:5
|
|
|
|
|
LL | StructLikeLarge { x: [i32; 8000], y: i32 },
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this variant is 32004 bytes
|
|
|
|
|
note: and the second-largest variant is 8 bytes:
|
|
--> $DIR/large_enum_variant.rs:46:5
|
|
|
|
|
LL | VariantOk(i32, u32),
|
|
| ^^^^^^^^^^^^^^^^^^^
|
|
help: consider boxing the large fields to reduce the total size of the enum
|
|
|
|
|
LL | StructLikeLarge { x: Box<[i32; 8000]>, y: i32 },
|
|
| ~~~~~~~~~~~~~~~~
|
|
|
|
error: large size difference between variants
|
|
--> $DIR/large_enum_variant.rs:52:5
|
|
|
|
|
LL | StructLikeLarge2 { x: [i32; 8000] },
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this variant is 32000 bytes
|
|
|
|
|
note: and the second-largest variant is 8 bytes:
|
|
--> $DIR/large_enum_variant.rs:51:5
|
|
|
|
|
LL | VariantOk(i32, u32),
|
|
| ^^^^^^^^^^^^^^^^^^^
|
|
help: consider boxing the large fields to reduce the total size of the enum
|
|
|
|
|
LL | StructLikeLarge2 { x: Box<[i32; 8000]> },
|
|
| ~~~~~~~~~~~~~~~~
|
|
|
|
error: large size difference between variants
|
|
--> $DIR/large_enum_variant.rs:68:5
|
|
|
|
|
LL | B([u8; 1255]),
|
|
| ^^^^^^^^^^^^^ this variant is 1255 bytes
|
|
|
|
|
note: and the second-largest variant is 200 bytes:
|
|
--> $DIR/large_enum_variant.rs:69:5
|
|
|
|
|
LL | C([u8; 200]),
|
|
| ^^^^^^^^^^^^
|
|
help: consider boxing the large fields to reduce the total size of the enum
|
|
|
|
|
LL | B(Box<[u8; 1255]>),
|
|
| ~~~~~~~~~~~~~~~
|
|
|
|
error: large size difference between variants
|
|
--> $DIR/large_enum_variant.rs:74:5
|
|
|
|
|
LL | ContainingMoreThanOneField([i32; 8000], [i32; 2], [i32; 9500], [i32; 30]),
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this variant is 70128 bytes
|
|
|
|
|
note: and the second-largest variant is 8 bytes:
|
|
--> $DIR/large_enum_variant.rs:73:5
|
|
|
|
|
LL | VariantOk(i32, u32),
|
|
| ^^^^^^^^^^^^^^^^^^^
|
|
help: consider boxing the large fields to reduce the total size of the enum
|
|
|
|
|
LL | ContainingMoreThanOneField(Box<[i32; 8000]>, [i32; 2], Box<[i32; 9500]>, [i32; 30]),
|
|
| ~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~
|
|
|
|
error: large size difference between variants
|
|
--> $DIR/large_enum_variant.rs:79:5
|
|
|
|
|
LL | B(Struct2),
|
|
| ^^^^^^^^^^ this variant is 32000 bytes
|
|
|
|
|
note: and the second-largest variant is 4 bytes:
|
|
--> $DIR/large_enum_variant.rs:78:5
|
|
|
|
|
LL | A(Struct<()>),
|
|
| ^^^^^^^^^^^^^
|
|
help: consider boxing the large fields to reduce the total size of the enum
|
|
|
|
|
LL | B(Box<Struct2>),
|
|
| ~~~~~~~~~~~~
|
|
|
|
error: large size difference between variants
|
|
--> $DIR/large_enum_variant.rs:104:5
|
|
|
|
|
LL | B([u128; 4000]),
|
|
| ^^^^^^^^^^^^^^^ this variant is 64000 bytes
|
|
|
|
|
note: and the second-largest variant is 1 bytes:
|
|
--> $DIR/large_enum_variant.rs:103:5
|
|
|
|
|
LL | A(bool),
|
|
| ^^^^^^^
|
|
note: boxing a variant would require the type no longer be `Copy`
|
|
--> $DIR/large_enum_variant.rs:102:6
|
|
|
|
|
LL | enum CopyableLargeEnum {
|
|
| ^^^^^^^^^^^^^^^^^
|
|
help: consider boxing the large fields to reduce the total size of the enum
|
|
--> $DIR/large_enum_variant.rs:104:5
|
|
|
|
|
LL | B([u128; 4000]),
|
|
| ^^^^^^^^^^^^^^^
|
|
|
|
error: large size difference between variants
|
|
--> $DIR/large_enum_variant.rs:109:5
|
|
|
|
|
LL | B([u128; 4000]),
|
|
| ^^^^^^^^^^^^^^^ this variant is 64000 bytes
|
|
|
|
|
note: and the second-largest variant is 1 bytes:
|
|
--> $DIR/large_enum_variant.rs:108:5
|
|
|
|
|
LL | A(bool),
|
|
| ^^^^^^^
|
|
note: boxing a variant would require the type no longer be `Copy`
|
|
--> $DIR/large_enum_variant.rs:107:6
|
|
|
|
|
LL | enum ManuallyCopyLargeEnum {
|
|
| ^^^^^^^^^^^^^^^^^^^^^
|
|
help: consider boxing the large fields to reduce the total size of the enum
|
|
--> $DIR/large_enum_variant.rs:109:5
|
|
|
|
|
LL | B([u128; 4000]),
|
|
| ^^^^^^^^^^^^^^^
|
|
|
|
error: large size difference between variants
|
|
--> $DIR/large_enum_variant.rs:122:5
|
|
|
|
|
LL | B([u64; 4000]),
|
|
| ^^^^^^^^^^^^^^ this variant is 32000 bytes
|
|
|
|
|
note: and the second-largest variant is 1 bytes:
|
|
--> $DIR/large_enum_variant.rs:121:5
|
|
|
|
|
LL | A(bool, std::marker::PhantomData<T>),
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
note: boxing a variant would require the type no longer be `Copy`
|
|
--> $DIR/large_enum_variant.rs:120:6
|
|
|
|
|
LL | enum SomeGenericPossiblyCopyEnum<T> {
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
help: consider boxing the large fields to reduce the total size of the enum
|
|
--> $DIR/large_enum_variant.rs:122:5
|
|
|
|
|
LL | B([u64; 4000]),
|
|
| ^^^^^^^^^^^^^^
|
|
|
|
error: aborting due to 11 previous errors
|
|
|