]> git.lizzy.rs Git - rust.git/blob - src/test/mir-opt/inline/cycle.f.Inline.diff
reduce spans for `unsafe impl` errors
[rust.git] / src / test / mir-opt / inline / cycle.f.Inline.diff
1 - // MIR for `f` before Inline
2 + // MIR for `f` after Inline
3   
4   fn f(_1: impl Fn()) -> () {
5       debug g => _1;                       // in scope 0 at $DIR/cycle.rs:+0:6: +0:7
6       let mut _0: ();                      // return place in scope 0 at $DIR/cycle.rs:+0:20: +0:20
7       let _2: ();                          // in scope 0 at $DIR/cycle.rs:+1:5: +1:8
8       let mut _3: &impl Fn();              // in scope 0 at $DIR/cycle.rs:+1:5: +1:6
9       let mut _4: ();                      // in scope 0 at $DIR/cycle.rs:+1:5: +1:8
10   
11       bb0: {
12           StorageLive(_2);                 // scope 0 at $DIR/cycle.rs:+1:5: +1:8
13           StorageLive(_3);                 // scope 0 at $DIR/cycle.rs:+1:5: +1:6
14           _3 = &_1;                        // scope 0 at $DIR/cycle.rs:+1:5: +1:6
15           StorageLive(_4);                 // scope 0 at $DIR/cycle.rs:+1:5: +1:8
16           Deinit(_4);                      // scope 0 at $DIR/cycle.rs:+1:5: +1:8
17           _2 = <impl Fn() as Fn<()>>::call(move _3, move _4) -> [return: bb1, unwind: bb3]; // scope 0 at $DIR/cycle.rs:+1:5: +1:8
18                                            // mir::Constant
19                                            // + span: $DIR/cycle.rs:6:5: 6:6
20                                            // + literal: Const { ty: for<'a> extern "rust-call" fn(&'a impl Fn(), ()) -> <impl Fn() as FnOnce<()>>::Output {<impl Fn() as Fn<()>>::call}, val: Value(<ZST>) }
21       }
22   
23       bb1: {
24           StorageDead(_4);                 // scope 0 at $DIR/cycle.rs:+1:7: +1:8
25           StorageDead(_3);                 // scope 0 at $DIR/cycle.rs:+1:7: +1:8
26           StorageDead(_2);                 // scope 0 at $DIR/cycle.rs:+1:8: +1:9
27           _0 = const ();                   // scope 0 at $DIR/cycle.rs:+0:20: +2:2
28           drop(_1) -> [return: bb2, unwind: bb4]; // scope 0 at $DIR/cycle.rs:+2:1: +2:2
29       }
30   
31       bb2: {
32           return;                          // scope 0 at $DIR/cycle.rs:+2:2: +2:2
33       }
34   
35       bb3 (cleanup): {
36           drop(_1) -> bb4;                 // scope 0 at $DIR/cycle.rs:+2:1: +2:2
37       }
38   
39       bb4 (cleanup): {
40           resume;                          // scope 0 at $DIR/cycle.rs:+0:1: +2:2
41       }
42   }
43