summary refs log tree commit diff
path: root/src/test
diff options
context:
space:
mode:
authorDaniel Micay <danielmicay@gmail.com>2013-08-01 03:16:42 -0400
committerDaniel Micay <danielmicay@gmail.com>2013-08-01 05:34:55 -0400
commit1fc4db2d086fd068a934c9ed2ccf25456fedc216 (patch)
tree8e96cbc62b80bd622f78cf68b0bb29cb14ebc417 /src/test
parent5f59c46e0f5605a0cc90ebdb26b4d258a8f7b43a (diff)
downloadrust-1fc4db2d086fd068a934c9ed2ccf25456fedc216.tar.gz
rust-1fc4db2d086fd068a934c9ed2ccf25456fedc216.zip
migrate many `for` loops to `foreach`
Diffstat (limited to 'src/test')
-rw-r--r--src/test/auxiliary/cci_nested_lib.rs2
-rw-r--r--src/test/bench/graph500-bfs.rs8
-rw-r--r--src/test/bench/msgsend-pipes-shared.rs2
-rw-r--r--src/test/bench/msgsend-pipes.rs2
-rw-r--r--src/test/bench/msgsend-ring-mutex-arcs.rs2
-rw-r--r--src/test/bench/msgsend-ring-pipes.rs2
-rw-r--r--src/test/bench/msgsend-ring-rw-arcs.rs2
-rw-r--r--src/test/bench/shootout-chameneos-redux.rs12
-rw-r--r--src/test/bench/shootout-fannkuch-redux.rs2
-rw-r--r--src/test/bench/shootout-fasta-redux.rs6
-rw-r--r--src/test/bench/shootout-fasta.rs2
-rw-r--r--src/test/bench/shootout-k-nucleotide-pipes.rs10
-rw-r--r--src/test/bench/shootout-nbody.rs2
-rw-r--r--src/test/bench/shootout-pfib.rs2
-rw-r--r--src/test/bench/shootout-spectralnorm.rs10
-rw-r--r--src/test/compile-fail/borrowck-insert-during-each.rs2
-rw-r--r--src/test/compile-fail/borrowck-mut-boxed-vec.rs2
-rw-r--r--src/test/compile-fail/issue-2149.rs2
-rw-r--r--src/test/compile-fail/issue-2150.rs2
-rw-r--r--src/test/compile-fail/issue-5100.rs2
-rw-r--r--src/test/compile-fail/vec-mut-iter-borrow.rs2
-rw-r--r--src/test/pretty/block-comment-wchar.pp2
-rw-r--r--src/test/pretty/block-comment-wchar.rs2
-rw-r--r--src/test/pretty/for-comment.rs2
-rw-r--r--src/test/run-pass/auto-loop.rs2
-rw-r--r--src/test/run-pass/block-arg.rs2
-rw-r--r--src/test/run-pass/block-iter-1.rs2
-rw-r--r--src/test/run-pass/block-iter-2.rs2
-rw-r--r--src/test/run-pass/borrowck-borrow-from-at-vec.rs2
-rw-r--r--src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs2
-rw-r--r--src/test/run-pass/borrowck-wg-borrow-mut-to-imm-3.rs2
-rw-r--r--src/test/run-pass/break.rs4
-rw-r--r--src/test/run-pass/coerce-reborrow-imm-vec-arg.rs2
-rw-r--r--src/test/run-pass/const-vec-of-fns.rs4
-rw-r--r--src/test/run-pass/deriving-cmp-generic-enum.rs4
-rw-r--r--src/test/run-pass/deriving-cmp-generic-struct.rs4
-rw-r--r--src/test/run-pass/deriving-cmp-generic-tuple-struct.rs4
-rw-r--r--src/test/run-pass/explicit-self-closures.rs4
-rw-r--r--src/test/run-pass/fn-pattern-expected-type-2.rs2
-rw-r--r--src/test/run-pass/for-loop-fail.rs2
-rwxr-xr-xsrc/test/run-pass/generic-static-methods.rs2
-rw-r--r--src/test/run-pass/hashmap-memory.rs2
-rw-r--r--src/test/run-pass/issue-2904.rs4
-rw-r--r--src/test/run-pass/issue-3389.rs2
-rw-r--r--src/test/run-pass/issue-3563-2.rs2
-rw-r--r--src/test/run-pass/issue-3563-3.rs2
-rw-r--r--src/test/run-pass/issue-4241.rs2
-rw-r--r--src/test/run-pass/issue-4542.rs2
-rw-r--r--src/test/run-pass/linear-for-loop.rs4
-rw-r--r--src/test/run-pass/loop-scope.rs2
-rw-r--r--src/test/run-pass/monad.rs2
-rw-r--r--src/test/run-pass/morestack6.rs2
-rw-r--r--src/test/run-pass/mutability-inherits-through-fixed-length-vec.rs4
-rw-r--r--src/test/run-pass/overload-index-operator.rs2
-rw-r--r--src/test/run-pass/packed-struct-vec.rs2
-rw-r--r--src/test/run-pass/reflect-visit-data.rs2
-rw-r--r--src/test/run-pass/reflect-visit-type.rs2
-rw-r--r--src/test/run-pass/shadow.rs2
-rw-r--r--src/test/run-pass/static-impl.rs4
-rw-r--r--src/test/run-pass/task-comm-3.rs4
-rw-r--r--src/test/run-pass/trait-bounds-in-arc.rs6
-rw-r--r--src/test/run-pass/unfoldr-cross-crate.rs2
-rw-r--r--src/test/run-pass/utf8.rs2
63 files changed, 94 insertions, 94 deletions
diff --git a/src/test/auxiliary/cci_nested_lib.rs b/src/test/auxiliary/cci_nested_lib.rs
index b8e831c4503..85f968cc2e1 100644
--- a/src/test/auxiliary/cci_nested_lib.rs
+++ b/src/test/auxiliary/cci_nested_lib.rs
@@ -28,7 +28,7 @@ pub fn alist_get<A:Clone + 'static,
                  k: A)
                  -> B {
     let eq_fn = lst.eq_fn;
-    for lst.data.iter().advance |entry| {
+    foreach entry in lst.data.iter() {
         if eq_fn(entry.key.clone(), k.clone()) {
             return entry.value.clone();
         }
diff --git a/src/test/bench/graph500-bfs.rs b/src/test/bench/graph500-bfs.rs
index 00add20fb7d..10bfb4f60ed 100644
--- a/src/test/bench/graph500-bfs.rs
+++ b/src/test/bench/graph500-bfs.rs
@@ -87,7 +87,7 @@ fn make_graph(N: uint, edges: ~[(node_id, node_id)]) -> graph {
         HashSet::new()
     };
 
-    for edges.iter().advance |e| {
+    foreach e in edges.iter() {
         match *e {
             (i, j) => {
                 graph[i].insert(j);
@@ -98,7 +98,7 @@ fn make_graph(N: uint, edges: ~[(node_id, node_id)]) -> graph {
 
     do graph.consume_iter().transform |v| {
         let mut vec = ~[];
-        for v.consume().advance |i| {
+        foreach i in v.consume() {
             vec.push(i);
         }
         vec
@@ -119,7 +119,7 @@ fn gen_search_keys(graph: &[~[node_id]], n: uint) -> ~[node_id] {
         }
     }
     let mut vec = ~[];
-    for keys.consume().advance |i| {
+    foreach i in keys.consume() {
         vec.push(i);
     }
     return vec;
@@ -435,7 +435,7 @@ fn main() {
     let stop = time::precise_time_s();
 
     let mut total_edges = 0;
-    for graph.iter().advance |edges| { total_edges += edges.len(); }
+    foreach edges in graph.iter() { total_edges += edges.len(); }
 
     io::stdout().write_line(fmt!("Generated graph with %? edges in %? seconds.",
                                  total_edges / 2,
diff --git a/src/test/bench/msgsend-pipes-shared.rs b/src/test/bench/msgsend-pipes-shared.rs
index 9b0fd23d9cb..989630448be 100644
--- a/src/test/bench/msgsend-pipes-shared.rs
+++ b/src/test/bench/msgsend-pipes-shared.rs
@@ -80,7 +80,7 @@ fn run(args: &[~str]) {
         server(&from_parent, &to_parent);
     }
 
-    for worker_results.iter().advance |r| {
+    foreach r in worker_results.iter() {
         r.recv();
     }
 
diff --git a/src/test/bench/msgsend-pipes.rs b/src/test/bench/msgsend-pipes.rs
index 5ce5e902ed1..77803ecfc3c 100644
--- a/src/test/bench/msgsend-pipes.rs
+++ b/src/test/bench/msgsend-pipes.rs
@@ -76,7 +76,7 @@ fn run(args: &[~str]) {
         server(&from_parent, &to_parent);
     }
 
-    for worker_results.iter().advance |r| {
+    foreach r in worker_results.iter() {
         r.recv();
     }
 
diff --git a/src/test/bench/msgsend-ring-mutex-arcs.rs b/src/test/bench/msgsend-ring-mutex-arcs.rs
index c685057874a..621f38035e9 100644
--- a/src/test/bench/msgsend-ring-mutex-arcs.rs
+++ b/src/test/bench/msgsend-ring-mutex-arcs.rs
@@ -108,7 +108,7 @@ fn main() {
     thread_ring(0, msg_per_task, num_chan.take(), num_port);
 
     // synchronize
-    for futures.mut_iter().advance |f| {
+    foreach f in futures.mut_iter() {
         f.get()
     }
 
diff --git a/src/test/bench/msgsend-ring-pipes.rs b/src/test/bench/msgsend-ring-pipes.rs
index 9eb415e8892..27cd34c5199 100644
--- a/src/test/bench/msgsend-ring-pipes.rs
+++ b/src/test/bench/msgsend-ring-pipes.rs
@@ -94,7 +94,7 @@ fn main() {
     thread_ring(0, msg_per_task, num_chan.take(), num_port);
 
     // synchronize
-    for futures.mut_iter().advance |f| {
+    foreach f in futures.mut_iter() {
         let _ = f.get();
     }
 
diff --git a/src/test/bench/msgsend-ring-rw-arcs.rs b/src/test/bench/msgsend-ring-rw-arcs.rs
index e7def11b266..609a160aa5d 100644
--- a/src/test/bench/msgsend-ring-rw-arcs.rs
+++ b/src/test/bench/msgsend-ring-rw-arcs.rs
@@ -104,7 +104,7 @@ fn main() {
     thread_ring(0, msg_per_task, num_chan.take(), num_port);
 
     // synchronize
-    for futures.mut_iter().advance |f| {
+    foreach f in futures.mut_iter() {
         let _ = f.get();
     }
 
diff --git a/src/test/bench/shootout-chameneos-redux.rs b/src/test/bench/shootout-chameneos-redux.rs
index f218b963aaa..52548f40f82 100644
--- a/src/test/bench/shootout-chameneos-redux.rs
+++ b/src/test/bench/shootout-chameneos-redux.rs
@@ -22,8 +22,8 @@ use std::uint;
 
 fn print_complements() {
     let all = [Blue, Red, Yellow];
-    for all.iter().advance |aa| {
-        for all.iter().advance |bb| {
+    foreach aa in all.iter() {
+        foreach bb in all.iter() {
             println(show_color(*aa) + " + " + show_color(*bb) +
                     " -> " + show_color(transform(*aa, *bb)));
         }
@@ -47,7 +47,7 @@ fn show_color(cc: color) -> ~str {
 
 fn show_color_list(set: ~[color]) -> ~str {
     let mut out = ~"";
-    for set.iter().advance |col| {
+    foreach col in set.iter() {
         out.push_char(' ');
         out.push_str(show_color(*col));
     }
@@ -180,13 +180,13 @@ fn rendezvous(nn: uint, set: ~[color]) {
     }
 
     // tell each creature to stop
-    for to_creature.iter().advance |to_one| {
+    foreach to_one in to_creature.iter() {
         to_one.send(None);
     }
 
     // save each creature's meeting stats
     let mut report = ~[];
-    for to_creature.iter().advance |_to_one| {
+    foreach _to_one in to_creature.iter() {
         report.push(from_creatures_log.recv());
     }
 
@@ -194,7 +194,7 @@ fn rendezvous(nn: uint, set: ~[color]) {
     io::println(show_color_list(set));
 
     // print each creature's stats
-    for report.iter().advance |rep| {
+    foreach rep in report.iter() {
         io::println(*rep);
     }
 
diff --git a/src/test/bench/shootout-fannkuch-redux.rs b/src/test/bench/shootout-fannkuch-redux.rs
index 97c2cba3b9e..35179328c83 100644
--- a/src/test/bench/shootout-fannkuch-redux.rs
+++ b/src/test/bench/shootout-fannkuch-redux.rs
@@ -29,7 +29,7 @@ fn fannkuch_redux(n: i32) -> i32 {
                 r -= 1;
             }
 
-            for perm.mut_iter().zip(perm1.iter()).advance |(perm_i, perm1_i)| {
+            foreach (perm_i, perm1_i) in perm.mut_iter().zip(perm1.iter()) {
                 *perm_i = *perm1_i;
             }
 
diff --git a/src/test/bench/shootout-fasta-redux.rs b/src/test/bench/shootout-fasta-redux.rs
index cc23c001833..f2cc364ab10 100644
--- a/src/test/bench/shootout-fasta-redux.rs
+++ b/src/test/bench/shootout-fasta-redux.rs
@@ -58,7 +58,7 @@ static HOMO_SAPIENS: [AminoAcid, ..4] = [
 fn sum_and_scale(a: &'static [AminoAcid]) -> ~[AminoAcid] {
     let mut result = ~[];
     let mut p = 0f32;
-    for a.iter().advance |a_i| {
+    foreach a_i in a.iter() {
         let mut a_i = *a_i;
         p += a_i.p;
         a_i.p = p * LOOKUP_SCALE;
@@ -134,7 +134,7 @@ impl RandomFasta {
     fn make_lookup(a: &[AminoAcid]) -> [AminoAcid, ..LOOKUP_SIZE] {
         let mut lookup = [ NULL_AMINO_ACID, ..LOOKUP_SIZE ];
         let mut j = 0;
-        for lookup.mut_iter().enumerate().advance |(i, slot)| {
+        foreach (i, slot) in lookup.mut_iter().enumerate() {
             while a[j].p < (i as f32) {
                 j += 1;
             }
@@ -150,7 +150,7 @@ impl RandomFasta {
 
     fn nextc(&mut self) -> u8 {
         let r = self.rng(1.0);
-        for self.lookup.iter().advance |a| {
+        foreach a in self.lookup.iter() {
             if a.p >= r {
                 return a.c;
             }
diff --git a/src/test/bench/shootout-fasta.rs b/src/test/bench/shootout-fasta.rs
index 4597212b390..350d139676f 100644
--- a/src/test/bench/shootout-fasta.rs
+++ b/src/test/bench/shootout-fasta.rs
@@ -46,7 +46,7 @@ struct AminoAcids {
 fn make_cumulative(aa: ~[AminoAcids]) -> ~[AminoAcids] {
     let mut cp: u32 = 0u32;
     let mut ans: ~[AminoAcids] = ~[];
-    for aa.iter().advance |a| {
+    foreach a in aa.iter() {
         cp += a.prob;
         ans.push(AminoAcids {ch: a.ch, prob: cp});
     }
diff --git a/src/test/bench/shootout-k-nucleotide-pipes.rs b/src/test/bench/shootout-k-nucleotide-pipes.rs
index 8b4664ac060..6c40ede7682 100644
--- a/src/test/bench/shootout-k-nucleotide-pipes.rs
+++ b/src/test/bench/shootout-k-nucleotide-pipes.rs
@@ -62,7 +62,7 @@ fn sort_and_fmt(mm: &HashMap<~[u8], uint>, total: uint) -> ~str {
    let mut pairs = ~[];
 
    // map -> [(k,%)]
-   for mm.iter().advance |(key, &val)| {
+   foreach (key, &val) in mm.iter() {
       pairs.push(((*key).clone(), pct(val, total)));
    }
 
@@ -70,7 +70,7 @@ fn sort_and_fmt(mm: &HashMap<~[u8], uint>, total: uint) -> ~str {
 
    let mut buffer = ~"";
 
-   for pairs_sorted.iter().advance |kv| {
+   foreach kv in pairs_sorted.iter() {
        let (k,v) = (*kv).clone();
        unsafe {
            let b = str::raw::from_bytes(k);
@@ -215,7 +215,7 @@ fn main() {
          (_, true) => {
             let line_bytes = line.as_bytes();
 
-           for sizes.iter().enumerate().advance |(ii, _sz)| {
+           foreach (ii, _sz) in sizes.iter().enumerate() {
                let lb = line_bytes.to_owned();
                to_child[ii].send(lb);
             }
@@ -227,12 +227,12 @@ fn main() {
    }
 
    // finish...
-    for sizes.iter().enumerate().advance |(ii, _sz)| {
+    foreach (ii, _sz) in sizes.iter().enumerate() {
       to_child[ii].send(~[]);
    }
 
    // now fetch and print result messages
-    for sizes.iter().enumerate().advance |(ii, _sz)| {
+    foreach (ii, _sz) in sizes.iter().enumerate() {
       io::println(from_child[ii].recv());
    }
 }
diff --git a/src/test/bench/shootout-nbody.rs b/src/test/bench/shootout-nbody.rs
index 6d04292588d..3fbebbdb556 100644
--- a/src/test/bench/shootout-nbody.rs
+++ b/src/test/bench/shootout-nbody.rs
@@ -102,7 +102,7 @@ fn advance(bodies: &mut [Planet, ..N_BODIES], dt: f64, steps: i32) {
             }
         }
 
-        for bodies.mut_iter().advance |a| {
+        foreach a in bodies.mut_iter() {
             a.x[0] += dt * a.v[0];
             a.x[1] += dt * a.v[1];
             a.x[2] += dt * a.v[2];
diff --git a/src/test/bench/shootout-pfib.rs b/src/test/bench/shootout-pfib.rs
index 6ea22715750..9344bb63205 100644
--- a/src/test/bench/shootout-pfib.rs
+++ b/src/test/bench/shootout-pfib.rs
@@ -89,7 +89,7 @@ fn stress(num_tasks: int) {
             stress_task(i);
         }
     }
-    for results.iter().advance |r| {
+    foreach r in results.iter() {
         r.recv();
     }
 }
diff --git a/src/test/bench/shootout-spectralnorm.rs b/src/test/bench/shootout-spectralnorm.rs
index 388613482c2..893431e6bb3 100644
--- a/src/test/bench/shootout-spectralnorm.rs
+++ b/src/test/bench/shootout-spectralnorm.rs
@@ -19,16 +19,16 @@ fn A(i: i32, j: i32) -> i32 {
 
 fn dot(v: &[f64], u: &[f64]) -> f64 {
     let mut sum = 0.0;
-    for v.iter().enumerate().advance |(i, &v_i)| {
+    foreach (i, &v_i) in v.iter().enumerate() {
         sum += v_i * u[i];
     }
     sum
 }
 
 fn mult_Av(v: &mut [f64], out: &mut [f64]) {
-    for out.mut_iter().enumerate().advance |(i, out_i)| {
+    foreach (i, out_i) in out.mut_iter().enumerate() {
         let mut sum = 0.0;
-        for v.mut_iter().enumerate().advance |(j, &v_j)| {
+        foreach (j, &v_j) in v.mut_iter().enumerate() {
             sum += v_j / (A(i as i32, j as i32) as f64);
         }
         *out_i = sum;
@@ -36,9 +36,9 @@ fn mult_Av(v: &mut [f64], out: &mut [f64]) {
 }
 
 fn mult_Atv(v: &mut [f64], out: &mut [f64]) {
-    for out.mut_iter().enumerate().advance |(i, out_i)| {
+    foreach (i, out_i) in out.mut_iter().enumerate() {
         let mut sum = 0.0;
-        for v.mut_iter().enumerate().advance |(j, &v_j)| {
+        foreach (j, &v_j) in v.mut_iter().enumerate() {
             sum += v_j / (A(j as i32, i as i32) as f64);
         }
         *out_i = sum;
diff --git a/src/test/compile-fail/borrowck-insert-during-each.rs b/src/test/compile-fail/borrowck-insert-during-each.rs
index 189a0ef9d70..c535bf7daea 100644
--- a/src/test/compile-fail/borrowck-insert-during-each.rs
+++ b/src/test/compile-fail/borrowck-insert-during-each.rs
@@ -16,7 +16,7 @@ struct Foo {
 
 impl Foo {
     pub fn foo(&mut self, fun: &fn(&int)) {
-        for self.n.iter().advance |f| {
+        foreach f in self.n.iter() {
             fun(f);
         }
     }
diff --git a/src/test/compile-fail/borrowck-mut-boxed-vec.rs b/src/test/compile-fail/borrowck-mut-boxed-vec.rs
index dd72a71b215..c6aa1713db8 100644
--- a/src/test/compile-fail/borrowck-mut-boxed-vec.rs
+++ b/src/test/compile-fail/borrowck-mut-boxed-vec.rs
@@ -10,7 +10,7 @@
 
 fn main() {
     let v = @mut [ 1, 2, 3 ];
-    for v.iter().advance |_x| {
+    foreach _x in v.iter() {
         v[1] = 4; //~ ERROR cannot assign
     }
 }
diff --git a/src/test/compile-fail/issue-2149.rs b/src/test/compile-fail/issue-2149.rs
index b5a5eed6a35..6fe802b650b 100644
--- a/src/test/compile-fail/issue-2149.rs
+++ b/src/test/compile-fail/issue-2149.rs
@@ -15,7 +15,7 @@ trait vec_monad<A> {
 impl<A> vec_monad<A> for ~[A] {
     fn bind<B>(&self, f: &fn(A) -> ~[B]) {
         let mut r = fail!();
-        for self.iter().advance |elt| { r = r + f(*elt); }
+        foreach elt in self.iter() { r = r + f(*elt); }
         //~^ WARNING unreachable expression
         //~^^ ERROR the type of this value must be known
    }
diff --git a/src/test/compile-fail/issue-2150.rs b/src/test/compile-fail/issue-2150.rs
index 59789223bf2..d1e8d96a769 100644
--- a/src/test/compile-fail/issue-2150.rs
+++ b/src/test/compile-fail/issue-2150.rs
@@ -14,7 +14,7 @@
 fn fail_len(v: ~[int]) -> uint {
     let mut i = 3;
     fail!();
-    for v.iter().advance |x| { i += 1u; }
+    foreach x in v.iter() { i += 1u; }
     //~^ ERROR: unreachable statement
     return i;
 }
diff --git a/src/test/compile-fail/issue-5100.rs b/src/test/compile-fail/issue-5100.rs
index 7a6b8c5606b..9fc84c98cf5 100644
--- a/src/test/compile-fail/issue-5100.rs
+++ b/src/test/compile-fail/issue-5100.rs
@@ -37,7 +37,7 @@ fn main() {
              ('c', 'd'),
              ('e', 'f')];
 
-    for v.iter().advance |&(x,y)| {} // should be OK
+    foreach &(x,y) in v.iter() {} // should be OK
 
     // Make sure none of the errors above were fatal
     let x: char = true; //~ ERROR expected `char` but found `bool`
diff --git a/src/test/compile-fail/vec-mut-iter-borrow.rs b/src/test/compile-fail/vec-mut-iter-borrow.rs
index a4a488d9edd..ef197a10c7d 100644
--- a/src/test/compile-fail/vec-mut-iter-borrow.rs
+++ b/src/test/compile-fail/vec-mut-iter-borrow.rs
@@ -11,7 +11,7 @@
 fn main() {
     let mut xs = ~[1, 2, 3, 4];
 
-    for xs.mut_iter().advance |x| {
+    foreach x in xs.mut_iter() {
         xs.push(1) //~ ERROR cannot borrow `xs` as mutable
     }
 }
diff --git a/src/test/pretty/block-comment-wchar.pp b/src/test/pretty/block-comment-wchar.pp
index c666950034a..d1629885c7a 100644
--- a/src/test/pretty/block-comment-wchar.pp
+++ b/src/test/pretty/block-comment-wchar.pp
@@ -108,7 +108,7 @@ fn main() {
          '\xA0', '\u1680', '\u180E', '\u2000', '\u2001', '\u2002', '\u2003',
          '\u2004', '\u2005', '\u2006', '\u2007', '\u2008', '\u2009', '\u200A',
          '\u2028', '\u2029', '\u202F', '\u205F', '\u3000'];
-    for chars.iter().advance |c| {
+    foreach c in chars.iter() {
         let ws = c.is_whitespace();
         println(fmt!("%? %?" , c , ws));
     }
diff --git a/src/test/pretty/block-comment-wchar.rs b/src/test/pretty/block-comment-wchar.rs
index f0d46f39cdf..822a71da3c8 100644
--- a/src/test/pretty/block-comment-wchar.rs
+++ b/src/test/pretty/block-comment-wchar.rs
@@ -102,7 +102,7 @@ fn main() {
          '\xA0', '\u1680', '\u180E', '\u2000', '\u2001', '\u2002', '\u2003',
          '\u2004', '\u2005', '\u2006', '\u2007', '\u2008', '\u2009', '\u200A',
          '\u2028', '\u2029', '\u202F', '\u205F', '\u3000'];
-    for chars.iter().advance |c| {
+    foreach c in chars.iter() {
         let ws = c.is_whitespace();
         println(fmt!("%? %?", c , ws));
     }
diff --git a/src/test/pretty/for-comment.rs b/src/test/pretty/for-comment.rs
index 15631337d2a..750c8dd8495 100644
--- a/src/test/pretty/for-comment.rs
+++ b/src/test/pretty/for-comment.rs
@@ -12,7 +12,7 @@
 
 fn f(v: &[int]) {
     let mut n = 0;
-    for v.iter().advance |e| {
+    foreach e in v.iter() {
         n = *e; // This comment once triggered pretty printer bug
     }
 }
diff --git a/src/test/run-pass/auto-loop.rs b/src/test/run-pass/auto-loop.rs
index 185a5a6407c..37ac5f85a9e 100644
--- a/src/test/run-pass/auto-loop.rs
+++ b/src/test/run-pass/auto-loop.rs
@@ -11,7 +11,7 @@
 pub fn main() {
     let mut sum = 0;
     let xs = ~[1, 2, 3, 4, 5];
-    for xs.iter().advance |x| {
+    foreach x in xs.iter() {
         sum += *x;
     }
     assert_eq!(sum, 15);
diff --git a/src/test/run-pass/block-arg.rs b/src/test/run-pass/block-arg.rs
index 466f2def290..313d5a62554 100644
--- a/src/test/run-pass/block-arg.rs
+++ b/src/test/run-pass/block-arg.rs
@@ -15,7 +15,7 @@ pub fn main() {
     let v = ~[-1f, 0f, 1f, 2f, 3f];
 
     // Statement form does not require parentheses:
-    for v.iter().advance |i| {
+    foreach i in v.iter() {
         info!("%?", *i);
     }
 
diff --git a/src/test/run-pass/block-iter-1.rs b/src/test/run-pass/block-iter-1.rs
index 6da1f9131a5..d9c9670c858 100644
--- a/src/test/run-pass/block-iter-1.rs
+++ b/src/test/run-pass/block-iter-1.rs
@@ -10,7 +10,7 @@
 
 // xfail-fast
 
-fn iter_vec<T>(v: ~[T], f: &fn(&T)) { for v.iter().advance |x| { f(x); } }
+fn iter_vec<T>(v: ~[T], f: &fn(&T)) { foreach x in v.iter() { f(x); } }
 
 pub fn main() {
     let v = ~[1, 2, 3, 4, 5, 6, 7];
diff --git a/src/test/run-pass/block-iter-2.rs b/src/test/run-pass/block-iter-2.rs
index 3092cd5338c..e51ca5bcc95 100644
--- a/src/test/run-pass/block-iter-2.rs
+++ b/src/test/run-pass/block-iter-2.rs
@@ -10,7 +10,7 @@
 
 // xfail-fast
 
-fn iter_vec<T>(v: ~[T], f: &fn(&T)) { for v.iter().advance |x| { f(x); } }
+fn iter_vec<T>(v: ~[T], f: &fn(&T)) { foreach x in v.iter() { f(x); } }
 
 pub fn main() {
     let v = ~[1, 2, 3, 4, 5];
diff --git a/src/test/run-pass/borrowck-borrow-from-at-vec.rs b/src/test/run-pass/borrowck-borrow-from-at-vec.rs
index 21ea875b2f4..3b1e28ab915 100644
--- a/src/test/run-pass/borrowck-borrow-from-at-vec.rs
+++ b/src/test/run-pass/borrowck-borrow-from-at-vec.rs
@@ -10,7 +10,7 @@
 
 fn sum_slice(x: &[int]) -> int {
     let mut sum = 0;
-    for x.iter().advance |i| { sum += *i; }
+    foreach i in x.iter() { sum += *i; }
     return sum;
 }
 
diff --git a/src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs b/src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs
index 8f74e6cdc29..c6fc84b2054 100644
--- a/src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs
+++ b/src/test/run-pass/borrowck-mut-vec-as-imm-slice.rs
@@ -10,7 +10,7 @@
 
 fn want_slice(v: &[int]) -> int {
     let mut sum = 0;
-    for v.iter().advance |i| { sum += *i; }
+    foreach i in v.iter() { sum += *i; }
     sum
 }
 
diff --git a/src/test/run-pass/borrowck-wg-borrow-mut-to-imm-3.rs b/src/test/run-pass/borrowck-wg-borrow-mut-to-imm-3.rs
index 612a472cde5..c6ef7111043 100644
--- a/src/test/run-pass/borrowck-wg-borrow-mut-to-imm-3.rs
+++ b/src/test/run-pass/borrowck-wg-borrow-mut-to-imm-3.rs
@@ -4,7 +4,7 @@ struct Wizard {
 
 impl Wizard {
     pub fn cast(&mut self) {
-        for self.spells.iter().advance |&spell| {
+        foreach &spell in self.spells.iter() {
             println(spell);
         }
     }
diff --git a/src/test/run-pass/break.rs b/src/test/run-pass/break.rs
index 85c6f90a742..46b6eec6fa6 100644
--- a/src/test/run-pass/break.rs
+++ b/src/test/run-pass/break.rs
@@ -17,7 +17,7 @@ pub fn main() {
     loop { i += 1; if i == 20 { break; } }
     assert_eq!(i, 20);
     let xs = [1, 2, 3, 4, 5, 6];
-    for xs.iter().advance |x| {
+    foreach x in xs.iter() {
         if *x == 3 { break; } assert!((*x <= 3));
     }
     i = 0;
@@ -28,7 +28,7 @@ pub fn main() {
         if i >= 10 { break; }
     }
     let ys = ~[1, 2, 3, 4, 5, 6];
-    for ys.iter().advance |x| {
+    foreach x in ys.iter() {
         if *x % 2 == 0 { loop; }
         assert!((*x % 2 != 0));
     }
diff --git a/src/test/run-pass/coerce-reborrow-imm-vec-arg.rs b/src/test/run-pass/coerce-reborrow-imm-vec-arg.rs
index f0c5b58d155..c31b72c1bd9 100644
--- a/src/test/run-pass/coerce-reborrow-imm-vec-arg.rs
+++ b/src/test/run-pass/coerce-reborrow-imm-vec-arg.rs
@@ -1,6 +1,6 @@
 fn sum(x: &[int]) -> int {
     let mut sum = 0;
-    for x.iter().advance |y| { sum += *y; }
+    foreach y in x.iter() { sum += *y; }
     return sum;
 }
 
diff --git a/src/test/run-pass/const-vec-of-fns.rs b/src/test/run-pass/const-vec-of-fns.rs
index 45302363c38..07655cf3525 100644
--- a/src/test/run-pass/const-vec-of-fns.rs
+++ b/src/test/run-pass/const-vec-of-fns.rs
@@ -24,6 +24,6 @@ struct S<'self>(&'self fn());
 static closures: &'static [S<'static>] = &[S(f), S(f)];
 
 pub fn main() {
-    for bare_fns.iter().advance |&bare_fn| { bare_fn() }
-    for closures.iter().advance |&closure| { (*closure)() }
+    foreach &bare_fn in bare_fns.iter() { bare_fn() }
+    foreach &closure in closures.iter() { (*closure)() }
 }
diff --git a/src/test/run-pass/deriving-cmp-generic-enum.rs b/src/test/run-pass/deriving-cmp-generic-enum.rs
index e5cf1536771..0b070a6ec7a 100644
--- a/src/test/run-pass/deriving-cmp-generic-enum.rs
+++ b/src/test/run-pass/deriving-cmp-generic-enum.rs
@@ -25,8 +25,8 @@ pub fn main() {
     // in order for both Ord and TotalOrd
     let es = [e0, e11, e12, e21, e22];
 
-    for es.iter().enumerate().advance |(i, e1)| {
-        for es.iter().enumerate().advance |(j, e2)| {
+    foreach (i, e1) in es.iter().enumerate() {
+        foreach (j, e2) in es.iter().enumerate() {
             let ord = i.cmp(&j);
 
             let eq = i == j;
diff --git a/src/test/run-pass/deriving-cmp-generic-struct.rs b/src/test/run-pass/deriving-cmp-generic-struct.rs
index 426bfd7eb2f..026994590a0 100644
--- a/src/test/run-pass/deriving-cmp-generic-struct.rs
+++ b/src/test/run-pass/deriving-cmp-generic-struct.rs
@@ -21,8 +21,8 @@ pub fn main() {
     // in order for both Ord and TotalOrd
     let ss = [s1, s2];
 
-    for ss.iter().enumerate().advance |(i, s1)| {
-        for ss.iter().enumerate().advance |(j, s2)| {
+    foreach (i, s1) in ss.iter().enumerate() {
+        foreach (j, s2) in ss.iter().enumerate() {
             let ord = i.cmp(&j);
 
             let eq = i == j;
diff --git a/src/test/run-pass/deriving-cmp-generic-tuple-struct.rs b/src/test/run-pass/deriving-cmp-generic-tuple-struct.rs
index 0acebdf05f4..4d7701703db 100644
--- a/src/test/run-pass/deriving-cmp-generic-tuple-struct.rs
+++ b/src/test/run-pass/deriving-cmp-generic-tuple-struct.rs
@@ -19,8 +19,8 @@ pub fn main() {
     // in order for both Ord and TotalOrd
     let tss = [ts1, ts2];
 
-    for tss.iter().enumerate().advance |(i, ts1)| {
-        for tss.iter().enumerate().advance |(j, ts2)| {
+    foreach (i, ts1) in tss.iter().enumerate() {
+        foreach (j, ts2) in tss.iter().enumerate() {
             let ord = i.cmp(&j);
 
             let eq = i == j;
diff --git a/src/test/run-pass/explicit-self-closures.rs b/src/test/run-pass/explicit-self-closures.rs
index 1b87c16b4b9..10f825e32cd 100644
--- a/src/test/run-pass/explicit-self-closures.rs
+++ b/src/test/run-pass/explicit-self-closures.rs
@@ -16,10 +16,10 @@ struct Box {
 
 impl Box {
     pub fn set_many(&mut self, xs: &[uint]) {
-        for xs.iter().advance |x| { self.x = *x; }
+        foreach x in xs.iter() { self.x = *x; }
     }
     pub fn set_many2(@mut self, xs: &[uint]) {
-        for xs.iter().advance |x| { self.x = *x; }
+        foreach x in xs.iter() { self.x = *x; }
     }
 }
 
diff --git a/src/test/run-pass/fn-pattern-expected-type-2.rs b/src/test/run-pass/fn-pattern-expected-type-2.rs
index bb8df4bb33f..bf36d86c849 100644
--- a/src/test/run-pass/fn-pattern-expected-type-2.rs
+++ b/src/test/run-pass/fn-pattern-expected-type-2.rs
@@ -10,7 +10,7 @@
 
 pub fn main() {
     let v : &[(int,int)] = &[ (1, 2), (3, 4), (5, 6) ];
-    for v.iter().advance |&(x, y)| {
+    foreach &(x, y) in v.iter() {
         println(y.to_str());
         println(x.to_str());
     }
diff --git a/src/test/run-pass/for-loop-fail.rs b/src/test/run-pass/for-loop-fail.rs
index bf916dfa2bd..68d075834f5 100644
--- a/src/test/run-pass/for-loop-fail.rs
+++ b/src/test/run-pass/for-loop-fail.rs
@@ -8,4 +8,4 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
-pub fn main() { let x: ~[int] = ~[]; for x.iter().advance |_| { fail!("moop"); } }
+pub fn main() { let x: ~[int] = ~[]; foreach _ in x.iter() { fail!("moop"); } }
diff --git a/src/test/run-pass/generic-static-methods.rs b/src/test/run-pass/generic-static-methods.rs
index 532f4bc7ffb..388f61c1b03 100755
--- a/src/test/run-pass/generic-static-methods.rs
+++ b/src/test/run-pass/generic-static-methods.rs
@@ -15,7 +15,7 @@ trait vec_utils<T> {
 impl<T> vec_utils<T> for ~[T] {
     fn map_<U>(x: &~[T], f: &fn(&T) -> U) -> ~[U] {
         let mut r = ~[];
-        for x.iter().advance |elt| {
+        foreach elt in x.iter() {
             r.push(f(elt));
         }
         r
diff --git a/src/test/run-pass/hashmap-memory.rs b/src/test/run-pass/hashmap-memory.rs
index ecf6546e741..3d41065365c 100644
--- a/src/test/run-pass/hashmap-memory.rs
+++ b/src/test/run-pass/hashmap-memory.rs
@@ -31,7 +31,7 @@ mod map_reduce {
     enum ctrl_proto { find_reducer(~[u8], Chan<int>), mapper_done, }
 
     fn start_mappers(ctrl: SharedChan<ctrl_proto>, inputs: ~[~str]) {
-        for inputs.iter().advance |i| {
+        foreach i in inputs.iter() {
             let ctrl = ctrl.clone();
             let i = i.clone();
             task::spawn(|| map_task(ctrl.clone(), i.clone()) );
diff --git a/src/test/run-pass/issue-2904.rs b/src/test/run-pass/issue-2904.rs
index 48f40e2eda7..092d5e5813b 100644
--- a/src/test/run-pass/issue-2904.rs
+++ b/src/test/run-pass/issue-2904.rs
@@ -67,13 +67,13 @@ fn read_board_grid<rdr:'static + io::Reader>(input: rdr) -> ~[~[square]] {
     let mut grid = ~[];
     for input.each_line |line| {
         let mut row = ~[];
-        for line.iter().advance |c| {
+        foreach c in line.iter() {
             row.push(square_from_char(c))
         }
         grid.push(row)
     }
     let width = grid[0].len();
-    for grid.iter().advance |row| { assert!(row.len() == width) }
+    foreach row in grid.iter() { assert!(row.len() == width) }
     grid
 }
 
diff --git a/src/test/run-pass/issue-3389.rs b/src/test/run-pass/issue-3389.rs
index 8dcf4ed4a48..84d3db444e9 100644
--- a/src/test/run-pass/issue-3389.rs
+++ b/src/test/run-pass/issue-3389.rs
@@ -14,7 +14,7 @@ struct trie_node {
 }
 
 fn print_str_vector(vector: ~[~str]) {
-    for vector.iter().advance |string| {
+    foreach string in vector.iter() {
         println(*string);
     }
 }
diff --git a/src/test/run-pass/issue-3563-2.rs b/src/test/run-pass/issue-3563-2.rs
index 0b49e43235a..7e9b637516f 100644
--- a/src/test/run-pass/issue-3563-2.rs
+++ b/src/test/run-pass/issue-3563-2.rs
@@ -11,7 +11,7 @@
 trait Canvas {
     fn add_point(&self, point: &int);
     fn add_points(&self, shapes: &[int]) {
-        for shapes.iter().advance |pt| {
+        foreach pt in shapes.iter() {
             self.add_point(pt)
         }
     }
diff --git a/src/test/run-pass/issue-3563-3.rs b/src/test/run-pass/issue-3563-3.rs
index 2465cd3dd59..b85ddf95a54 100644
--- a/src/test/run-pass/issue-3563-3.rs
+++ b/src/test/run-pass/issue-3563-3.rs
@@ -120,7 +120,7 @@ trait Canvas {
     // Unlike interfaces traits support default implementations.
     // Got an ICE as soon as I added this method.
     fn add_points(&mut self, shapes: &[Point]) {
-        for shapes.iter().advance |pt| {self.add_point(*pt)};
+        foreach pt in shapes.iter() {self.add_point(*pt)};
     }
 }
 
diff --git a/src/test/run-pass/issue-4241.rs b/src/test/run-pass/issue-4241.rs
index 857ecb3f9cb..3bfb2ef3853 100644
--- a/src/test/run-pass/issue-4241.rs
+++ b/src/test/run-pass/issue-4241.rs
@@ -102,7 +102,7 @@ priv fn cmd_to_str(cmd: ~[~str]) -> ~str {
   let mut res = ~"*";
   res.push_str(cmd.len().to_str());
   res.push_str("\r\n");
-    for cmd.iter().advance |s| {
+    foreach s in cmd.iter() {
     res.push_str([~"$", s.len().to_str(), ~"\r\n",
                   (*s).clone(), ~"\r\n"].concat() );
     }
diff --git a/src/test/run-pass/issue-4542.rs b/src/test/run-pass/issue-4542.rs
index 4aa83b853de..da46eb42152 100644
--- a/src/test/run-pass/issue-4542.rs
+++ b/src/test/run-pass/issue-4542.rs
@@ -12,7 +12,7 @@ use std::os;
 
 pub fn main() {
     let x = os::args();
-    for x.iter().advance |arg| {
+    foreach arg in x.iter() {
         match arg.clone() {
             s => { }
         }
diff --git a/src/test/run-pass/linear-for-loop.rs b/src/test/run-pass/linear-for-loop.rs
index c4e73dfcda5..c6002afded7 100644
--- a/src/test/run-pass/linear-for-loop.rs
+++ b/src/test/run-pass/linear-for-loop.rs
@@ -11,12 +11,12 @@
 pub fn main() {
     let x = ~[1, 2, 3];
     let mut y = 0;
-    for x.iter().advance |i| { info!(*i); y += *i; }
+    foreach i in x.iter() { info!(*i); y += *i; }
     info!(y);
     assert_eq!(y, 6);
     let s = ~"hello there";
     let mut i: int = 0;
-    for s.byte_iter().advance |c| {
+    foreach c in s.byte_iter() {
         if i == 0 { assert!((c == 'h' as u8)); }
         if i == 1 { assert!((c == 'e' as u8)); }
         if i == 2 { assert!((c == 'l' as u8)); }
diff --git a/src/test/run-pass/loop-scope.rs b/src/test/run-pass/loop-scope.rs
index aec16e2d47b..746487f8aff 100644
--- a/src/test/run-pass/loop-scope.rs
+++ b/src/test/run-pass/loop-scope.rs
@@ -11,6 +11,6 @@
 pub fn main() {
     let x = ~[10, 20, 30];
     let mut sum = 0;
-    for x.iter().advance |x| { sum += *x; }
+    foreach x in x.iter() { sum += *x; }
     assert_eq!(sum, 60);
 }
diff --git a/src/test/run-pass/monad.rs b/src/test/run-pass/monad.rs
index eaf9eafa2a5..316f872b82f 100644
--- a/src/test/run-pass/monad.rs
+++ b/src/test/run-pass/monad.rs
@@ -19,7 +19,7 @@ trait vec_monad<A> {
 impl<A> vec_monad<A> for ~[A] {
     fn bind<B>(&self, f: &fn(&A) -> ~[B]) -> ~[B] {
         let mut r = ~[];
-        for self.iter().advance |elt| {
+        foreach elt in self.iter() {
             r.push_all_move(f(elt));
         }
         r
diff --git a/src/test/run-pass/morestack6.rs b/src/test/run-pass/morestack6.rs
index cbbead6dbda..bfb68d296c1 100644
--- a/src/test/run-pass/morestack6.rs
+++ b/src/test/run-pass/morestack6.rs
@@ -65,7 +65,7 @@ pub fn main() {
         calllink10
     ];
     let mut rng = rand::rng();
-    for fns.iter().advance |f| {
+    foreach f in fns.iter() {
         let f = *f;
         let sz = rng.next() % 256u32 + 256u32;
         let frame_backoff = rng.next() % 10u32 + 1u32;
diff --git a/src/test/run-pass/mutability-inherits-through-fixed-length-vec.rs b/src/test/run-pass/mutability-inherits-through-fixed-length-vec.rs
index b0ce6556cb6..5de4b74922c 100644
--- a/src/test/run-pass/mutability-inherits-through-fixed-length-vec.rs
+++ b/src/test/run-pass/mutability-inherits-through-fixed-length-vec.rs
@@ -16,8 +16,8 @@ fn test1() {
 
 fn test2() {
     let mut ints = [0, ..32];
-    for ints.mut_iter().advance |i| { *i += 22; }
-    for ints.iter().advance |i| { assert!(*i == 22); }
+    foreach i in ints.mut_iter() { *i += 22; }
+    foreach i in ints.iter() { assert!(*i == 22); }
 }
 
 pub fn main() {
diff --git a/src/test/run-pass/overload-index-operator.rs b/src/test/run-pass/overload-index-operator.rs
index 824cacc620d..706168844f5 100644
--- a/src/test/run-pass/overload-index-operator.rs
+++ b/src/test/run-pass/overload-index-operator.rs
@@ -31,7 +31,7 @@ impl<K,V> AssociationList<K,V> {
 
 impl<K:Eq,V:Clone> Index<K,V> for AssociationList<K,V> {
     fn index(&self, index: &K) -> V {
-        for self.pairs.iter().advance |pair| {
+        foreach pair in self.pairs.iter() {
             if pair.key == *index {
                 return pair.value.clone();
             }
diff --git a/src/test/run-pass/packed-struct-vec.rs b/src/test/run-pass/packed-struct-vec.rs
index de34d589afc..0f84adcc941 100644
--- a/src/test/run-pass/packed-struct-vec.rs
+++ b/src/test/run-pass/packed-struct-vec.rs
@@ -27,7 +27,7 @@ fn main() {
         assert_eq!(foos[i], Foo { bar: 1, baz: 2});
     }
 
-    for foos.iter().advance |&foo| {
+    foreach &foo in foos.iter() {
         assert_eq!(foo, Foo { bar: 1, baz: 2 });
     }
 }
diff --git a/src/test/run-pass/reflect-visit-data.rs b/src/test/run-pass/reflect-visit-data.rs
index e91537bec3b..090b5f549d4 100644
--- a/src/test/run-pass/reflect-visit-data.rs
+++ b/src/test/run-pass/reflect-visit-data.rs
@@ -666,7 +666,7 @@ pub fn main() {
         visit_tydesc(td, v);
 
         let r = u.vals.clone();
-        for r.iter().advance |s| {
+        foreach s in r.iter() {
             printfln!("val: %s", *s);
         }
         error!("%?", u.vals.clone());
diff --git a/src/test/run-pass/reflect-visit-type.rs b/src/test/run-pass/reflect-visit-type.rs
index dc639bad75e..e80dc2269c2 100644
--- a/src/test/run-pass/reflect-visit-type.rs
+++ b/src/test/run-pass/reflect-visit-type.rs
@@ -170,7 +170,7 @@ pub fn main() {
     visit_ty::<i16>(vv);
     visit_ty::<~[int]>(vv);
 
-    for v.types.iter().advance |s| {
+    foreach s in v.types.iter() {
         printfln!("type: %s", (*s).clone());
     }
     assert_eq!((*v.types).clone(), ~[~"bool", ~"int", ~"i8", ~"i16", ~"[", ~"int", ~"]"]);
diff --git a/src/test/run-pass/shadow.rs b/src/test/run-pass/shadow.rs
index 7486005f7e5..5cb2f9b8727 100644
--- a/src/test/run-pass/shadow.rs
+++ b/src/test/run-pass/shadow.rs
@@ -16,7 +16,7 @@ fn foo(c: ~[int]) {
 
     match none::<int> {
         some::<int>(_) => {
-            for c.iter().advance |i| {
+            foreach i in c.iter() {
                 info!(a);
                 let a = 17;
                 b.push(a);
diff --git a/src/test/run-pass/static-impl.rs b/src/test/run-pass/static-impl.rs
index 1588bd1a5a5..4f86c87518a 100644
--- a/src/test/run-pass/static-impl.rs
+++ b/src/test/run-pass/static-impl.rs
@@ -48,10 +48,10 @@ trait vec_utils<T> {
 
 impl<T> vec_utils<T> for ~[T] {
     fn length_(&self) -> uint { self.len() }
-    fn iter_(&self, f: &fn(&T)) { for self.iter().advance |x| { f(x); } }
+    fn iter_(&self, f: &fn(&T)) { foreach x in self.iter() { f(x); } }
     fn map_<U>(&self, f: &fn(&T) -> U) -> ~[U] {
         let mut r = ~[];
-        for self.iter().advance |elt| {
+        foreach elt in self.iter() {
             r.push(f(elt));
         }
         r
diff --git a/src/test/run-pass/task-comm-3.rs b/src/test/run-pass/task-comm-3.rs
index 6c7405ef441..6b2516f5921 100644
--- a/src/test/run-pass/task-comm-3.rs
+++ b/src/test/run-pass/task-comm-3.rs
@@ -54,7 +54,7 @@ fn test00() {
 
     // Read from spawned tasks...
     let mut sum = 0;
-    for results.iter().advance |r| {
+    foreach r in results.iter() {
         i = 0;
         while i < number_of_messages {
             let value = po.recv();
@@ -64,7 +64,7 @@ fn test00() {
     }
 
     // Join spawned tasks...
-    for results.iter().advance |r| { r.recv(); }
+    foreach r in results.iter() { r.recv(); }
 
     info!("Completed: Final number is: ");
     error!(sum);
diff --git a/src/test/run-pass/trait-bounds-in-arc.rs b/src/test/run-pass/trait-bounds-in-arc.rs
index 0677b63b5aa..e0be4ccf810 100644
--- a/src/test/run-pass/trait-bounds-in-arc.rs
+++ b/src/test/run-pass/trait-bounds-in-arc.rs
@@ -84,20 +84,20 @@ fn main() {
 
 fn check_legs(arc: arc::Arc<~[~Pet:Freeze+Send]>) {
     let mut legs = 0;
-    for arc.get().iter().advance |pet| {
+    foreach pet in arc.get().iter() {
         legs += pet.num_legs();
     }
     assert!(legs == 12);
 }
 fn check_names(arc: arc::Arc<~[~Pet:Freeze+Send]>) {
-    for arc.get().iter().advance |pet| {
+    foreach pet in arc.get().iter() {
         do pet.name |name| {
             assert!(name[0] == 'a' as u8 && name[1] == 'l' as u8);
         }
     }
 }
 fn check_pedigree(arc: arc::Arc<~[~Pet:Freeze+Send]>) {
-    for arc.get().iter().advance |pet| {
+    foreach pet in arc.get().iter() {
         assert!(pet.of_good_pedigree());
     }
 }
diff --git a/src/test/run-pass/unfoldr-cross-crate.rs b/src/test/run-pass/unfoldr-cross-crate.rs
index 7a86116d3ec..a5b85681420 100644
--- a/src/test/run-pass/unfoldr-cross-crate.rs
+++ b/src/test/run-pass/unfoldr-cross-crate.rs
@@ -26,7 +26,7 @@ fn main() {
 
     let mut it = Unfoldr::new(0, count);
     let mut i = 0;
-    for it.advance |counted| {
+    foreach counted in it {
         assert_eq!(counted, i);
         i += 1;
     }
diff --git a/src/test/run-pass/utf8.rs b/src/test/run-pass/utf8.rs
index 955e6118c83..1ebe72d19c1 100644
--- a/src/test/run-pass/utf8.rs
+++ b/src/test/run-pass/utf8.rs
@@ -41,7 +41,7 @@ pub fn main() {
 
     fn check_str_eq(a: ~str, b: ~str) {
         let mut i: int = 0;
-        for a.byte_iter().advance |ab| {
+        foreach ab in a.byte_iter() {
             info!(i);
             info!(ab);
             let bb: u8 = b[i];