about summary refs log tree commit diff
path: root/src/libstd/rand
diff options
context:
space:
mode:
authorAlex Crichton <alex@alexcrichton.com>2013-11-21 16:55:40 -0800
committerAlex Crichton <alex@alexcrichton.com>2013-11-24 21:21:12 -0800
commitacca9e3834842ee8d8104abe9b8b9bb88861793c (patch)
tree5b2ab145e0853d74661cae51726baceaca2ab884 /src/libstd/rand
parent85a1eff3a99c5d60bf34ca6f08f87ed341329af0 (diff)
Remove linked failure from the runtime
The reasons for doing this are:

* The model on which linked failure is based is inherently complex
* The implementation is also very complex, and there are few remaining who
  fully understand the implementation
* There are existing race conditions in the core context switching function of
  the scheduler, and possibly others.
* It's unclear whether this model of linked failure maps well to a 1:1 threading
  model

Linked failure is often a desired aspect of tasks, but we would like to take a
much more conservative approach in re-implementing linked failure if at all.

Closes #8674
Closes #8318
Closes #8863
Diffstat (limited to 'src/libstd/rand')
-rw-r--r--src/libstd/rand/os.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libstd/rand/os.rs b/src/libstd/rand/os.rs
index 60fc1e0c6bc..cd90af113ec 100644
--- a/src/libstd/rand/os.rs
+++ b/src/libstd/rand/os.rs
@@ -162,7 +162,7 @@ mod test {
         for _ in range(0, 20) {
             let (p, c) = comm::stream();
             chans.push(c);
-            do task::spawn_with(p) |p| {
+            do task::spawn {
                 // wait until all the tasks are ready to go.
                 p.recv();