summaryrefslogtreecommitdiffstats
path: root/tests/mir-opt/copy-prop/issue_107511.rs
blob: d593f2872ea40b950ad36978db8b63acbc5319a5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
// unit-test: CopyProp

// EMIT_MIR issue_107511.main.CopyProp.diff
fn main() {
    let mut sum = 0;
    let a = [0, 10, 20, 30];

    // `i` is assigned in a loop. Only removing its `StorageDead` would mean that
    // execution sees repeated `StorageLive`. This would be UB.
    for i in 0..a.len() {
        sum += a[i];
    }
}