]>
Commit | Line | Data |
---|---|---|
ba9703b0 XL |
1 | // MIR for `main` after SimplifyCfg-initial |
2 | ||
3 | | User Type Annotations | |
923072b8 FG |
4 | | 0: user_ty: Canonical { max_universe: U0, variables: [], value: Ty(std::option::Option<std::boxed::Box<u32>>) }, span: $DIR/basic_assignment.rs:18:17: 18:33, inferred_ty: std::option::Option<std::boxed::Box<u32>> |
5 | | 1: user_ty: Canonical { max_universe: U0, variables: [], value: Ty(std::option::Option<std::boxed::Box<u32>>) }, span: $DIR/basic_assignment.rs:18:17: 18:33, inferred_ty: std::option::Option<std::boxed::Box<u32>> | |
ba9703b0 XL |
6 | | |
7 | fn main() -> () { | |
064997fb FG |
8 | let mut _0: (); // return place in scope 0 at $DIR/basic_assignment.rs:+0:11: +0:11 |
9 | let _1: bool; // in scope 0 at $DIR/basic_assignment.rs:+1:9: +1:17 | |
10 | let mut _3: bool; // in scope 0 at $DIR/basic_assignment.rs:+6:16: +6:24 | |
11 | let mut _6: std::option::Option<std::boxed::Box<u32>>; // in scope 0 at $DIR/basic_assignment.rs:+13:14: +13:20 | |
ba9703b0 | 12 | scope 1 { |
064997fb FG |
13 | debug nodrop_x => _1; // in scope 1 at $DIR/basic_assignment.rs:+1:9: +1:17 |
14 | let _2: bool; // in scope 1 at $DIR/basic_assignment.rs:+2:9: +2:17 | |
ba9703b0 | 15 | scope 2 { |
064997fb FG |
16 | debug nodrop_y => _2; // in scope 2 at $DIR/basic_assignment.rs:+2:9: +2:17 |
17 | let _4: std::option::Option<std::boxed::Box<u32>> as UserTypeProjection { base: UserType(0), projs: [] }; // in scope 2 at $DIR/basic_assignment.rs:+8:9: +8:15 | |
ba9703b0 | 18 | scope 3 { |
064997fb FG |
19 | debug drop_x => _4; // in scope 3 at $DIR/basic_assignment.rs:+8:9: +8:15 |
20 | let _5: std::option::Option<std::boxed::Box<u32>>; // in scope 3 at $DIR/basic_assignment.rs:+9:9: +9:15 | |
ba9703b0 | 21 | scope 4 { |
064997fb | 22 | debug drop_y => _5; // in scope 4 at $DIR/basic_assignment.rs:+9:9: +9:15 |
ba9703b0 XL |
23 | } |
24 | } | |
25 | } | |
26 | } | |
27 | ||
28 | bb0: { | |
064997fb FG |
29 | StorageLive(_1); // scope 0 at $DIR/basic_assignment.rs:+1:9: +1:17 |
30 | _1 = const false; // scope 0 at $DIR/basic_assignment.rs:+1:20: +1:25 | |
31 | FakeRead(ForLet(None), _1); // scope 0 at $DIR/basic_assignment.rs:+1:9: +1:17 | |
32 | StorageLive(_2); // scope 1 at $DIR/basic_assignment.rs:+2:9: +2:17 | |
33 | StorageLive(_3); // scope 2 at $DIR/basic_assignment.rs:+6:16: +6:24 | |
34 | _3 = _1; // scope 2 at $DIR/basic_assignment.rs:+6:16: +6:24 | |
35 | _2 = move _3; // scope 2 at $DIR/basic_assignment.rs:+6:5: +6:24 | |
36 | StorageDead(_3); // scope 2 at $DIR/basic_assignment.rs:+6:23: +6:24 | |
37 | StorageLive(_4); // scope 2 at $DIR/basic_assignment.rs:+8:9: +8:15 | |
38 | _4 = Option::<Box<u32>>::None; // scope 2 at $DIR/basic_assignment.rs:+8:36: +8:40 | |
39 | FakeRead(ForLet(None), _4); // scope 2 at $DIR/basic_assignment.rs:+8:9: +8:15 | |
40 | AscribeUserType(_4, o, UserTypeProjection { base: UserType(1), projs: [] }); // scope 2 at $DIR/basic_assignment.rs:+8:17: +8:33 | |
41 | StorageLive(_5); // scope 3 at $DIR/basic_assignment.rs:+9:9: +9:15 | |
42 | StorageLive(_6); // scope 4 at $DIR/basic_assignment.rs:+13:14: +13:20 | |
43 | _6 = move _4; // scope 4 at $DIR/basic_assignment.rs:+13:14: +13:20 | |
44 | replace(_5 <- move _6) -> [return: bb1, unwind: bb5]; // scope 4 at $DIR/basic_assignment.rs:+13:5: +13:11 | |
ba9703b0 XL |
45 | } |
46 | ||
29967ef6 | 47 | bb1: { |
064997fb | 48 | drop(_6) -> [return: bb2, unwind: bb6]; // scope 4 at $DIR/basic_assignment.rs:+13:19: +13:20 |
ba9703b0 XL |
49 | } |
50 | ||
51 | bb2: { | |
064997fb FG |
52 | StorageDead(_6); // scope 4 at $DIR/basic_assignment.rs:+13:19: +13:20 |
53 | _0 = const (); // scope 0 at $DIR/basic_assignment.rs:+0:11: +14:2 | |
54 | drop(_5) -> [return: bb3, unwind: bb7]; // scope 3 at $DIR/basic_assignment.rs:+14:1: +14:2 | |
ba9703b0 XL |
55 | } |
56 | ||
29967ef6 | 57 | bb3: { |
064997fb FG |
58 | StorageDead(_5); // scope 3 at $DIR/basic_assignment.rs:+14:1: +14:2 |
59 | drop(_4) -> [return: bb4, unwind: bb8]; // scope 2 at $DIR/basic_assignment.rs:+14:1: +14:2 | |
ba9703b0 XL |
60 | } |
61 | ||
29967ef6 | 62 | bb4: { |
064997fb FG |
63 | StorageDead(_4); // scope 2 at $DIR/basic_assignment.rs:+14:1: +14:2 |
64 | StorageDead(_2); // scope 1 at $DIR/basic_assignment.rs:+14:1: +14:2 | |
65 | StorageDead(_1); // scope 0 at $DIR/basic_assignment.rs:+14:1: +14:2 | |
66 | return; // scope 0 at $DIR/basic_assignment.rs:+14:2: +14:2 | |
ba9703b0 XL |
67 | } |
68 | ||
69 | bb5 (cleanup): { | |
064997fb | 70 | drop(_6) -> bb6; // scope 4 at $DIR/basic_assignment.rs:+13:19: +13:20 |
ba9703b0 XL |
71 | } |
72 | ||
29967ef6 | 73 | bb6 (cleanup): { |
064997fb | 74 | drop(_5) -> bb7; // scope 3 at $DIR/basic_assignment.rs:+14:1: +14:2 |
ba9703b0 XL |
75 | } |
76 | ||
29967ef6 | 77 | bb7 (cleanup): { |
064997fb | 78 | drop(_4) -> bb8; // scope 2 at $DIR/basic_assignment.rs:+14:1: +14:2 |
ba9703b0 XL |
79 | } |
80 | ||
29967ef6 | 81 | bb8 (cleanup): { |
064997fb | 82 | resume; // scope 0 at $DIR/basic_assignment.rs:+0:1: +14:2 |
ba9703b0 XL |
83 | } |
84 | } |