11error: layout_of(E) = Layout {
2+ size: Size(12 bytes),
3+ align: AbiAndPrefAlign {
4+ abi: Align(4 bytes),
5+ pref: $PREF_ALIGN,
6+ },
7+ abi: Aggregate {
8+ sized: true,
9+ },
210 fields: Arbitrary {
311 offsets: [
412 Size(0 bytes),
@@ -7,6 +15,16 @@ error: layout_of(E) = Layout {
715 0,
816 ],
917 },
18+ largest_niche: Some(
19+ Niche {
20+ offset: Size(0 bytes),
21+ value: Int(
22+ I32,
23+ false,
24+ ),
25+ valid_range: 0..=0,
26+ },
27+ ),
1028 variants: Multiple {
1129 tag: Initialized {
1230 value: Int(
@@ -19,24 +37,30 @@ error: layout_of(E) = Layout {
1937 tag_field: 0,
2038 variants: [
2139 Layout {
40+ size: Size(4 bytes),
41+ align: AbiAndPrefAlign {
42+ abi: Align(1 bytes),
43+ pref: $PREF_ALIGN,
44+ },
45+ abi: Aggregate {
46+ sized: true,
47+ },
2248 fields: Arbitrary {
2349 offsets: [],
2450 memory_index: [],
2551 },
52+ largest_niche: None,
2653 variants: Single {
2754 index: 0,
2855 },
29- abi: Aggregate {
30- sized: true,
31- },
32- largest_niche: None,
56+ },
57+ Layout {
58+ size: Size(12 bytes),
3359 align: AbiAndPrefAlign {
34- abi: Align(1 bytes),
60+ abi: Align(4 bytes),
3561 pref: $PREF_ALIGN,
3662 },
37- size: Size(4 bytes),
38- },
39- Layout {
63+ abi: Uninhabited,
4064 fields: Arbitrary {
4165 offsets: [
4266 Size(4 bytes),
@@ -49,58 +73,24 @@ error: layout_of(E) = Layout {
4973 2,
5074 ],
5175 },
76+ largest_niche: None,
5277 variants: Single {
5378 index: 1,
5479 },
55- abi: Uninhabited,
56- largest_niche: None,
57- align: AbiAndPrefAlign {
58- abi: Align(4 bytes),
59- pref: $PREF_ALIGN,
60- },
61- size: Size(12 bytes),
6280 },
6381 ],
6482 },
65- abi: Aggregate {
66- sized: true,
67- },
68- largest_niche: Some(
69- Niche {
70- offset: Size(0 bytes),
71- value: Int(
72- I32,
73- false,
74- ),
75- valid_range: 0..=0,
76- },
77- ),
78- align: AbiAndPrefAlign {
79- abi: Align(4 bytes),
80- pref: $PREF_ALIGN,
81- },
82- size: Size(12 bytes),
8383 }
8484 --> $DIR/debug.rs:6:1
8585 |
8686LL | enum E { Foo, Bar(!, i32, i32) }
8787 | ^^^^^^
8888
8989error: layout_of(S) = Layout {
90- fields: Arbitrary {
91- offsets: [
92- Size(0 bytes),
93- Size(0 bytes),
94- Size(4 bytes),
95- ],
96- memory_index: [
97- 1,
98- 0,
99- 2,
100- ],
101- },
102- variants: Single {
103- index: 0,
90+ size: Size(8 bytes),
91+ align: AbiAndPrefAlign {
92+ abi: Align(4 bytes),
93+ pref: $PREF_ALIGN,
10494 },
10595 abi: ScalarPair(
10696 Initialized {
@@ -118,41 +108,72 @@ error: layout_of(S) = Layout {
118108 valid_range: 0..=4294967295,
119109 },
120110 ),
111+ fields: Arbitrary {
112+ offsets: [
113+ Size(0 bytes),
114+ Size(0 bytes),
115+ Size(4 bytes),
116+ ],
117+ memory_index: [
118+ 1,
119+ 0,
120+ 2,
121+ ],
122+ },
121123 largest_niche: None,
122- align: AbiAndPrefAlign {
123- abi: Align(4 bytes),
124- pref: $PREF_ALIGN,
124+ variants: Single {
125+ index: 0,
125126 },
126- size: Size(8 bytes),
127127 }
128128 --> $DIR/debug.rs:9:1
129129 |
130130LL | struct S { f1: i32, f2: (), f3: i32 }
131131 | ^^^^^^^^
132132
133133error: layout_of(U) = Layout {
134- fields: Union(
135- 2,
136- ),
137- variants: Single {
138- index: 0,
134+ size: Size(8 bytes),
135+ align: AbiAndPrefAlign {
136+ abi: Align(4 bytes),
137+ pref: $PREF_ALIGN,
139138 },
140139 abi: Aggregate {
141140 sized: true,
142141 },
142+ fields: Union(
143+ 2,
144+ ),
143145 largest_niche: None,
144- align: AbiAndPrefAlign {
145- abi: Align(4 bytes),
146- pref: $PREF_ALIGN,
146+ variants: Single {
147+ index: 0,
147148 },
148- size: Size(8 bytes),
149149 }
150150 --> $DIR/debug.rs:12:1
151151 |
152152LL | union U { f1: (i32, i32), f3: i32 }
153153 | ^^^^^^^
154154
155155error: layout_of(std::result::Result<i32, i32>) = Layout {
156+ size: Size(8 bytes),
157+ align: AbiAndPrefAlign {
158+ abi: Align(4 bytes),
159+ pref: $PREF_ALIGN,
160+ },
161+ abi: ScalarPair(
162+ Initialized {
163+ value: Int(
164+ I32,
165+ false,
166+ ),
167+ valid_range: 0..=1,
168+ },
169+ Initialized {
170+ value: Int(
171+ I32,
172+ true,
173+ ),
174+ valid_range: 0..=4294967295,
175+ },
176+ ),
156177 fields: Arbitrary {
157178 offsets: [
158179 Size(0 bytes),
@@ -161,6 +182,16 @@ error: layout_of(std::result::Result<i32, i32>) = Layout {
161182 0,
162183 ],
163184 },
185+ largest_niche: Some(
186+ Niche {
187+ offset: Size(0 bytes),
188+ value: Int(
189+ I32,
190+ false,
191+ ),
192+ valid_range: 0..=1,
193+ },
194+ ),
164195 variants: Multiple {
165196 tag: Initialized {
166197 value: Int(
@@ -173,16 +204,10 @@ error: layout_of(std::result::Result<i32, i32>) = Layout {
173204 tag_field: 0,
174205 variants: [
175206 Layout {
176- fields: Arbitrary {
177- offsets: [
178- Size(4 bytes),
179- ],
180- memory_index: [
181- 0,
182- ],
183- },
184- variants: Single {
185- index: 0,
207+ size: Size(8 bytes),
208+ align: AbiAndPrefAlign {
209+ abi: Align(4 bytes),
210+ pref: $PREF_ALIGN,
186211 },
187212 abi: ScalarPair(
188213 Initialized {
@@ -200,14 +225,6 @@ error: layout_of(std::result::Result<i32, i32>) = Layout {
200225 valid_range: 0..=4294967295,
201226 },
202227 ),
203- largest_niche: None,
204- align: AbiAndPrefAlign {
205- abi: Align(4 bytes),
206- pref: $PREF_ALIGN,
207- },
208- size: Size(8 bytes),
209- },
210- Layout {
211228 fields: Arbitrary {
212229 offsets: [
213230 Size(4 bytes),
@@ -216,8 +233,16 @@ error: layout_of(std::result::Result<i32, i32>) = Layout {
216233 0,
217234 ],
218235 },
236+ largest_niche: None,
219237 variants: Single {
220- index: 1,
238+ index: 0,
239+ },
240+ },
241+ Layout {
242+ size: Size(8 bytes),
243+ align: AbiAndPrefAlign {
244+ abi: Align(4 bytes),
245+ pref: $PREF_ALIGN,
221246 },
222247 abi: ScalarPair(
223248 Initialized {
@@ -235,56 +260,32 @@ error: layout_of(std::result::Result<i32, i32>) = Layout {
235260 valid_range: 0..=4294967295,
236261 },
237262 ),
263+ fields: Arbitrary {
264+ offsets: [
265+ Size(4 bytes),
266+ ],
267+ memory_index: [
268+ 0,
269+ ],
270+ },
238271 largest_niche: None,
239- align: AbiAndPrefAlign {
240- abi: Align(4 bytes),
241- pref: $PREF_ALIGN,
272+ variants: Single {
273+ index: 1,
242274 },
243- size: Size(8 bytes),
244275 },
245276 ],
246277 },
247- abi: ScalarPair(
248- Initialized {
249- value: Int(
250- I32,
251- false,
252- ),
253- valid_range: 0..=1,
254- },
255- Initialized {
256- value: Int(
257- I32,
258- true,
259- ),
260- valid_range: 0..=4294967295,
261- },
262- ),
263- largest_niche: Some(
264- Niche {
265- offset: Size(0 bytes),
266- value: Int(
267- I32,
268- false,
269- ),
270- valid_range: 0..=1,
271- },
272- ),
273- align: AbiAndPrefAlign {
274- abi: Align(4 bytes),
275- pref: $PREF_ALIGN,
276- },
277- size: Size(8 bytes),
278278 }
279279 --> $DIR/debug.rs:15:1
280280 |
281281LL | type Test = Result<i32, i32>;
282282 | ^^^^^^^^^
283283
284284error: layout_of(i32) = Layout {
285- fields: Primitive,
286- variants: Single {
287- index: 0,
285+ size: Size(4 bytes),
286+ align: AbiAndPrefAlign {
287+ abi: Align(4 bytes),
288+ pref: $PREF_ALIGN,
288289 },
289290 abi: Scalar(
290291 Initialized {
@@ -295,12 +296,11 @@ error: layout_of(i32) = Layout {
295296 valid_range: 0..=4294967295,
296297 },
297298 ),
299+ fields: Primitive,
298300 largest_niche: None,
299- align: AbiAndPrefAlign {
300- abi: Align(4 bytes),
301- pref: $PREF_ALIGN,
301+ variants: Single {
302+ index: 0,
302303 },
303- size: Size(4 bytes),
304304 }
305305 --> $DIR/debug.rs:18:1
306306 |
0 commit comments