about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/librustuv/idle.rs5
-rw-r--r--src/test/compile-fail/issue-8727.rs6
-rw-r--r--src/test/run-pass/issue-8860.rs2
3 files changed, 11 insertions, 2 deletions
diff --git a/src/librustuv/idle.rs b/src/librustuv/idle.rs
index 30e02b168ca..46de70c1746 100644
--- a/src/librustuv/idle.rs
+++ b/src/librustuv/idle.rs
@@ -117,7 +117,10 @@ mod test {
                     match *slot.get() {
                         (ref mut task, ref mut val) => {
                             *val = n;
-                            task.take_unwrap()
+                            match task.take() {
+                                Some(t) => t,
+                                None => return
+                            }
                         }
                     }
                 }
diff --git a/src/test/compile-fail/issue-8727.rs b/src/test/compile-fail/issue-8727.rs
index 7088c4df6b7..003f1d67cdb 100644
--- a/src/test/compile-fail/issue-8727.rs
+++ b/src/test/compile-fail/issue-8727.rs
@@ -14,7 +14,11 @@
 
 struct Data(~Option<Data>);
 
-fn generic<T>( _ : ~[(Data,T)] ) {let rec : ~[(Data,(bool,T))] = ~[]; generic( rec ); } //~ ERROR overly deep expansion of inlined function
+fn generic<T>( _ : ~[(Data,T)] ) {
+    //~^ ERROR overly deep expansion of inlined function
+    let rec : ~[(Data,(bool,T))] = ~[];
+    generic( rec );
+}
 
 
 fn main () {
diff --git a/src/test/run-pass/issue-8860.rs b/src/test/run-pass/issue-8860.rs
index e7d2a273939..230dce16151 100644
--- a/src/test/run-pass/issue-8860.rs
+++ b/src/test/run-pass/issue-8860.rs
@@ -8,6 +8,8 @@
 // option. This file may not be copied, modified, or distributed
 // except according to those terms.
 
+// ignore-fast
+
 extern mod green;
 
 static mut DROP: int = 0i;