summaryrefslogtreecommitdiffstats
path: root/third_party/rust/fallible_collections/src/boxed.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/fallible_collections/src/boxed.rs')
-rw-r--r--third_party/rust/fallible_collections/src/boxed.rs15
1 files changed, 9 insertions, 6 deletions
diff --git a/third_party/rust/fallible_collections/src/boxed.rs b/third_party/rust/fallible_collections/src/boxed.rs
index 6040754716..6680c713f4 100644
--- a/third_party/rust/fallible_collections/src/boxed.rs
+++ b/third_party/rust/fallible_collections/src/boxed.rs
@@ -64,19 +64,22 @@ impl<T> Deref for TryBox<T> {
}
fn alloc(layout: Layout) -> Result<NonNull<u8>, TryReserveError> {
- #[cfg(feature = "unstable")] // requires allocator_api
+ #[cfg(all(feature = "unstable", not(feature = "rust_1_57")))] // requires allocator_api
{
+ use alloc::collections::TryReserveErrorKind;
use core::alloc::Allocator;
alloc::alloc::Global
.allocate(layout)
- .map_err(|_e| TryReserveError::AllocError {
- layout,
- #[cfg(not(feature = "rust_1_57"))]
- non_exhaustive: (),
+ .map_err(|_e| {
+ TryReserveErrorKind::AllocError {
+ layout,
+ non_exhaustive: (),
+ }
+ .into()
})
.map(|v| v.cast())
}
- #[cfg(not(feature = "unstable"))]
+ #[cfg(any(not(feature = "unstable"), feature = "rust_1_57"))]
{
match layout.size() {
0 => {