summaryrefslogtreecommitdiffstats
path: root/tests/mir-opt/dest-prop/cycle.rs
blob: 9bc0cb05a35148e1e3f13395f049a45cc47350ad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// EMIT_MIR_FOR_EACH_PANIC_STRATEGY
//! Tests that cyclic assignments don't hang DestinationPropagation, and result in reasonable code.
// unit-test: DestinationPropagation
fn val() -> i32 {
    1
}

// EMIT_MIR cycle.main.DestinationPropagation.diff
fn main() {
    let mut x = val();
    let y = x;
    let z = y;
    x = z;

    drop(x);
}