On Wed, Apr 27, 2016 at 5:29 PM, Kyle Huey <[email protected]> wrote:
> Can we catch this pattern with a compiler somehow?
Yes. Example:
foo.rs:
struct Foo {
x: u64,
}
fn do_bar(foo: Foo) {
}
fn main() {
let foo = Foo {
x: 0,
};
do_bar(foo);
if foo.x == 0 {
// do stuff
}
}
$ rustc foo.rs
foo.rs:13:8: 13:13 error: use of moved value: `foo.x` [E0382]
foo.rs:13 if foo.x == 0 {
^~~~~
jack.
_______________________________________________
dev-platform mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-platform