rust/src/test/run-pass/issue-783.rs
2012-10-04 16:48:57 -07:00

28 lines
429 B
Rust

extern mod std;
use comm::*;
use task::spawn;
fn a() {
fn doit() {
fn b(c: Chan<Chan<int>>) {
let p = Port();
send(c, Chan(&p));
}
let p = Port();
let ch = Chan(&p);
spawn(|| b(ch) );
recv(p);
}
let mut i = 0;
while i < 100 {
doit();
i += 1;
}
}
fn main() {
for iter::repeat(100u) {
spawn(|| a() );
}
}