about summary refs log tree commit diff
path: root/src/libstd/arc.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstd/arc.rs')
-rw-r--r--src/libstd/arc.rs5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/libstd/arc.rs b/src/libstd/arc.rs
index 0033a4eaccd..503c15b46c2 100644
--- a/src/libstd/arc.rs
+++ b/src/libstd/arc.rs
@@ -217,7 +217,10 @@ fn check_poison(is_mutex: bool, failed: bool) {
 #[doc(hidden)]
 struct PoisonOnFail {
     failed: &mut bool,
-    drop {
+}
+
+impl PoisonOnFail : Drop {
+    fn finalize() {
         /* assert !*self.failed; -- might be false in case of cond.wait() */
         if task::failing() { *self.failed = true; }
     }