error: layout_of(Result<[u32; 0], bool>) = Layout {
           size: Size(4 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(
                       I8,
                       false,
                   ),
                   valid_range: 0..=1,
               },
           ),
           uninhabited: false,
           variants: Multiple {
               tag: Initialized {
                   value: Int(
                       I8,
                       false,
                   ),
                   valid_range: 0..=1,
               },
               tag_encoding: Direct,
               tag_field: 0,
               variants: [
                   Layout {
                       size: Size(4 bytes),
                       align: AbiAlign {
                           abi: Align(4 bytes),
                       },
                       backend_repr: Memory {
                           sized: true,
                       },
                       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(2 bytes),
                       align: AbiAlign {
                           abi: Align(1 bytes),
                       },
                       backend_repr: Memory {
                           sized: true,
                       },
                       fields: Arbitrary {
                           offsets: [
                               Size(1 bytes),
                           ],
                           in_memory_order: [
                               0,
                           ],
                       },
                       largest_niche: Some(
                           Niche {
                               offset: Size(1 bytes),
                               value: Int(
                                   I8,
                                   false,
                               ),
                               valid_range: 0..=1,
                           },
                       ),
                       uninhabited: false,
                       variants: Single {
                           index: 1,
                       },
                       max_repr_align: None,
                       unadjusted_abi_align: Align(1 bytes),
                       randomization_seed: $SEED,
                   },
               ],
           },
           max_repr_align: None,
           unadjusted_abi_align: Align(4 bytes),
           randomization_seed: $SEED,
       }
  --> $DIR/zero-sized-array-enum-niche.rs:14:1
   |
LL | type AlignedResult = Result<[u32; 0], bool>;
   | ^^^^^^^^^^^^^^^^^^

error: layout_of(MultipleAlignments) = Layout {
           size: Size(4 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(
                       I8,
                       false,
                   ),
                   valid_range: 0..=2,
               },
           ),
           uninhabited: false,
           variants: Multiple {
               tag: Initialized {
                   value: Int(
                       I8,
                       false,
                   ),
                   valid_range: 0..=2,
               },
               tag_encoding: Direct,
               tag_field: 0,
               variants: [
                   Layout {
                       size: Size(2 bytes),
                       align: AbiAlign {
                           abi: Align(2 bytes),
                       },
                       backend_repr: Memory {
                           sized: true,
                       },
                       fields: Arbitrary {
                           offsets: [
                               Size(2 bytes),
                           ],
                           in_memory_order: [
                               0,
                           ],
                       },
                       largest_niche: None,
                       uninhabited: false,
                       variants: Single {
                           index: 0,
                       },
                       max_repr_align: None,
                       unadjusted_abi_align: Align(2 bytes),
                       randomization_seed: $SEED,
                   },
                   Layout {
                       size: Size(4 bytes),
                       align: AbiAlign {
                           abi: Align(4 bytes),
                       },
                       backend_repr: Memory {
                           sized: true,
                       },
                       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,
                   },
                   Layout {
                       size: Size(2 bytes),
                       align: AbiAlign {
                           abi: Align(1 bytes),
                       },
                       backend_repr: Memory {
                           sized: true,
                       },
                       fields: Arbitrary {
                           offsets: [
                               Size(1 bytes),
                           ],
                           in_memory_order: [
                               0,
                           ],
                       },
                       largest_niche: Some(
                           Niche {
                               offset: Size(1 bytes),
                               value: Int(
                                   I8,
                                   false,
                               ),
                               valid_range: 0..=1,
                           },
                       ),
                       uninhabited: false,
                       variants: Single {
                           index: 2,
                       },
                       max_repr_align: None,
                       unadjusted_abi_align: Align(1 bytes),
                       randomization_seed: $SEED,
                   },
               ],
           },
           max_repr_align: None,
           unadjusted_abi_align: Align(4 bytes),
           randomization_seed: $SEED,
       }
  --> $DIR/zero-sized-array-enum-niche.rs:22:1
   |
LL | enum MultipleAlignments {
   | ^^^^^^^^^^^^^^^^^^^^^^^

error: layout_of(Result<[u32; 0], Packed<NonZero<u16>>>) = Layout {
           size: Size(4 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(
                       I8,
                       false,
                   ),
                   valid_range: 0..=1,
               },
           ),
           uninhabited: false,
           variants: Multiple {
               tag: Initialized {
                   value: Int(
                       I8,
                       false,
                   ),
                   valid_range: 0..=1,
               },
               tag_encoding: Direct,
               tag_field: 0,
               variants: [
                   Layout {
                       size: Size(4 bytes),
                       align: AbiAlign {
                           abi: Align(4 bytes),
                       },
                       backend_repr: Memory {
                           sized: true,
                       },
                       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(3 bytes),
                       align: AbiAlign {
                           abi: Align(1 bytes),
                       },
                       backend_repr: Memory {
                           sized: true,
                       },
                       fields: Arbitrary {
                           offsets: [
                               Size(1 bytes),
                           ],
                           in_memory_order: [
                               0,
                           ],
                       },
                       largest_niche: Some(
                           Niche {
                               offset: Size(1 bytes),
                               value: Int(
                                   I16,
                                   false,
                               ),
                               valid_range: 1..=65535,
                           },
                       ),
                       uninhabited: false,
                       variants: Single {
                           index: 1,
                       },
                       max_repr_align: None,
                       unadjusted_abi_align: Align(1 bytes),
                       randomization_seed: $SEED,
                   },
               ],
           },
           max_repr_align: None,
           unadjusted_abi_align: Align(4 bytes),
           randomization_seed: $SEED,
       }
  --> $DIR/zero-sized-array-enum-niche.rs:38:1
   |
LL | type NicheLosesToTagged = Result<[u32; 0], Packed<std::num::NonZero<u16>>>;
   | ^^^^^^^^^^^^^^^^^^^^^^^

error: layout_of(Result<[u32; 0], Packed<U16IsZero>>) = Layout {
           size: Size(4 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(
                       I16,
                       false,
                   ),
                   valid_range: (..=0) | (65535..),
               },
           ),
           uninhabited: false,
           variants: Multiple {
               tag: Initialized {
                   value: Int(
                       I16,
                       false,
                   ),
                   valid_range: (..=0) | (65535..),
               },
               tag_encoding: Niche {
                   untagged_variant: 1,
                   niche_variants: 0..=0,
                   niche_start: 65535,
               },
               tag_field: 0,
               variants: [
                   Layout {
                       size: Size(0 bytes),
                       align: AbiAlign {
                           abi: Align(4 bytes),
                       },
                       backend_repr: Memory {
                           sized: true,
                       },
                       fields: Arbitrary {
                           offsets: [
                               Size(0 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(2 bytes),
                       align: AbiAlign {
                           abi: Align(1 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(
                                   I16,
                                   false,
                               ),
                               valid_range: 0..=0,
                           },
                       ),
                       uninhabited: false,
                       variants: Single {
                           index: 1,
                       },
                       max_repr_align: None,
                       unadjusted_abi_align: Align(1 bytes),
                       randomization_seed: $SEED,
                   },
               ],
           },
           max_repr_align: None,
           unadjusted_abi_align: Align(4 bytes),
           randomization_seed: $SEED,
       }
  --> $DIR/zero-sized-array-enum-niche.rs:45:1
   |
LL | type NicheWinsOverTagged = Result<[u32; 0], Packed<U16IsZero>>;
   | ^^^^^^^^^^^^^^^^^^^^^^^^

error: aborting due to 4 previous errors

