Skip to content

Commit 6662f66

Browse files
committed
---
yaml --- r: 5867 b: refs/heads/master c: ac671c3 h: refs/heads/master i: 5865: e5b4836 5863: 92da217 v: v3
1 parent 466b4a0 commit 6662f66

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+215
-215
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
---
2-
refs/heads/master: 4341e50e3a115c00474ecae24b6e1c45fd00cfeb
2+
refs/heads/master: ac671c31725b5bd42ad902195ac74f16c3c6c1ad

trunk/src/test/bench/shootout-pfib.rs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,23 +27,24 @@ import std::comm::send;
2727
import std::comm::recv;
2828

2929
fn fib(n: int) -> int {
30-
fn pfib(c: chan<int>, n: int) {
30+
fn# pfib(args: (chan<int>, int)) {
31+
let (c, n) = args;
3132
if n == 0 {
3233
send(c, 0);
3334
} else if n <= 2 {
3435
send(c, 1);
3536
} else {
3637
let p = port();
3738

38-
let t1 = task::spawn(bind pfib(chan(p), n - 1));
39-
let t2 = task::spawn(bind pfib(chan(p), n - 2));
39+
let t1 = task::spawn2((chan(p), n - 1), pfib);
40+
let t2 = task::spawn2((chan(p), n - 2), pfib);
4041

4142
send(c, recv(p) + recv(p));
4243
}
4344
}
4445

4546
let p = port();
46-
let t = task::spawn(bind pfib(chan(p), n));
47+
let t = task::spawn2((chan(p), n), pfib);
4748
ret recv(p);
4849
}
4950

@@ -61,7 +62,7 @@ fn parse_opts(argv: [str]) -> config {
6162
}
6263
}
6364

64-
fn stress_task(id: int) {
65+
fn# stress_task(&&id: int) {
6566
let i = 0;
6667
while true {
6768
let n = 15;
@@ -74,7 +75,7 @@ fn stress_task(id: int) {
7475
fn stress(num_tasks: int) {
7576
let tasks = [];
7677
for each i: int in range(0, num_tasks) {
77-
tasks += [task::spawn_joinable(bind stress_task(i))];
78+
tasks += [task::spawn_joinable2(copy i, stress_task)];
7879
}
7980
for t in tasks { task::join(t); }
8081
}

trunk/src/test/bench/task-perf-spawnalot.rs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,21 @@ import std::task;
44
import std::uint;
55
import std::str;
66

7-
fn f(n: uint) {
7+
fn# f(&&n: uint) {
88
let i = 0u;
99
while i < n {
10-
let thunk = g;
11-
task::join(task::spawn_joinable(thunk));
10+
task::join(task::spawn_joinable2((), g));
1211
i += 1u;
1312
}
1413
}
1514

16-
fn g() { }
15+
fn# g(&&_i: ()) { }
1716

1817
fn main(args: [str]) {
1918
let n =
2019
if vec::len(args) < 2u {
2120
10u
2221
} else { uint::parse_buf(str::bytes(args[1]), 10u) };
2322
let i = 0u;
24-
while i < n { task::spawn(bind f(n)); i += 1u; }
23+
while i < n { task::spawn2(copy n, f); i += 1u; }
2524
}

trunk/src/test/bench/task-perf-vector-party.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import std::uint;
99
import std::str;
1010
import std::task;
1111

12-
fn f(n: uint) {
12+
fn# f(&&n: uint) {
1313
for each i in uint::range(0u, n) {
1414
let v: [u8] = [];
1515
vec::reserve(v, 1000u);
@@ -21,5 +21,5 @@ fn main(args: [str]) {
2121
if vec::len(args) < 2u {
2222
100u
2323
} else { uint::parse_buf(str::bytes(args[1]), 10u) };
24-
for each i in uint::range(0u, 100u) { task::spawn(bind f(n)); }
24+
for each i in uint::range(0u, 100u) { task::spawn2(copy n, f); }
2525
}

trunk/src/test/bench/task-perf-word-count.rs

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -70,12 +70,13 @@ mod map_reduce {
7070
[joinable_task] {
7171
let tasks = [];
7272
for i: str in inputs {
73-
tasks += [task::spawn_joinable(bind map_task(ctrl, i))];
73+
tasks += [task::spawn_joinable2((ctrl, i), map_task)];
7474
}
7575
ret tasks;
7676
}
7777

78-
fn map_task(ctrl: chan<ctrl_proto>, input: str) {
78+
fn# map_task(args: (chan<ctrl_proto>, str)) {
79+
let (ctrl, input) = args;
7980
// log_err "map_task " + input;
8081
let intermediates = map::new_str_hash();
8182

@@ -107,7 +108,8 @@ mod map_reduce {
107108
send(ctrl, mapper_done);
108109
}
109110

110-
fn reduce_task(key: str, out: chan<chan<reduce_proto>>) {
111+
fn# reduce_task(args: (str, chan<chan<reduce_proto>>)) {
112+
let (key, out) = args;
111113
let p = port();
112114

113115
send(out, chan(p));
@@ -169,7 +171,7 @@ mod map_reduce {
169171
// log_err "creating new reducer for " + k;
170172
let p = port();
171173
tasks +=
172-
[task::spawn_joinable(bind reduce_task(k, chan(p)))];
174+
[task::spawn_joinable2((k, chan(p)), reduce_task)];
173175
c = recv(p);
174176
reducers.insert(k, c);
175177
}

trunk/src/test/compile-fail/spawn-non-nil-fn.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,6 @@
33
use std;
44
import std::task;
55

6-
fn f(x: int) -> int { ret x; }
6+
fn# f(&&x: int) -> int { ret x; }
77

8-
fn main() { task::spawn(bind f(10)); }
8+
fn main() { task::spawn2(10, f); }

trunk/src/test/run-fail/linked-failure.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,10 @@ import std::task;
66
import std::comm::port;
77
import std::comm::recv;
88

9-
fn child() { assert (1 == 2); }
9+
fn# child(&&_i: ()) { assert (1 == 2); }
1010

1111
fn main() {
1212
let p = port::<int>();
13-
let f = child;
14-
task::spawn(f);
13+
task::spawn2((), child);
1514
let x = recv(p);
1615
}

trunk/src/test/run-fail/linked-failure2.rs

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,10 @@ import std::comm::chan;
77
import std::comm::port;
88
import std::comm::recv;
99

10-
fn child() { fail; }
10+
fn# child(&&_i: ()) { fail; }
1111

1212
fn main() {
1313
let p = port::<int>();
14-
let f = child;
15-
task::spawn(f);
14+
task::spawn2((), child);
1615
task::yield();
1716
}

trunk/src/test/run-fail/linked-failure3.rs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,16 @@ import std::task;
66
import std::comm::port;
77
import std::comm::recv;
88

9-
fn grandchild() { fail; }
9+
fn# grandchild(&&_i: ()) { fail; }
1010

11-
fn child() {
11+
fn# child(&&_i: ()) {
1212
let p = port::<int>();
13-
let f = grandchild;
14-
task::spawn(f);
13+
task::spawn2((), grandchild);
1514
let x = recv(p);
1615
}
1716

1817
fn main() {
1918
let p = port::<int>();
20-
let f = child;
21-
task::spawn(f);
19+
task::spawn2((), child);
2220
let x = recv(p);
2321
}

trunk/src/test/run-fail/task-comm-recv-block.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ use std;
44
import std::task;
55
import std::comm;
66

7-
fn goodfail() {
7+
fn# goodfail(&&_i: ()) {
88
task::yield();
99
fail "goodfail";
1010
}
1111

1212
fn main() {
13-
task::spawn(bind goodfail());
13+
task::spawn2((), goodfail);
1414
let po = comm::port();
1515
// We shouldn't be able to get past this recv since there's no
1616
// message available

trunk/src/test/run-pass/basic-1.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ import std::comm::send;
77
import std::comm::recv;
88
import std::task;
99

10-
fn a(c: chan<int>) { send(c, 10); }
10+
fn# a(c: chan<int>) { send(c, 10); }
1111

1212
fn main() {
1313
let p = port();
14-
task::spawn(bind a(chan(p)));
15-
task::spawn(bind b(chan(p)));
14+
task::spawn2(chan(p), a);
15+
task::spawn2(chan(p), a);
1616
let n: int = 0;
1717
n = recv(p);
1818
n = recv(p);

trunk/src/test/run-pass/basic-2.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,19 +7,19 @@ import std::comm::chan;
77
import std::comm::recv;
88
import std::task;
99

10-
fn a(c: chan<int>) { log "task a0"; log "task a1"; send(c, 10); }
10+
fn# a(c: chan<int>) { log "task a0"; log "task a1"; send(c, 10); }
1111

1212
fn main() {
1313
let p = comm::port();
14-
task::spawn(bind a(chan(p)));
15-
task::spawn(bind b(chan(p)));
14+
task::spawn2(chan(p), a);
15+
task::spawn2(chan(p), b);
1616
let n: int = 0;
1717
n = recv(p);
1818
n = recv(p);
1919
log "Finished.";
2020
}
2121

22-
fn b(c: chan<int>) {
22+
fn# b(c: chan<int>) {
2323
log "task b0";
2424
log "task b1";
2525
log "task b2";

trunk/src/test/run-pass/basic.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import std::comm::chan;
77
import std::comm::recv;
88
import std::task;
99

10-
fn a(c: chan<int>) {
10+
fn# a(c: chan<int>) {
1111
if true {
1212
log "task a";
1313
log "task a";
@@ -26,8 +26,8 @@ fn main() {
2626
let n: int = 2 + 3 * 7;
2727
let s: str = "hello there";
2828
let p = comm::port();
29-
task::spawn(bind a(chan(p)));
30-
task::spawn(bind b(chan(p)));
29+
task::spawn2(chan(p), a);
30+
task::spawn2(chan(p), b);
3131
let x: int = 10;
3232
x = g(n, s);
3333
log x;
@@ -37,7 +37,7 @@ fn main() {
3737
log "children finished, root finishing";
3838
}
3939

40-
fn b(c: chan<int>) {
40+
fn# b(c: chan<int>) {
4141
if true {
4242
log "task b";
4343
log "task b";

trunk/src/test/run-pass/binops.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -87,10 +87,10 @@ fn test_ptr() {
8787
}
8888

8989
fn test_task() {
90-
fn f() { }
90+
fn# f(&&_i: ()) { }
9191
let f1 = f, f2 = f;
92-
let t1 = task::spawn(f1);
93-
let t2 = task::spawn(f2);
92+
let t1 = task::spawn2((), f1);
93+
let t2 = task::spawn2((), f2);
9494

9595
assert (t1 == t1);
9696
assert (t1 != t2);

trunk/src/test/run-pass/chan-leak.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ tag request { quit; close(chan<bool>); }
1212

1313
type ctx = chan<request>;
1414

15-
fn request_task(c: chan<ctx>) {
15+
fn# request_task(c: chan<ctx>) {
1616
let p = port();
1717
send(c, chan(p));
1818
let req: request;
@@ -23,7 +23,7 @@ fn request_task(c: chan<ctx>) {
2323

2424
fn new() -> ctx {
2525
let p = port();
26-
let t = task::spawn(bind request_task(chan(p)));
26+
let t = task::spawn2(chan(p), request_task);
2727
let cx: ctx;
2828
cx = recv(p);
2929
ret cx;

trunk/src/test/run-pass/child-outlives-parent.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,6 @@
33
use std;
44
import std::task;
55

6-
fn child2(-s: str) { }
6+
fn# child2(&&s: str) { }
77

8-
fn main() { let x = task::spawn(bind child2("hi")); }
8+
fn main() { let x = task::spawn2("hi", child2); }

trunk/src/test/run-pass/comm.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@ import std::task;
99

1010
fn main() {
1111
let p = comm::port();
12-
let t = task::spawn(bind child(chan(p)));
12+
let t = task::spawn2(chan(p), child);
1313
let y = recv(p);
1414
log_err "received";
1515
log_err y;
1616
assert (y == 10);
1717
}
1818

19-
fn child(c: chan<int>) {
19+
fn# child(c: chan<int>) {
2020
log_err "sending";
2121
send(c, 10);
2222
log_err "value sent"

trunk/src/test/run-pass/hashmap-memory.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,11 @@ mod map_reduce {
3333
tag ctrl_proto { find_reducer([u8], chan<int>); mapper_done; }
3434

3535
fn start_mappers(ctrl: chan<ctrl_proto>, inputs: [str]) {
36-
for i: str in inputs { task::spawn(bind map_task(ctrl, i)); }
36+
for i: str in inputs { task::spawn2((ctrl, i), map_task); }
3737
}
3838

39-
fn map_task(ctrl: chan<ctrl_proto>, -input: str) {
39+
fn# map_task(&&args: (chan<ctrl_proto>, str)) {
40+
let (ctrl, input) = args;
4041

4142
let intermediates = map::new_str_hash();
4243

trunk/src/test/run-pass/issue-506.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,6 @@ native "rust" mod rustrt {
99
fn task_yield();
1010
}
1111

12-
fn yield_wrap() unsafe { rustrt::task_yield(); }
12+
fn# yield_wrap(&&_i: ()) unsafe { rustrt::task_yield(); }
1313

14-
fn main() { let f = yield_wrap; task::spawn(f); }
14+
fn main() { task::spawn2((), yield_wrap); }

trunk/src/test/run-pass/issue-507.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,17 @@ import std::comm::send;
1515
import std::comm::port;
1616
import std::comm::recv;
1717

18-
fn grandchild(c: chan<int>) { send(c, 42); }
18+
fn# grandchild(c: chan<int>) { send(c, 42); }
1919

20-
fn child(c: chan<int>) {
21-
let _grandchild = task::spawn_joinable(bind grandchild(c));
20+
fn# child(c: chan<int>) {
21+
let _grandchild = task::spawn_joinable2(c, grandchild);
2222
join(_grandchild);
2323
}
2424

2525
fn main() {
2626
let p = comm::port();
2727

28-
let _child = task::spawn_joinable(bind child(chan(p)));
28+
let _child = task::spawn_joinable2(chan(p), child);
2929

3030
let x: int = recv(p);
3131

0 commit comments

Comments
 (0)