about summary refs log tree commit diff
path: root/tests/mir-opt/building/uniform_array_move_out.rs
blob: 36245273fe1c113c5c31bbdd337b15c0b5eb20e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
//@ compile-flags: -Zmir-opt-level=0
// skip-filecheck
#![feature(liballoc_internals, rustc_attrs)]

// EMIT_MIR uniform_array_move_out.move_out_from_end.built.after.mir
fn move_out_from_end() {
    let a = [std::boxed::box_new(1), std::boxed::box_new(2)];
    let [.., _y] = a;
}

// EMIT_MIR uniform_array_move_out.move_out_by_subslice.built.after.mir
fn move_out_by_subslice() {
    let a = [std::boxed::box_new(1), std::boxed::box_new(2)];
    let [_y @ ..] = a;
}

fn main() {
    move_out_by_subslice();
    move_out_from_end();
}