diff --git a/src/arrayvec.rs b/src/arrayvec.rs index 0101ce8..393bef9 100644 --- a/src/arrayvec.rs +++ b/src/arrayvec.rs @@ -11,7 +11,11 @@ use std::borrow::{Borrow, BorrowMut}; use std::hash::{Hash, Hasher}; use std::fmt; -#[cfg(feature="std")] +// Exclude wasm32v1-none: even when std feature is unified to true by workspace +// feature resolution, this target forces no_std (see lib.rs cfg_attr). In no_std +// mode `std` is aliased to `core`, and `core::io` is gated behind the unstable +// `core_io_borrowed_buf` feature (not stable in Rust 1.88, tracking: #117693). +#[cfg(all(feature = "std", not(all(target_arch = "wasm32", target_os = "none"))))] use std::io; use std::mem::ManuallyDrop; @@ -1252,7 +1256,7 @@ impl Ord for ArrayVec where T: Ord { } } -#[cfg(feature="std")] +#[cfg(all(feature = "std", not(all(target_arch = "wasm32", target_os = "none"))))] /// `Write` appends written data to the end of the vector. /// /// Requires `features="std"`.