blob: a58ae84459d37984c82567d70da8fea28307fb50 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
// error-pattern: copying a noncopyable value
class r {
let i: @mut int;
new(i: @mut int) { self.i = i; }
drop { *(self.i) = *(self.i) + 1; }
}
fn f<T>(+i: ~[T], +j: ~[T]) {
let k = i + j;
}
fn main() {
let i1 = @mut 0;
let i2 = @mut 1;
let r1 <- ~[~r(i1)];
let r2 <- ~[~r(i2)];
f(r1, r2);
log(debug, (r2, *i1));
log(debug, (r1, *i2));
}
|