// xfail-test #3387 enum foo = ~uint; impl foo: Add { pure fn add(f: foo) -> foo { foo(~(**self + **f)) } } fn main() { let x = foo(~3); let _y = x + move x; //~^ ERROR moving out of immutable local variable prohibited due to outstanding loan }