struct noncopyable {
    i: (), drop { #error["dropped"]; }
}

fn noncopyable() -> noncopyable {
    noncopyable {
        i: ()
    }
}

enum wrapper = noncopyable;

fn main() {
    let x1 = wrapper(noncopyable());
    let _x2 = move *x1; //~ ERROR moving out of enum content
}