|
4 | 4 | fn adt_transmutes() -> () { |
5 | 5 | let mut _0: (); // return place in scope 0 at $DIR/combine_transmutes.rs:+0:32: +0:32 |
6 | 6 | let _1: u8; // in scope 0 at $DIR/combine_transmutes.rs:+1:9: +1:11 |
7 | | - let mut _2: EnumNoRepr; // in scope 0 at $DIR/combine_transmutes.rs:+1:28: +1:41 |
8 | | - let mut _4: EnumNoRepr; // in scope 0 at $DIR/combine_transmutes.rs:+2:28: +2:41 |
9 | | - let mut _6: EnumReprIsize; // in scope 0 at $DIR/combine_transmutes.rs:+3:31: +3:47 |
10 | | - let mut _8: EnumReprIsize; // in scope 0 at $DIR/combine_transmutes.rs:+4:31: +4:47 |
11 | | - let mut _10: std::cmp::Ordering; // in scope 0 at $DIR/combine_transmutes.rs:+5:28: +5:52 |
12 | | - let mut _12: std::cmp::Ordering; // in scope 0 at $DIR/combine_transmutes.rs:+6:28: +6:52 |
13 | | - let mut _14: std::option::Option<std::num::NonZeroU8>; // in scope 0 at $DIR/combine_transmutes.rs:+7:28: +7:58 |
14 | | - let mut _16: std::num::Wrapping<i16>; // in scope 0 at $DIR/combine_transmutes.rs:+8:29: +8:54 |
15 | | - let mut _18: std::num::Wrapping<i16>; // in scope 0 at $DIR/combine_transmutes.rs:+9:29: +9:54 |
16 | | - let mut _20: Union32; // in scope 0 at $DIR/combine_transmutes.rs:+10:29: +10:47 |
17 | | - let mut _22: Union32; // in scope 0 at $DIR/combine_transmutes.rs:+11:29: +11:47 |
18 | | - let mut _24: std::mem::MaybeUninit<std::string::String>; // in scope 0 at $DIR/combine_transmutes.rs:+12:46: +12:77 |
| 7 | + let mut _2: std::option::Option<std::num::NonZeroU8>; // in scope 0 at $DIR/combine_transmutes.rs:+1:28: +1:58 |
| 8 | + let mut _4: std::num::Wrapping<i16>; // in scope 0 at $DIR/combine_transmutes.rs:+2:29: +2:54 |
| 9 | + let mut _6: std::num::Wrapping<i16>; // in scope 0 at $DIR/combine_transmutes.rs:+3:29: +3:54 |
| 10 | + let mut _8: Union32; // in scope 0 at $DIR/combine_transmutes.rs:+4:29: +4:47 |
| 11 | + let mut _10: Union32; // in scope 0 at $DIR/combine_transmutes.rs:+5:29: +5:47 |
| 12 | + let mut _12: std::mem::MaybeUninit<std::string::String>; // in scope 0 at $DIR/combine_transmutes.rs:+6:46: +6:77 |
19 | 13 | scope 1 { |
20 | 14 | debug _a => _1; // in scope 1 at $DIR/combine_transmutes.rs:+1:9: +1:11 |
21 | | - let _3: i8; // in scope 1 at $DIR/combine_transmutes.rs:+2:9: +2:11 |
| 15 | + let _3: i16; // in scope 1 at $DIR/combine_transmutes.rs:+2:9: +2:11 |
22 | 16 | scope 2 { |
23 | 17 | debug _a => _3; // in scope 2 at $DIR/combine_transmutes.rs:+2:9: +2:11 |
24 | | - let _5: usize; // in scope 2 at $DIR/combine_transmutes.rs:+3:9: +3:11 |
| 18 | + let _5: u16; // in scope 2 at $DIR/combine_transmutes.rs:+3:9: +3:11 |
25 | 19 | scope 3 { |
26 | 20 | debug _a => _5; // in scope 3 at $DIR/combine_transmutes.rs:+3:9: +3:11 |
27 | | - let _7: isize; // in scope 3 at $DIR/combine_transmutes.rs:+4:9: +4:11 |
| 21 | + let _7: u32; // in scope 3 at $DIR/combine_transmutes.rs:+4:9: +4:11 |
28 | 22 | scope 4 { |
29 | 23 | debug _a => _7; // in scope 4 at $DIR/combine_transmutes.rs:+4:9: +4:11 |
30 | | - let _9: u8; // in scope 4 at $DIR/combine_transmutes.rs:+5:9: +5:11 |
| 24 | + let _9: i32; // in scope 4 at $DIR/combine_transmutes.rs:+5:9: +5:11 |
31 | 25 | scope 5 { |
32 | 26 | debug _a => _9; // in scope 5 at $DIR/combine_transmutes.rs:+5:9: +5:11 |
33 | | - let _11: i8; // in scope 5 at $DIR/combine_transmutes.rs:+6:9: +6:11 |
| 27 | + let _11: std::mem::ManuallyDrop<std::string::String>; // in scope 5 at $DIR/combine_transmutes.rs:+6:9: +6:11 |
34 | 28 | scope 6 { |
35 | 29 | debug _a => _11; // in scope 6 at $DIR/combine_transmutes.rs:+6:9: +6:11 |
36 | | - let _13: u8; // in scope 6 at $DIR/combine_transmutes.rs:+7:9: +7:11 |
37 | | - scope 7 { |
38 | | - debug _a => _13; // in scope 7 at $DIR/combine_transmutes.rs:+7:9: +7:11 |
39 | | - let _15: i16; // in scope 7 at $DIR/combine_transmutes.rs:+8:9: +8:11 |
40 | | - scope 8 { |
41 | | - debug _a => _15; // in scope 8 at $DIR/combine_transmutes.rs:+8:9: +8:11 |
42 | | - let _17: u16; // in scope 8 at $DIR/combine_transmutes.rs:+9:9: +9:11 |
43 | | - scope 9 { |
44 | | - debug _a => _17; // in scope 9 at $DIR/combine_transmutes.rs:+9:9: +9:11 |
45 | | - let _19: u32; // in scope 9 at $DIR/combine_transmutes.rs:+10:9: +10:11 |
46 | | - scope 10 { |
47 | | - debug _a => _19; // in scope 10 at $DIR/combine_transmutes.rs:+10:9: +10:11 |
48 | | - let _21: i32; // in scope 10 at $DIR/combine_transmutes.rs:+11:9: +11:11 |
49 | | - scope 11 { |
50 | | - debug _a => _21; // in scope 11 at $DIR/combine_transmutes.rs:+11:9: +11:11 |
51 | | - let _23: std::mem::ManuallyDrop<std::string::String>; // in scope 11 at $DIR/combine_transmutes.rs:+12:9: +12:11 |
52 | | - scope 12 { |
53 | | - debug _a => _23; // in scope 12 at $DIR/combine_transmutes.rs:+12:9: +12:11 |
54 | | - } |
55 | | - } |
56 | | - } |
57 | | - } |
58 | | - } |
59 | | - } |
60 | 30 | } |
61 | 31 | } |
62 | 32 | } |
|
66 | 36 |
|
67 | 37 | bb0: { |
68 | 38 | StorageLive(_1); // scope 0 at $DIR/combine_transmutes.rs:+1:9: +1:11 |
69 | | - StorageLive(_2); // scope 0 at $DIR/combine_transmutes.rs:+1:28: +1:41 |
70 | | - _2 = EnumNoRepr::A; // scope 0 at $DIR/combine_transmutes.rs:+1:28: +1:41 |
71 | | - _1 = move _2 as u8 (Transmute); // scope 0 at $DIR/combine_transmutes.rs:+1:18: +1:42 |
72 | | - StorageDead(_2); // scope 0 at $DIR/combine_transmutes.rs:+1:41: +1:42 |
| 39 | + StorageLive(_2); // scope 0 at $DIR/combine_transmutes.rs:+1:28: +1:58 |
| 40 | + _2 = Option::<NonZeroU8>::Some(const _); // scope 0 at $DIR/combine_transmutes.rs:+1:28: +1:58 |
| 41 | + // mir::Constant |
| 42 | + // + span: $DIR/combine_transmutes.rs:35:33: 35:57 |
| 43 | + // + literal: Const { ty: NonZeroU8, val: Unevaluated(NonZeroU8::MAX, [], None) } |
| 44 | + _1 = move _2 as u8 (Transmute); // scope 0 at $DIR/combine_transmutes.rs:+1:18: +1:59 |
| 45 | + StorageDead(_2); // scope 0 at $DIR/combine_transmutes.rs:+1:58: +1:59 |
73 | 46 | StorageLive(_3); // scope 1 at $DIR/combine_transmutes.rs:+2:9: +2:11 |
74 | | - StorageLive(_4); // scope 1 at $DIR/combine_transmutes.rs:+2:28: +2:41 |
75 | | - _4 = EnumNoRepr::B; // scope 1 at $DIR/combine_transmutes.rs:+2:28: +2:41 |
76 | | - _3 = move _4 as i8 (Transmute); // scope 1 at $DIR/combine_transmutes.rs:+2:18: +2:42 |
77 | | - StorageDead(_4); // scope 1 at $DIR/combine_transmutes.rs:+2:41: +2:42 |
| 47 | + StorageLive(_4); // scope 1 at $DIR/combine_transmutes.rs:+2:29: +2:54 |
| 48 | + _4 = Wrapping::<i16>(const 0_i16); // scope 1 at $DIR/combine_transmutes.rs:+2:29: +2:54 |
| 49 | +- _3 = move _4 as i16 (Transmute); // scope 1 at $DIR/combine_transmutes.rs:+2:19: +2:55 |
| 50 | ++ _3 = move (_4.0: i16); // scope 1 at $DIR/combine_transmutes.rs:+2:19: +2:55 |
| 51 | + StorageDead(_4); // scope 1 at $DIR/combine_transmutes.rs:+2:54: +2:55 |
78 | 52 | StorageLive(_5); // scope 2 at $DIR/combine_transmutes.rs:+3:9: +3:11 |
79 | | - StorageLive(_6); // scope 2 at $DIR/combine_transmutes.rs:+3:31: +3:47 |
80 | | - _6 = EnumReprIsize::A; // scope 2 at $DIR/combine_transmutes.rs:+3:31: +3:47 |
81 | | - _5 = move _6 as usize (Transmute); // scope 2 at $DIR/combine_transmutes.rs:+3:21: +3:48 |
82 | | - StorageDead(_6); // scope 2 at $DIR/combine_transmutes.rs:+3:47: +3:48 |
| 53 | + StorageLive(_6); // scope 2 at $DIR/combine_transmutes.rs:+3:29: +3:54 |
| 54 | + _6 = Wrapping::<i16>(const 0_i16); // scope 2 at $DIR/combine_transmutes.rs:+3:29: +3:54 |
| 55 | + _5 = move _6 as u16 (Transmute); // scope 2 at $DIR/combine_transmutes.rs:+3:19: +3:55 |
| 56 | + StorageDead(_6); // scope 2 at $DIR/combine_transmutes.rs:+3:54: +3:55 |
83 | 57 | StorageLive(_7); // scope 3 at $DIR/combine_transmutes.rs:+4:9: +4:11 |
84 | | - StorageLive(_8); // scope 3 at $DIR/combine_transmutes.rs:+4:31: +4:47 |
85 | | - _8 = EnumReprIsize::B; // scope 3 at $DIR/combine_transmutes.rs:+4:31: +4:47 |
86 | | -- _7 = move _8 as isize (Transmute); // scope 3 at $DIR/combine_transmutes.rs:+4:21: +4:48 |
87 | | -+ _7 = discriminant(_8); // scope 3 at $DIR/combine_transmutes.rs:+4:21: +4:48 |
| 58 | + StorageLive(_8); // scope 3 at $DIR/combine_transmutes.rs:+4:29: +4:47 |
| 59 | + _8 = Union32 { u32: const 0_i32 }; // scope 3 at $DIR/combine_transmutes.rs:+4:29: +4:47 |
| 60 | + _7 = move _8 as u32 (Transmute); // scope 3 at $DIR/combine_transmutes.rs:+4:19: +4:48 |
88 | 61 | StorageDead(_8); // scope 3 at $DIR/combine_transmutes.rs:+4:47: +4:48 |
89 | 62 | StorageLive(_9); // scope 4 at $DIR/combine_transmutes.rs:+5:9: +5:11 |
90 | | - StorageLive(_10); // scope 4 at $DIR/combine_transmutes.rs:+5:28: +5:52 |
91 | | - _10 = Less; // scope 4 at $DIR/combine_transmutes.rs:+5:28: +5:52 |
92 | | - _9 = move _10 as u8 (Transmute); // scope 4 at $DIR/combine_transmutes.rs:+5:18: +5:53 |
93 | | - StorageDead(_10); // scope 4 at $DIR/combine_transmutes.rs:+5:52: +5:53 |
| 63 | + StorageLive(_10); // scope 4 at $DIR/combine_transmutes.rs:+5:29: +5:47 |
| 64 | + _10 = Union32 { u32: const 0_u32 }; // scope 4 at $DIR/combine_transmutes.rs:+5:29: +5:47 |
| 65 | + _9 = move _10 as i32 (Transmute); // scope 4 at $DIR/combine_transmutes.rs:+5:19: +5:48 |
| 66 | + StorageDead(_10); // scope 4 at $DIR/combine_transmutes.rs:+5:47: +5:48 |
94 | 67 | StorageLive(_11); // scope 5 at $DIR/combine_transmutes.rs:+6:9: +6:11 |
95 | | - StorageLive(_12); // scope 5 at $DIR/combine_transmutes.rs:+6:28: +6:52 |
96 | | - _12 = Less; // scope 5 at $DIR/combine_transmutes.rs:+6:28: +6:52 |
97 | | -- _11 = move _12 as i8 (Transmute); // scope 5 at $DIR/combine_transmutes.rs:+6:18: +6:53 |
98 | | -+ _11 = discriminant(_12); // scope 5 at $DIR/combine_transmutes.rs:+6:18: +6:53 |
99 | | - StorageDead(_12); // scope 5 at $DIR/combine_transmutes.rs:+6:52: +6:53 |
100 | | - StorageLive(_13); // scope 6 at $DIR/combine_transmutes.rs:+7:9: +7:11 |
101 | | - StorageLive(_14); // scope 6 at $DIR/combine_transmutes.rs:+7:28: +7:58 |
102 | | - _14 = Option::<NonZeroU8>::Some(const _); // scope 6 at $DIR/combine_transmutes.rs:+7:28: +7:58 |
103 | | - // mir::Constant |
104 | | - // + span: $DIR/combine_transmutes.rs:41:33: 41:57 |
105 | | - // + literal: Const { ty: NonZeroU8, val: Unevaluated(NonZeroU8::MAX, [], None) } |
106 | | - _13 = move _14 as u8 (Transmute); // scope 6 at $DIR/combine_transmutes.rs:+7:18: +7:59 |
107 | | - StorageDead(_14); // scope 6 at $DIR/combine_transmutes.rs:+7:58: +7:59 |
108 | | - StorageLive(_15); // scope 7 at $DIR/combine_transmutes.rs:+8:9: +8:11 |
109 | | - StorageLive(_16); // scope 7 at $DIR/combine_transmutes.rs:+8:29: +8:54 |
110 | | - _16 = Wrapping::<i16>(const 0_i16); // scope 7 at $DIR/combine_transmutes.rs:+8:29: +8:54 |
111 | | -- _15 = move _16 as i16 (Transmute); // scope 7 at $DIR/combine_transmutes.rs:+8:19: +8:55 |
112 | | -+ _15 = move (_16.0: i16); // scope 7 at $DIR/combine_transmutes.rs:+8:19: +8:55 |
113 | | - StorageDead(_16); // scope 7 at $DIR/combine_transmutes.rs:+8:54: +8:55 |
114 | | - StorageLive(_17); // scope 8 at $DIR/combine_transmutes.rs:+9:9: +9:11 |
115 | | - StorageLive(_18); // scope 8 at $DIR/combine_transmutes.rs:+9:29: +9:54 |
116 | | - _18 = Wrapping::<i16>(const 0_i16); // scope 8 at $DIR/combine_transmutes.rs:+9:29: +9:54 |
117 | | - _17 = move _18 as u16 (Transmute); // scope 8 at $DIR/combine_transmutes.rs:+9:19: +9:55 |
118 | | - StorageDead(_18); // scope 8 at $DIR/combine_transmutes.rs:+9:54: +9:55 |
119 | | - StorageLive(_19); // scope 9 at $DIR/combine_transmutes.rs:+10:9: +10:11 |
120 | | - StorageLive(_20); // scope 9 at $DIR/combine_transmutes.rs:+10:29: +10:47 |
121 | | - _20 = Union32 { u32: const 0_i32 }; // scope 9 at $DIR/combine_transmutes.rs:+10:29: +10:47 |
122 | | - _19 = move _20 as u32 (Transmute); // scope 9 at $DIR/combine_transmutes.rs:+10:19: +10:48 |
123 | | - StorageDead(_20); // scope 9 at $DIR/combine_transmutes.rs:+10:47: +10:48 |
124 | | - StorageLive(_21); // scope 10 at $DIR/combine_transmutes.rs:+11:9: +11:11 |
125 | | - StorageLive(_22); // scope 10 at $DIR/combine_transmutes.rs:+11:29: +11:47 |
126 | | - _22 = Union32 { u32: const 0_u32 }; // scope 10 at $DIR/combine_transmutes.rs:+11:29: +11:47 |
127 | | - _21 = move _22 as i32 (Transmute); // scope 10 at $DIR/combine_transmutes.rs:+11:19: +11:48 |
128 | | - StorageDead(_22); // scope 10 at $DIR/combine_transmutes.rs:+11:47: +11:48 |
129 | | - StorageLive(_23); // scope 11 at $DIR/combine_transmutes.rs:+12:9: +12:11 |
130 | | - StorageLive(_24); // scope 11 at $DIR/combine_transmutes.rs:+12:46: +12:77 |
131 | | - _24 = MaybeUninit::<String>::uninit() -> [return: bb1, unwind unreachable]; // scope 11 at $DIR/combine_transmutes.rs:+12:46: +12:77 |
| 68 | + StorageLive(_12); // scope 5 at $DIR/combine_transmutes.rs:+6:46: +6:77 |
| 69 | + _12 = MaybeUninit::<String>::uninit() -> [return: bb1, unwind unreachable]; // scope 5 at $DIR/combine_transmutes.rs:+6:46: +6:77 |
132 | 70 | // mir::Constant |
133 | | - // + span: $DIR/combine_transmutes.rs:46:46: 46:75 |
134 | | - // + user_ty: UserType(23) |
| 71 | + // + span: $DIR/combine_transmutes.rs:40:46: 40:75 |
| 72 | + // + user_ty: UserType(11) |
135 | 73 | // + literal: Const { ty: fn() -> MaybeUninit<String> {MaybeUninit::<String>::uninit}, val: Value(<ZST>) } |
136 | 74 | } |
137 | 75 |
|
138 | 76 | bb1: { |
139 | | -- _23 = move _24 as std::mem::ManuallyDrop<std::string::String> (Transmute); // scope 11 at $DIR/combine_transmutes.rs:+12:36: +12:78 |
140 | | -+ _23 = move (_24.1: std::mem::ManuallyDrop<std::string::String>); // scope 11 at $DIR/combine_transmutes.rs:+12:36: +12:78 |
141 | | - StorageDead(_24); // scope 11 at $DIR/combine_transmutes.rs:+12:77: +12:78 |
142 | | - _0 = const (); // scope 0 at $DIR/combine_transmutes.rs:+0:32: +13:2 |
143 | | - StorageDead(_23); // scope 11 at $DIR/combine_transmutes.rs:+13:1: +13:2 |
144 | | - StorageDead(_21); // scope 10 at $DIR/combine_transmutes.rs:+13:1: +13:2 |
145 | | - StorageDead(_19); // scope 9 at $DIR/combine_transmutes.rs:+13:1: +13:2 |
146 | | - StorageDead(_17); // scope 8 at $DIR/combine_transmutes.rs:+13:1: +13:2 |
147 | | - StorageDead(_15); // scope 7 at $DIR/combine_transmutes.rs:+13:1: +13:2 |
148 | | - StorageDead(_13); // scope 6 at $DIR/combine_transmutes.rs:+13:1: +13:2 |
149 | | - StorageDead(_11); // scope 5 at $DIR/combine_transmutes.rs:+13:1: +13:2 |
150 | | - StorageDead(_9); // scope 4 at $DIR/combine_transmutes.rs:+13:1: +13:2 |
151 | | - StorageDead(_7); // scope 3 at $DIR/combine_transmutes.rs:+13:1: +13:2 |
152 | | - StorageDead(_5); // scope 2 at $DIR/combine_transmutes.rs:+13:1: +13:2 |
153 | | - StorageDead(_3); // scope 1 at $DIR/combine_transmutes.rs:+13:1: +13:2 |
154 | | - StorageDead(_1); // scope 0 at $DIR/combine_transmutes.rs:+13:1: +13:2 |
155 | | - return; // scope 0 at $DIR/combine_transmutes.rs:+13:2: +13:2 |
| 77 | +- _11 = move _12 as std::mem::ManuallyDrop<std::string::String> (Transmute); // scope 5 at $DIR/combine_transmutes.rs:+6:36: +6:78 |
| 78 | ++ _11 = move (_12.1: std::mem::ManuallyDrop<std::string::String>); // scope 5 at $DIR/combine_transmutes.rs:+6:36: +6:78 |
| 79 | + StorageDead(_12); // scope 5 at $DIR/combine_transmutes.rs:+6:77: +6:78 |
| 80 | + _0 = const (); // scope 0 at $DIR/combine_transmutes.rs:+0:32: +7:2 |
| 81 | + StorageDead(_11); // scope 5 at $DIR/combine_transmutes.rs:+7:1: +7:2 |
| 82 | + StorageDead(_9); // scope 4 at $DIR/combine_transmutes.rs:+7:1: +7:2 |
| 83 | + StorageDead(_7); // scope 3 at $DIR/combine_transmutes.rs:+7:1: +7:2 |
| 84 | + StorageDead(_5); // scope 2 at $DIR/combine_transmutes.rs:+7:1: +7:2 |
| 85 | + StorageDead(_3); // scope 1 at $DIR/combine_transmutes.rs:+7:1: +7:2 |
| 86 | + StorageDead(_1); // scope 0 at $DIR/combine_transmutes.rs:+7:1: +7:2 |
| 87 | + return; // scope 0 at $DIR/combine_transmutes.rs:+7:2: +7:2 |
156 | 88 | } |
157 | 89 | } |
158 | 90 |
|
0 commit comments