// Test that a class with a non-copyable field can't be | |
// copied | |
#[derive(Debug)] | |
struct Bar { | |
x: isize, | |
} | |
impl Drop for Bar { | |
fn drop(&mut self) {} | |
} | |
fn bar(x:isize) -> Bar { | |
Bar { | |
x: x | |
} | |
} | |
#[derive(Debug)] | |
struct Foo { | |
i: isize, | |
j: Bar, | |
} | |
fn foo(i:isize) -> Foo { | |
Foo { | |
i: i, | |
j: bar(5) | |
} | |
} | |
fn main() { | |
let x = foo(10); | |
let _y = x.clone(); //~ ERROR no method named `clone` found | |
println!("{:?}", x); | |
} |