| error: unions cannot have zero fields | |
| --> $DIR/debug.rs:84:1 | |
| | | |
| LL | union EmptyUnion {} | |
| | ^^^^^^^^^^^^^^^^^^^ | |
| error: `#[rustc_layout]` attribute cannot be used on constants | |
| --> $DIR/debug.rs:71:1 | |
| | | |
| LL | #[rustc_layout(debug)] | |
| | ^^^^^^^^^^^^^^^^^^^^^^ | |
| | | |
| = help: `#[rustc_layout]` can be applied to data types and type aliases | |
| error: `#[rustc_layout]` attribute cannot be used on associated consts | |
| --> $DIR/debug.rs:75:5 | |
| | | |
| LL | #[rustc_layout(debug)] | |
| | ^^^^^^^^^^^^^^^^^^^^^^ | |
| | | |
| = help: `#[rustc_layout]` can be applied to data types and type aliases | |
| error: layout_of(E) = Layout { | |
| size: Size(12 bytes), | |
| align: AbiAlign { | |
| abi: Align(4 bytes), | |
| }, | |
| backend_repr: Memory { | |
| sized: true, | |
| }, | |
| fields: Arbitrary { | |
| offsets: [ | |
| Size(0 bytes), | |
| ], | |
| in_memory_order: [ | |
| 0, | |
| ], | |
| }, | |
| largest_niche: Some( | |
| Niche { | |
| offset: Size(0 bytes), | |
| value: Int( | |
| I32, | |
| false, | |
| ), | |
| valid_range: 0..=0, | |
| }, | |
| ), | |
| uninhabited: false, | |
| variants: Multiple { | |
| tag: Initialized { | |
| value: Int( | |
| I32, | |
| false, | |
| ), | |
| valid_range: 0..=0, | |
| }, | |
| tag_encoding: Direct, | |
| tag_field: 0, | |
| variants: [ | |
| Layout { | |
| size: Size(4 bytes), | |
| align: AbiAlign { | |
| abi: Align(1 bytes), | |
| }, | |
| backend_repr: Memory { | |
| sized: true, | |
| }, | |
| fields: Arbitrary { | |
| offsets: [], | |
| in_memory_order: [], | |
| }, | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(1 bytes), | |
| randomization_seed: $SEED, | |
| }, | |
| Layout { | |
| size: Size(12 bytes), | |
| align: AbiAlign { | |
| abi: Align(4 bytes), | |
| }, | |
| backend_repr: Memory { | |
| sized: true, | |
| }, | |
| fields: Arbitrary { | |
| offsets: [ | |
| Size(4 bytes), | |
| Size(4 bytes), | |
| Size(8 bytes), | |
| ], | |
| in_memory_order: [ | |
| 0, | |
| 1, | |
| 2, | |
| ], | |
| }, | |
| largest_niche: None, | |
| uninhabited: true, | |
| variants: Single { | |
| index: 1, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(4 bytes), | |
| randomization_seed: $SEED, | |
| }, | |
| ], | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(4 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:8:1 | |
| | | |
| LL | enum E { Foo, Bar(!, i32, i32) } | |
| | ^^^^^^ | |
| error: layout_of(S) = Layout { | |
| size: Size(8 bytes), | |
| align: AbiAlign { | |
| abi: Align(4 bytes), | |
| }, | |
| backend_repr: ScalarPair( | |
| Initialized { | |
| value: Int( | |
| I32, | |
| true, | |
| ), | |
| valid_range: 0..=4294967295, | |
| }, | |
| Initialized { | |
| value: Int( | |
| I32, | |
| true, | |
| ), | |
| valid_range: 0..=4294967295, | |
| }, | |
| ), | |
| fields: Arbitrary { | |
| offsets: [ | |
| Size(0 bytes), | |
| Size(8 bytes), | |
| Size(4 bytes), | |
| ], | |
| in_memory_order: [ | |
| 0, | |
| 2, | |
| 1, | |
| ], | |
| }, | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(4 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:11:1 | |
| | | |
| LL | struct S { f1: i32, f2: (), f3: i32 } | |
| | ^^^^^^^^ | |
| error: layout_of(U) = Layout { | |
| size: Size(8 bytes), | |
| align: AbiAlign { | |
| abi: Align(4 bytes), | |
| }, | |
| backend_repr: Memory { | |
| sized: true, | |
| }, | |
| fields: Union( | |
| 2, | |
| ), | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(4 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:14:1 | |
| | | |
| LL | union U { f1: (i32, i32), f3: i32 } | |
| | ^^^^^^^ | |
| error: layout_of(Result<i32, i32>) = Layout { | |
| size: Size(8 bytes), | |
| align: AbiAlign { | |
| abi: Align(4 bytes), | |
| }, | |
| backend_repr: ScalarPair( | |
| Initialized { | |
| value: Int( | |
| I32, | |
| false, | |
| ), | |
| valid_range: 0..=1, | |
| }, | |
| Initialized { | |
| value: Int( | |
| I32, | |
| true, | |
| ), | |
| valid_range: 0..=4294967295, | |
| }, | |
| ), | |
| fields: Arbitrary { | |
| offsets: [ | |
| Size(0 bytes), | |
| ], | |
| in_memory_order: [ | |
| 0, | |
| ], | |
| }, | |
| largest_niche: Some( | |
| Niche { | |
| offset: Size(0 bytes), | |
| value: Int( | |
| I32, | |
| false, | |
| ), | |
| valid_range: 0..=1, | |
| }, | |
| ), | |
| uninhabited: false, | |
| variants: Multiple { | |
| tag: Initialized { | |
| value: Int( | |
| I32, | |
| false, | |
| ), | |
| valid_range: 0..=1, | |
| }, | |
| tag_encoding: Direct, | |
| tag_field: 0, | |
| variants: [ | |
| Layout { | |
| size: Size(8 bytes), | |
| align: AbiAlign { | |
| abi: Align(4 bytes), | |
| }, | |
| backend_repr: ScalarPair( | |
| Initialized { | |
| value: Int( | |
| I32, | |
| false, | |
| ), | |
| valid_range: 0..=1, | |
| }, | |
| Initialized { | |
| value: Int( | |
| I32, | |
| true, | |
| ), | |
| valid_range: 0..=4294967295, | |
| }, | |
| ), | |
| fields: Arbitrary { | |
| offsets: [ | |
| Size(4 bytes), | |
| ], | |
| in_memory_order: [ | |
| 0, | |
| ], | |
| }, | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(4 bytes), | |
| randomization_seed: $SEED, | |
| }, | |
| Layout { | |
| size: Size(8 bytes), | |
| align: AbiAlign { | |
| abi: Align(4 bytes), | |
| }, | |
| backend_repr: ScalarPair( | |
| Initialized { | |
| value: Int( | |
| I32, | |
| false, | |
| ), | |
| valid_range: 0..=1, | |
| }, | |
| Initialized { | |
| value: Int( | |
| I32, | |
| true, | |
| ), | |
| valid_range: 0..=4294967295, | |
| }, | |
| ), | |
| fields: Arbitrary { | |
| offsets: [ | |
| Size(4 bytes), | |
| ], | |
| in_memory_order: [ | |
| 0, | |
| ], | |
| }, | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 1, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(4 bytes), | |
| randomization_seed: $SEED, | |
| }, | |
| ], | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(4 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:17:1 | |
| | | |
| LL | type Test = Result<i32, i32>; | |
| | ^^^^^^^^^ | |
| error: layout_of(i32) = Layout { | |
| size: Size(4 bytes), | |
| align: AbiAlign { | |
| abi: Align(4 bytes), | |
| }, | |
| backend_repr: Scalar( | |
| Initialized { | |
| value: Int( | |
| I32, | |
| true, | |
| ), | |
| valid_range: 0..=4294967295, | |
| }, | |
| ), | |
| fields: Primitive, | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(4 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:20:1 | |
| | | |
| LL | type T = impl std::fmt::Debug; | |
| | ^^^^^^ | |
| error: layout_of(V) = Layout { | |
| size: Size(2 bytes), | |
| align: AbiAlign { | |
| abi: Align(2 bytes), | |
| }, | |
| backend_repr: Memory { | |
| sized: true, | |
| }, | |
| fields: Union( | |
| 2, | |
| ), | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(2 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:27:1 | |
| | | |
| LL | pub union V { | |
| | ^^^^^^^^^^^ | |
| error: layout_of(W) = Layout { | |
| size: Size(2 bytes), | |
| align: AbiAlign { | |
| abi: Align(2 bytes), | |
| }, | |
| backend_repr: Memory { | |
| sized: true, | |
| }, | |
| fields: Union( | |
| 2, | |
| ), | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(2 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:33:1 | |
| | | |
| LL | pub union W { | |
| | ^^^^^^^^^^^ | |
| error: layout_of(Y) = Layout { | |
| size: Size(0 bytes), | |
| align: AbiAlign { | |
| abi: Align(2 bytes), | |
| }, | |
| backend_repr: Memory { | |
| sized: true, | |
| }, | |
| fields: Union( | |
| 2, | |
| ), | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(2 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:39:1 | |
| | | |
| LL | pub union Y { | |
| | ^^^^^^^^^^^ | |
| error: layout_of(P1) = Layout { | |
| size: Size(4 bytes), | |
| align: AbiAlign { | |
| abi: Align(1 bytes), | |
| }, | |
| backend_repr: Memory { | |
| sized: true, | |
| }, | |
| fields: Union( | |
| 1, | |
| ), | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(1 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:46:1 | |
| | | |
| LL | union P1 { x: u32 } | |
| | ^^^^^^^^ | |
| error: layout_of(P2) = Layout { | |
| size: Size(8 bytes), | |
| align: AbiAlign { | |
| abi: Align(1 bytes), | |
| }, | |
| backend_repr: Memory { | |
| sized: true, | |
| }, | |
| fields: Union( | |
| 1, | |
| ), | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(1 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:50:1 | |
| | | |
| LL | union P2 { x: (u32, u32) } | |
| | ^^^^^^^^ | |
| error: layout_of(P3) = Layout { | |
| size: Size(16 bytes), | |
| align: AbiAlign { | |
| abi: Align(1 bytes), | |
| }, | |
| backend_repr: Memory { | |
| sized: true, | |
| }, | |
| fields: Union( | |
| 1, | |
| ), | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(1 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:58:1 | |
| | | |
| LL | union P3 { x: F32x4 } | |
| | ^^^^^^^^ | |
| error: layout_of(P4) = Layout { | |
| size: Size(12 bytes), | |
| align: AbiAlign { | |
| abi: Align(1 bytes), | |
| }, | |
| backend_repr: Memory { | |
| sized: true, | |
| }, | |
| fields: Union( | |
| 1, | |
| ), | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(1 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:62:1 | |
| | | |
| LL | union P4 { x: E } | |
| | ^^^^^^^^ | |
| error: layout_of(P5) = Layout { | |
| size: Size(1 bytes), | |
| align: AbiAlign { | |
| abi: Align(1 bytes), | |
| }, | |
| backend_repr: Scalar( | |
| Union { | |
| value: Int( | |
| I8, | |
| false, | |
| ), | |
| }, | |
| ), | |
| fields: Union( | |
| 2, | |
| ), | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(1 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:66:1 | |
| | | |
| LL | union P5 { zst: [u16; 0], byte: u8 } | |
| | ^^^^^^^^ | |
| error: layout_of(MaybeUninit<u8>) = Layout { | |
| size: Size(1 bytes), | |
| align: AbiAlign { | |
| abi: Align(1 bytes), | |
| }, | |
| backend_repr: Scalar( | |
| Union { | |
| value: Int( | |
| I8, | |
| false, | |
| ), | |
| }, | |
| ), | |
| fields: Union( | |
| 2, | |
| ), | |
| largest_niche: None, | |
| uninhabited: false, | |
| variants: Single { | |
| index: 0, | |
| }, | |
| max_repr_align: None, | |
| unadjusted_abi_align: Align(1 bytes), | |
| randomization_seed: $SEED, | |
| } | |
| --> $DIR/debug.rs:69:1 | |
| | | |
| LL | type X = std::mem::MaybeUninit<u8>; | |
| | ^^^^^^ | |
| error[E0277]: the size for values of type `str` cannot be known at compilation time | |
| --> $DIR/debug.rs:80:19 | |
| | | |
| LL | type Impossible = (str, str); | |
| | ^^^^^^^^^^ doesn't have a size known at compile-time | |
| | | |
| = help: the trait `Sized` is not implemented for `str` | |
| = note: only the last element of a tuple may have a dynamically sized type | |
| error: the type has an unknown layout | |
| --> $DIR/debug.rs:84:1 | |
| | | |
| LL | union EmptyUnion {} | |
| | ^^^^^^^^^^^^^^^^ | |
| error: the type `T` does not have a fixed layout | |
| --> $DIR/debug.rs:90:1 | |
| | | |
| LL | type TooGeneric<T> = T; | |
| | ^^^^^^^^^^^^^^^^^^ | |
| error: aborting due to 20 previous errors | |
| For more information about this error, try `rustc --explain E0277`. |