| error: unrecognized representation hint |
| --> tests/ui-nightly/enum.rs:19:8 |
| | |
| 19 | #[repr("foo")] |
| | ^^^^^ |
| |
| error: unrecognized representation hint |
| --> tests/ui-nightly/enum.rs:25:8 |
| | |
| 25 | #[repr(foo)] |
| | ^^^ |
| |
| error: unsupported representation for deriving zerocopy trait(s) on an enum |
| --> tests/ui-nightly/enum.rs:31:8 |
| | |
| 31 | #[repr(transparent)] |
| | ^^^^^^^^^^^ |
| |
| error: conflicting representation hints |
| --> tests/ui-nightly/enum.rs:37:8 |
| | |
| 37 | #[repr(u8, u16)] |
| | ^^^^^^^ |
| |
| error: must have a non-align #[repr(...)] attribute in order to guarantee this type's memory layout |
| --> tests/ui-nightly/enum.rs:42:10 |
| | |
| 42 | #[derive(FromBytes)] |
| | ^^^^^^^^^ |
| | |
| = note: this error originates in the derive macro `FromBytes` (in Nightly builds, run with -Z macro-backtrace for more info) |
| |
| error: must have a non-align #[repr(...)] attribute in order to guarantee this type's memory layout |
| --> tests/ui-nightly/enum.rs:69:10 |
| | |
| 69 | #[derive(TryFromBytes)] |
| | ^^^^^^^^^^^^ |
| | |
| = note: this error originates in the derive macro `TryFromBytes` (in Nightly builds, run with -Z macro-backtrace for more info) |
| |
| error: must have a non-align #[repr(...)] attribute in order to guarantee this type's memory layout |
| --> tests/ui-nightly/enum.rs:74:10 |
| | |
| 74 | #[derive(TryFromBytes)] |
| | ^^^^^^^^^^^^ |
| | |
| = note: this error originates in the derive macro `TryFromBytes` (in Nightly builds, run with -Z macro-backtrace for more info) |
| |
| error: must have a non-align #[repr(...)] attribute in order to guarantee this type's memory layout |
| --> tests/ui-nightly/enum.rs:92:10 |
| | |
| 92 | #[derive(FromZeros)] |
| | ^^^^^^^^^ |
| | |
| = note: this error originates in the derive macro `FromZeros` (in Nightly builds, run with -Z macro-backtrace for more info) |
| |
| error: must have a non-align #[repr(...)] attribute in order to guarantee this type's memory layout |
| --> tests/ui-nightly/enum.rs:97:10 |
| | |
| 97 | #[derive(FromZeros)] |
| | ^^^^^^^^^ |
| | |
| = note: this error originates in the derive macro `FromZeros` (in Nightly builds, run with -Z macro-backtrace for more info) |
| |
| error: must have a non-align #[repr(...)] attribute in order to guarantee this type's memory layout |
| --> tests/ui-nightly/enum.rs:103:10 |
| | |
| 103 | #[derive(FromZeros)] |
| | ^^^^^^^^^ |
| | |
| = note: this error originates in the derive macro `FromZeros` (in Nightly builds, run with -Z macro-backtrace for more info) |
| |
| error: FromZeros only supported on enums with a variant that has a discriminant of `0` |
| --> tests/ui-nightly/enum.rs:110:1 |
| | |
| 110 | / #[repr(u8)] |
| 111 | | enum FromZeros4 { |
| 112 | | A = 1, |
| 113 | | B = 2, |
| 114 | | } |
| | |_^ |
| |
| error: FromZeros only supported on enums with a variant that has a discriminant of `0` |
| help: This enum has discriminants which are not literal integers. One of those may define or imply which variant has a discriminant of zero. Use a literal integer to define or imply the variant with a discriminant of zero. |
| --> tests/ui-nightly/enum.rs:119:1 |
| | |
| 119 | / #[repr(i8)] |
| 120 | | enum FromZeros5 { |
| 121 | | A = NEGATIVE_ONE, |
| 122 | | B, |
| 123 | | } |
| | |_^ |
| |
| error: FromZeros only supported on enums with a variant that has a discriminant of `0` |
| --> tests/ui-nightly/enum.rs:134:1 |
| | |
| 134 | / #[repr(u8)] |
| 135 | | enum FromZeros7 { |
| 136 | | A = 1, |
| 137 | | B(NotFromZeros), |
| 138 | | } |
| | |_^ |
| |
| error: FromBytes requires repr of "u8", "u16", "i8", or "i16" |
| --> tests/ui-nightly/enum.rs:145:8 |
| | |
| 145 | #[repr(C)] |
| | ^ |
| |
| error: FromBytes requires repr of "u8", "u16", "i8", or "i16" |
| --> tests/ui-nightly/enum.rs:151:8 |
| | |
| 151 | #[repr(usize)] |
| | ^^^^^ |
| |
| error: FromBytes requires repr of "u8", "u16", "i8", or "i16" |
| --> tests/ui-nightly/enum.rs:157:8 |
| | |
| 157 | #[repr(isize)] |
| | ^^^^^ |
| |
| error: FromBytes requires repr of "u8", "u16", "i8", or "i16" |
| --> tests/ui-nightly/enum.rs:163:8 |
| | |
| 163 | #[repr(u32)] |
| | ^^^ |
| |
| error: FromBytes requires repr of "u8", "u16", "i8", or "i16" |
| --> tests/ui-nightly/enum.rs:169:8 |
| | |
| 169 | #[repr(i32)] |
| | ^^^ |
| |
| error: FromBytes requires repr of "u8", "u16", "i8", or "i16" |
| --> tests/ui-nightly/enum.rs:175:8 |
| | |
| 175 | #[repr(u64)] |
| | ^^^ |
| |
| error: FromBytes requires repr of "u8", "u16", "i8", or "i16" |
| --> tests/ui-nightly/enum.rs:181:8 |
| | |
| 181 | #[repr(i64)] |
| | ^^^ |
| |
| error: Unaligned requires repr of "u8" or "i8", and no alignment (i.e., repr(align(N > 1))) |
| --> tests/ui-nightly/enum.rs:452:8 |
| | |
| 452 | #[repr(C)] |
| | ^ |
| |
| error: Unaligned requires repr of "u8" or "i8", and no alignment (i.e., repr(align(N > 1))) |
| --> tests/ui-nightly/enum.rs:458:8 |
| | |
| 458 | #[repr(u16)] |
| | ^^^ |
| |
| error: Unaligned requires repr of "u8" or "i8", and no alignment (i.e., repr(align(N > 1))) |
| --> tests/ui-nightly/enum.rs:464:8 |
| | |
| 464 | #[repr(i16)] |
| | ^^^ |
| |
| error: Unaligned requires repr of "u8" or "i8", and no alignment (i.e., repr(align(N > 1))) |
| --> tests/ui-nightly/enum.rs:470:8 |
| | |
| 470 | #[repr(u32)] |
| | ^^^ |
| |
| error: Unaligned requires repr of "u8" or "i8", and no alignment (i.e., repr(align(N > 1))) |
| --> tests/ui-nightly/enum.rs:476:8 |
| | |
| 476 | #[repr(i32)] |
| | ^^^ |
| |
| error: Unaligned requires repr of "u8" or "i8", and no alignment (i.e., repr(align(N > 1))) |
| --> tests/ui-nightly/enum.rs:482:8 |
| | |
| 482 | #[repr(u64)] |
| | ^^^ |
| |
| error: Unaligned requires repr of "u8" or "i8", and no alignment (i.e., repr(align(N > 1))) |
| --> tests/ui-nightly/enum.rs:488:8 |
| | |
| 488 | #[repr(i64)] |
| | ^^^ |
| |
| error: Unaligned requires repr of "u8" or "i8", and no alignment (i.e., repr(align(N > 1))) |
| --> tests/ui-nightly/enum.rs:494:8 |
| | |
| 494 | #[repr(usize)] |
| | ^^^^^ |
| |
| error: Unaligned requires repr of "u8" or "i8", and no alignment (i.e., repr(align(N > 1))) |
| --> tests/ui-nightly/enum.rs:500:8 |
| | |
| 500 | #[repr(isize)] |
| | ^^^^^ |
| |
| error: cannot derive Unaligned with repr(align(N > 1)) |
| --> tests/ui-nightly/enum.rs:506:12 |
| | |
| 506 | #[repr(u8, align(2))] |
| | ^^^^^^^^ |
| |
| error: cannot derive Unaligned with repr(align(N > 1)) |
| --> tests/ui-nightly/enum.rs:512:12 |
| | |
| 512 | #[repr(i8, align(2))] |
| | ^^^^^^^^ |
| |
| error: cannot derive Unaligned with repr(align(N > 1)) |
| --> tests/ui-nightly/enum.rs:518:18 |
| | |
| 518 | #[repr(align(1), align(2))] |
| | ^^^^^^^^ |
| |
| error: cannot derive Unaligned with repr(align(N > 1)) |
| --> tests/ui-nightly/enum.rs:524:8 |
| | |
| 524 | #[repr(align(2), align(4))] |
| | ^^^^^^^^ |
| |
| error[E0565]: meta item in `repr` must be an identifier |
| --> tests/ui-nightly/enum.rs:19:8 |
| | |
| 19 | #[repr("foo")] |
| | ^^^^^ |
| |
| error[E0552]: unrecognized representation hint |
| --> tests/ui-nightly/enum.rs:25:8 |
| | |
| 25 | #[repr(foo)] |
| | ^^^ |
| | |
| = help: valid reprs are `Rust` (default), `C`, `align`, `packed`, `transparent`, `simd`, `i8`, `u8`, `i16`, `u16`, `i32`, `u32`, `i64`, `u64`, `i128`, `u128`, `isize`, `usize` |
| |
| error[E0566]: conflicting representation hints |
| --> tests/ui-nightly/enum.rs:37:8 |
| | |
| 37 | #[repr(u8, u16)] |
| | ^^ ^^^ |
| | |
| = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! |
| = note: for more information, see issue #68585 <https://github.com/rust-lang/rust/issues/68585> |
| = note: `#[deny(conflicting_repr_hints)]` on by default |
| |
| error[E0277]: the trait bound `UnsafeCell<()>: Immutable` is not satisfied |
| --> tests/ui-nightly/enum.rs:51:10 |
| | |
| 51 | #[derive(Immutable)] |
| | ^^^^^^^^^ the trait `Immutable` is not implemented for `UnsafeCell<()>` |
| | |
| = help: the following other types implement trait `Immutable`: |
| &T |
| &mut T |
| () |
| *const T |
| *mut T |
| F32<O> |
| F64<O> |
| I128<O> |
| and $N others |
| = help: see issue #48214 |
| = note: this error originates in the derive macro `Immutable` (in Nightly builds, run with -Z macro-backtrace for more info) |
| help: add `#![feature(trivial_bounds)]` to the crate attributes to enable |
| | |
| 9 + #![feature(trivial_bounds)] |
| | |
| |
| error[E0277]: the trait bound `UnsafeCell<u8>: Immutable` is not satisfied |
| --> tests/ui-nightly/enum.rs:59:10 |
| | |
| 59 | #[derive(Immutable)] |
| | ^^^^^^^^^ the trait `Immutable` is not implemented for `UnsafeCell<u8>` |
| | |
| = help: the following other types implement trait `Immutable`: |
| &T |
| &mut T |
| () |
| *const T |
| *mut T |
| F32<O> |
| F64<O> |
| I128<O> |
| and $N others |
| = help: see issue #48214 |
| = note: this error originates in the derive macro `Immutable` (in Nightly builds, run with -Z macro-backtrace for more info) |
| help: add `#![feature(trivial_bounds)]` to the crate attributes to enable |
| | |
| 9 + #![feature(trivial_bounds)] |
| | |
| |
| error[E0277]: the trait bound `NotTryFromBytes: TryFromBytes` is not satisfied |
| --> tests/ui-nightly/enum.rs:82:10 |
| | |
| 82 | #[derive(TryFromBytes)] |
| | ^^^^^^^^^^^^ the trait `TryFromBytes` is not implemented for `NotTryFromBytes` |
| | |
| = help: the following other types implement trait `TryFromBytes`: |
| () |
| *const T |
| *mut T |
| <FromZeros6 as TryFromBytes>::is_bit_valid::___ZerocopyVariantStruct_A |
| <TryFromBytes3 as TryFromBytes>::is_bit_valid::___ZerocopyVariantStruct_A |
| AtomicBool |
| AtomicI16 |
| AtomicI32 |
| and $N others |
| = help: see issue #48214 |
| = note: this error originates in the derive macro `TryFromBytes` (in Nightly builds, run with -Z macro-backtrace for more info) |
| help: add `#![feature(trivial_bounds)]` to the crate attributes to enable |
| | |
| 9 + #![feature(trivial_bounds)] |
| | |
| |
| error[E0277]: the trait bound `NotFromZeros: TryFromBytes` is not satisfied |
| --> tests/ui-nightly/enum.rs:127:10 |
| | |
| 127 | #[derive(FromZeros)] |
| | ^^^^^^^^^ the trait `TryFromBytes` is not implemented for `NotFromZeros` |
| | |
| = help: the following other types implement trait `TryFromBytes`: |
| () |
| *const T |
| *mut T |
| <FromZeros6 as TryFromBytes>::is_bit_valid::___ZerocopyVariantStruct_A |
| <TryFromBytes3 as TryFromBytes>::is_bit_valid::___ZerocopyVariantStruct_A |
| AtomicBool |
| AtomicI16 |
| AtomicI32 |
| and $N others |
| = help: see issue #48214 |
| = note: this error originates in the derive macro `FromZeros` (in Nightly builds, run with -Z macro-backtrace for more info) |
| help: add `#![feature(trivial_bounds)]` to the crate attributes to enable |
| | |
| 9 + #![feature(trivial_bounds)] |
| | |
| |
| error[E0277]: the trait bound `NotFromZeros: FromZeros` is not satisfied |
| --> tests/ui-nightly/enum.rs:127:10 |
| | |
| 127 | #[derive(FromZeros)] |
| | ^^^^^^^^^ the trait `FromZeros` is not implemented for `NotFromZeros` |
| | |
| = help: the following other types implement trait `FromZeros`: |
| () |
| *const T |
| *mut T |
| AtomicBool |
| AtomicI16 |
| AtomicI32 |
| AtomicI64 |
| AtomicI8 |
| and $N others |
| = help: see issue #48214 |
| = note: this error originates in the derive macro `FromZeros` (in Nightly builds, run with -Z macro-backtrace for more info) |
| help: add `#![feature(trivial_bounds)]` to the crate attributes to enable |
| | |
| 9 + #![feature(trivial_bounds)] |
| | |
| |
| error[E0277]: the trait bound `NotFromZeros: TryFromBytes` is not satisfied |
| --> tests/ui-nightly/enum.rs:133:10 |
| | |
| 133 | #[derive(FromZeros)] |
| | ^^^^^^^^^ the trait `TryFromBytes` is not implemented for `NotFromZeros` |
| | |
| = help: the following other types implement trait `TryFromBytes`: |
| () |
| *const T |
| *mut T |
| <FromZeros6 as TryFromBytes>::is_bit_valid::___ZerocopyVariantStruct_A |
| <TryFromBytes3 as TryFromBytes>::is_bit_valid::___ZerocopyVariantStruct_A |
| AtomicBool |
| AtomicI16 |
| AtomicI32 |
| and $N others |
| = help: see issue #48214 |
| = note: this error originates in the derive macro `FromZeros` (in Nightly builds, run with -Z macro-backtrace for more info) |
| help: add `#![feature(trivial_bounds)]` to the crate attributes to enable |
| | |
| 9 + #![feature(trivial_bounds)] |
| | |
| |
| error[E0277]: the trait bound `bool: FromBytes` is not satisfied |
| --> tests/ui-nightly/enum.rs:186:10 |
| | |
| 186 | #[derive(FromBytes)] |
| | ^^^^^^^^^ the trait `FromBytes` is not implemented for `bool` |
| | |
| = help: the following other types implement trait `FromBytes`: |
| () |
| AtomicI16 |
| AtomicI32 |
| AtomicI64 |
| AtomicI8 |
| AtomicIsize |
| AtomicU16 |
| AtomicU32 |
| and $N others |
| = help: see issue #48214 |
| = note: this error originates in the derive macro `FromBytes` (in Nightly builds, run with -Z macro-backtrace for more info) |
| help: add `#![feature(trivial_bounds)]` to the crate attributes to enable |
| | |
| 9 + #![feature(trivial_bounds)] |
| | |
| |
| error[E0277]: the trait bound `HasPadding<IntoBytes1, true>: ShouldBe<false>` is not satisfied |
| --> tests/ui-nightly/enum.rs:533:10 |
| | |
| 533 | #[derive(IntoBytes)] |
| | ^^^^^^^^^ the trait `ShouldBe<false>` is not implemented for `HasPadding<IntoBytes1, true>` |
| | |
| = help: the trait `ShouldBe<true>` is implemented for `HasPadding<IntoBytes1, true>` |
| = help: see issue #48214 |
| = note: this error originates in the derive macro `IntoBytes` (in Nightly builds, run with -Z macro-backtrace for more info) |
| help: add `#![feature(trivial_bounds)]` to the crate attributes to enable |
| | |
| 9 + #![feature(trivial_bounds)] |
| | |
| |
| error[E0277]: the trait bound `HasPadding<IntoBytes2, true>: ShouldBe<false>` is not satisfied |
| --> tests/ui-nightly/enum.rs:544:10 |
| | |
| 544 | #[derive(IntoBytes)] |
| | ^^^^^^^^^ the trait `ShouldBe<false>` is not implemented for `HasPadding<IntoBytes2, true>` |
| | |
| = help: the trait `ShouldBe<true>` is implemented for `HasPadding<IntoBytes2, true>` |
| = help: see issue #48214 |
| = note: this error originates in the derive macro `IntoBytes` (in Nightly builds, run with -Z macro-backtrace for more info) |
| help: add `#![feature(trivial_bounds)]` to the crate attributes to enable |
| | |
| 9 + #![feature(trivial_bounds)] |
| | |
| |
| error[E0277]: the trait bound `HasPadding<IntoBytes3, true>: ShouldBe<false>` is not satisfied |
| --> tests/ui-nightly/enum.rs:550:10 |
| | |
| 550 | #[derive(IntoBytes)] |
| | ^^^^^^^^^ the trait `ShouldBe<false>` is not implemented for `HasPadding<IntoBytes3, true>` |
| | |
| = help: the trait `ShouldBe<true>` is implemented for `HasPadding<IntoBytes3, true>` |
| = help: see issue #48214 |
| = note: this error originates in the derive macro `IntoBytes` (in Nightly builds, run with -Z macro-backtrace for more info) |
| help: add `#![feature(trivial_bounds)]` to the crate attributes to enable |
| | |
| 9 + #![feature(trivial_bounds)] |
| | |