diff --git a/src/test/run-pass/block-iter-1.rs b/src/test/run-pass/block-iter-1.rs index 41401a4d9898..eac1e19f0673 100644 --- a/src/test/run-pass/block-iter-1.rs +++ b/src/test/run-pass/block-iter-1.rs @@ -4,11 +4,11 @@ fn main() { let v = ~[1, 2, 3, 4, 5, 6, 7]; let odds = 0; iter_vec(v, - block (i: &int) { + {|&i| log_err i; if i % 2 == 1 { odds += 1; } log_err odds; }); log_err odds; assert (odds == 4); -} \ No newline at end of file +} diff --git a/src/test/run-pass/block-iter-2.rs b/src/test/run-pass/block-iter-2.rs index 93fda829cbe2..22ceefcaa938 100644 --- a/src/test/run-pass/block-iter-2.rs +++ b/src/test/run-pass/block-iter-2.rs @@ -4,10 +4,9 @@ fn main() { let v = ~[1, 2, 3, 4, 5]; let sum = 0; iter_vec(v, - block (i: &int) { - iter_vec(v, - block (j: &int) { log_err i * j; sum += i * j; }); + {|&i| + iter_vec(v, {|&j| log_err i * j; sum += i * j; }); }); log_err sum; assert (sum == 225); -} \ No newline at end of file +} diff --git a/src/test/run-pass/block-vec-map2.rs b/src/test/run-pass/block-vec-map2.rs new file mode 100644 index 000000000000..b3ce4fa104ac --- /dev/null +++ b/src/test/run-pass/block-vec-map2.rs @@ -0,0 +1,10 @@ +use std; +import std::ivec; + +fn main() { + let v = std::ivec::map2({|&i, &b| if b { -i } else { i }}, + ~[1, 2, 3, 4, 5], + ~[true, false, false, true, true]); + log_err v; + assert v == ~[-1, 2, 3, -4, -5]; +}