1 error: zero-sized fields in `repr(transparent)` cannot contain external non-exhaustive types
2 --> $DIR/repr-transparent-non-exhaustive.rs:37:22
4 LL | pub struct T5(Sized, Private);
7 = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
8 = note: for more information, see issue #78586 <https://github.com/rust-lang/rust/issues/78586>
9 = note: this struct contains `Private`, which contains private fields, and makes it not a breaking change to become non-zero-sized in the future.
10 note: the lint level is defined here
11 --> $DIR/repr-transparent-non-exhaustive.rs:1:9
13 LL | #![deny(repr_transparent_external_private_fields)]
14 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
16 error: zero-sized fields in `repr(transparent)` cannot contain external non-exhaustive types
17 --> $DIR/repr-transparent-non-exhaustive.rs:42:22
19 LL | pub struct T6(Sized, NonExhaustive);
22 = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
23 = note: for more information, see issue #78586 <https://github.com/rust-lang/rust/issues/78586>
24 = note: this struct contains `NonExhaustive`, which is marked with `#[non_exhaustive]`, and makes it not a breaking change to become non-zero-sized in the future.
26 error: zero-sized fields in `repr(transparent)` cannot contain external non-exhaustive types
27 --> $DIR/repr-transparent-non-exhaustive.rs:47:22
29 LL | pub struct T7(Sized, NonExhaustiveEnum);
32 = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
33 = note: for more information, see issue #78586 <https://github.com/rust-lang/rust/issues/78586>
34 = note: this enum contains `NonExhaustiveEnum`, which is marked with `#[non_exhaustive]`, and makes it not a breaking change to become non-zero-sized in the future.
36 error: zero-sized fields in `repr(transparent)` cannot contain external non-exhaustive types
37 --> $DIR/repr-transparent-non-exhaustive.rs:52:22
39 LL | pub struct T8(Sized, NonExhaustiveVariant);
40 | ^^^^^^^^^^^^^^^^^^^^
42 = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
43 = note: for more information, see issue #78586 <https://github.com/rust-lang/rust/issues/78586>
44 = note: this enum contains `NonExhaustiveVariant`, which is marked with `#[non_exhaustive]`, and makes it not a breaking change to become non-zero-sized in the future.
46 error: zero-sized fields in `repr(transparent)` cannot contain external non-exhaustive types
47 --> $DIR/repr-transparent-non-exhaustive.rs:57:22
49 LL | pub struct T9(Sized, InternalIndirection<Private>);
50 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
52 = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
53 = note: for more information, see issue #78586 <https://github.com/rust-lang/rust/issues/78586>
54 = note: this struct contains `Private`, which contains private fields, and makes it not a breaking change to become non-zero-sized in the future.
56 error: zero-sized fields in `repr(transparent)` cannot contain external non-exhaustive types
57 --> $DIR/repr-transparent-non-exhaustive.rs:62:23
59 LL | pub struct T10(Sized, InternalIndirection<NonExhaustive>);
60 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
62 = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
63 = note: for more information, see issue #78586 <https://github.com/rust-lang/rust/issues/78586>
64 = note: this struct contains `NonExhaustive`, which is marked with `#[non_exhaustive]`, and makes it not a breaking change to become non-zero-sized in the future.
66 error: zero-sized fields in `repr(transparent)` cannot contain external non-exhaustive types
67 --> $DIR/repr-transparent-non-exhaustive.rs:67:23
69 LL | pub struct T11(Sized, InternalIndirection<NonExhaustiveEnum>);
70 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
72 = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
73 = note: for more information, see issue #78586 <https://github.com/rust-lang/rust/issues/78586>
74 = note: this enum contains `NonExhaustiveEnum`, which is marked with `#[non_exhaustive]`, and makes it not a breaking change to become non-zero-sized in the future.
76 error: zero-sized fields in `repr(transparent)` cannot contain external non-exhaustive types
77 --> $DIR/repr-transparent-non-exhaustive.rs:72:23
79 LL | pub struct T12(Sized, InternalIndirection<NonExhaustiveVariant>);
80 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
82 = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
83 = note: for more information, see issue #78586 <https://github.com/rust-lang/rust/issues/78586>
84 = note: this enum contains `NonExhaustiveVariant`, which is marked with `#[non_exhaustive]`, and makes it not a breaking change to become non-zero-sized in the future.
86 error: zero-sized fields in `repr(transparent)` cannot contain external non-exhaustive types
87 --> $DIR/repr-transparent-non-exhaustive.rs:77:23
89 LL | pub struct T13(Sized, ExternalIndirection<Private>);
90 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
92 = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
93 = note: for more information, see issue #78586 <https://github.com/rust-lang/rust/issues/78586>
94 = note: this struct contains `Private`, which contains private fields, and makes it not a breaking change to become non-zero-sized in the future.
96 error: zero-sized fields in `repr(transparent)` cannot contain external non-exhaustive types
97 --> $DIR/repr-transparent-non-exhaustive.rs:82:23
99 LL | pub struct T14(Sized, ExternalIndirection<NonExhaustive>);
100 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
102 = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
103 = note: for more information, see issue #78586 <https://github.com/rust-lang/rust/issues/78586>
104 = note: this struct contains `NonExhaustive`, which is marked with `#[non_exhaustive]`, and makes it not a breaking change to become non-zero-sized in the future.
106 error: zero-sized fields in `repr(transparent)` cannot contain external non-exhaustive types
107 --> $DIR/repr-transparent-non-exhaustive.rs:87:23
109 LL | pub struct T15(Sized, ExternalIndirection<NonExhaustiveEnum>);
110 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
112 = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
113 = note: for more information, see issue #78586 <https://github.com/rust-lang/rust/issues/78586>
114 = note: this enum contains `NonExhaustiveEnum`, which is marked with `#[non_exhaustive]`, and makes it not a breaking change to become non-zero-sized in the future.
116 error: zero-sized fields in `repr(transparent)` cannot contain external non-exhaustive types
117 --> $DIR/repr-transparent-non-exhaustive.rs:92:23
119 LL | pub struct T16(Sized, ExternalIndirection<NonExhaustiveVariant>);
120 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
122 = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
123 = note: for more information, see issue #78586 <https://github.com/rust-lang/rust/issues/78586>
124 = note: this enum contains `NonExhaustiveVariant`, which is marked with `#[non_exhaustive]`, and makes it not a breaking change to become non-zero-sized in the future.
126 error: aborting due to 12 previous errors