Issue 51195

Example 1

Source


fn main() {
    let y = {
        let mut z = 0;
        &mut z
    };
    //~^^ ERROR `z` does not live long enough (Ast) [E0597]
    //~| ERROR `z` does not live long enough (Mir) [E0597]
    println!("{}", y);
}

Mir dump


// MIR for `main`
// source = MirSource { def_id: DefId(0/0:3 ~ issue_46471_1[317d]::main[0]), promoted: None }
// pass_name = nll
// disambiguator = 0

| Free Region Mapping
| '_#0r    | Global   | ['_#0r, '_#1r]
| '_#1r    | Local    | ['_#1r]
|
| Inferred Region Values
| '_#0r    | {'_#0r, bb0[0..=29], bb1[0], bb2[0], bb3[0..=7], bb4[0..=18], bb5[0..=3], bb6[0..=10]}
| '_#1r    | {'_#1r, bb0[0..=29], bb1[0], bb2[0], bb3[0..=7], bb4[0..=18], bb5[0..=3], bb6[0..=10]}
| '_#2r    | {bb0[4..=29], bb3[0..=7], bb4[0..=18], bb5[0..=3]}
| '_#3r    | {bb0[6..=29], bb3[0..=7], bb4[0..=18], bb5[0..=3]}
| '_#4r    | {bb0[12..=29], bb3[0..=7], bb4[0..=18], bb5[0..=3]}
| '_#5r    | {bb0[12..=29], bb3[0..=7], bb4[0..=18], bb5[0..=3]}
| '_#6r    | {bb0[13..=29], bb3[0..=7], bb4[0..=18], bb5[0..=3]}
| '_#7r    | {bb0[14..=29], bb3[0..=7], bb4[0..=18], bb5[0..=3]}
| '_#8r    | {bb0[15..=29], bb3[0..=7], bb4[0..=18], bb5[0..=3]}
| '_#9r    | {bb0[15..=29], bb3[0..=7], bb4[0..=18], bb5[0..=3]}
| '_#10r   | {bb0[23..=29], bb3[0..=7], bb4[0..=18], bb5[0..=3]}
| '_#11r   | {bb0[27..=28]}
| '_#12r   | {bb0[25..=29], bb3[0..=7], bb4[0..=18], bb5[0..=3]}
| '_#13r   | {bb0[25..=29], bb3[0..=7], bb4[0..=18], bb5[0..=3]}
| '_#14r   | {bb3[4..=7], bb4[0..=18], bb5[0..=3]}
| '_#15r   | {bb3[6]}
| '_#16r   | {bb3[6]}
| '_#17r   | {bb3[6]}
| '_#18r   | {bb3[7]}
| '_#19r   | {bb3[6..=7], bb4[0..=18], bb5[0..=3]}
| '_#20r   | {bb3[7]}
| '_#21r   | {bb3[6..=7], bb4[0..=18], bb5[0..=3]}
| '_#22r   | {bb4[3..=18], bb5[0..=3]}
| '_#23r   | {bb4[6..=18], bb5[0..=3]}