Skip to content

Instantly share code, notes, and snippets.

@KiChjang
Created September 21, 2017 19:36
Show Gist options
  • Save KiChjang/90aa55cb46bb98331f8df8d0780f856f to your computer and use it in GitHub Desktop.
Save KiChjang/90aa55cb46bb98331f8df8d0780f856f to your computer and use it in GitHub Desktop.
MIR dump
// MIR for `main`
// source = Fn(NodeId(4))
// pass_name = NLL
// disambiguator = after
fn main() -> () {
let mut _0: (); // return pointer
scope 1 {
let _1: isize; // "i" in scope 1 at src/test/compile-fail/borrowck/borrowck-and-init.rs:12:9: 12:10
scope 2 {
let _2: bool; // "foo" in scope 2 at src/test/compile-fail/borrowck/borrowck-and-init.rs:14:9: 14:12
scope 3 {
let _4: isize; // "bar" in scope 3 at src/test/compile-fail/borrowck/borrowck-and-init.rs:15:9: 15:12
}
}
}
let mut _3: bool;
let mut _5: isize;
let mut _6: (isize, bool);
bb0: {
StorageLive(_1); // scope 0 at src/test/compile-fail/borrowck/borrowck-and-init.rs:12:9: 12:10
StorageLive(_2); // scope 1 at src/test/compile-fail/borrowck/borrowck-and-init.rs:14:9: 14:12
_2 = const false; // scope 1 at src/test/compile-fail/borrowck/borrowck-and-init.rs:14:15: 14:39
StorageDead(_3); // scope 1 at src/test/compile-fail/borrowck/borrowck-and-init.rs:14:39: 14:39
StorageLive(_4); // scope 2 at src/test/compile-fail/borrowck/borrowck-and-init.rs:15:9: 15:12
StorageLive(_5); // scope 2 at src/test/compile-fail/borrowck/borrowck-and-init.rs:15:15: 15:16
_5 = _1; // scope 2 at src/test/compile-fail/borrowck/borrowck-and-init.rs:15:15: 15:16
_6 = CheckedAdd(_5, const 5isize); // scope 2 at src/test/compile-fail/borrowck/borrowck-and-init.rs:15:15: 15:20
assert(!(_6.1: bool), "attempt to add with overflow") -> bb1; // scope 2 at src/test/compile-fail/borrowck/borrowck-and-init.rs:15:15: 15:20
}
bb1: {
_4 = (_6.0: isize); // scope 2 at src/test/compile-fail/borrowck/borrowck-and-init.rs:15:15: 15:20
StorageDead(_5); // scope 2 at src/test/compile-fail/borrowck/borrowck-and-init.rs:15:20: 15:20
_0 = (); // scope 0 at src/test/compile-fail/borrowck/borrowck-and-init.rs:11:11: 16:2
StorageDead(_4); // scope 2 at src/test/compile-fail/borrowck/borrowck-and-init.rs:16:2: 16:2
StorageDead(_2); // scope 1 at src/test/compile-fail/borrowck/borrowck-and-init.rs:16:2: 16:2
StorageDead(_1); // scope 0 at src/test/compile-fail/borrowck/borrowck-and-init.rs:16:2: 16:2
return; // scope 0 at src/test/compile-fail/borrowck/borrowck-and-init.rs:16:2: 16:2
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment