about summary refs log tree commit diff
path: root/src/libstd/error.rs
diff options
context:
space:
mode:
authorFelix S. Klock II <pnkfelix@pnkfx.org>2017-06-13 21:57:49 +0200
committerFelix S. Klock II <pnkfelix@pnkfx.org>2017-06-15 23:48:31 +0200
commit12d4d12fef4f9024ffcc8eb5fef11f1a21074cd7 (patch)
treecbea264acfb3a0d9eba389f1476ec19eebad15bb /src/libstd/error.rs
parent57ab9e7e7c481427a8d59e16b932fbd1e5fe4c02 (diff)
downloadrust-12d4d12fef4f9024ffcc8eb5fef11f1a21074cd7.tar.gz
rust-12d4d12fef4f9024ffcc8eb5fef11f1a21074cd7.zip
implement Error trait for error structs added in allocator API.
Diffstat (limited to 'src/libstd/error.rs')
-rw-r--r--src/libstd/error.rs19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/libstd/error.rs b/src/libstd/error.rs
index f56e3a5d780..3d203429e7b 100644
--- a/src/libstd/error.rs
+++ b/src/libstd/error.rs
@@ -51,6 +51,7 @@
 // coherence challenge (e.g., specialization, neg impls, etc) we can
 // reconsider what crate these items belong in.
 
+use alloc::allocator;
 use any::TypeId;
 use cell;
 use char;
@@ -221,6 +222,24 @@ impl Error for ! {
     fn description(&self) -> &str { *self }
 }
 
+#[unstable(feature = "allocator_api",
+           reason = "the precise API and guarantees it provides may be tweaked.",
+           issue = "27700")]
+impl Error for allocator::AllocErr {
+    fn description(&self) -> &str {
+        allocator::AllocErr::description(self)
+    }
+}
+
+#[unstable(feature = "allocator_api",
+           reason = "the precise API and guarantees it provides may be tweaked.",
+           issue = "27700")]
+impl Error for allocator::CannotReallocInPlace {
+    fn description(&self) -> &str {
+        allocator::CannotReallocInPlace::description(self)
+    }
+}
+
 #[stable(feature = "rust1", since = "1.0.0")]
 impl Error for str::ParseBoolError {
     fn description(&self) -> &str { "failed to parse bool" }