Closed
Description
As of yesterday's (2024-12-03) release of Rust, I am unable to build libstd for Xous:
$ RUST_COMPILER_RT_ROOT="$(pwd)/src/llvm-project/compiler-rt" \
cargo +nightly \
build --target riscv32imac-unknown-xous-elf
--manifest-path "library/sysroot/Cargo.toml"
Compiling std v0.0.0 (/opt/Xous/rust-nightly/rust/library/std)
warning: dropping unsupported crate type `dylib` for target `riscv32imac-unknown-xous-elf`
error: `hashbrown::HashMap::<K, V, S>::with_hasher` cannot be (indirectly) exposed to stable
--> std/src/collections/hash/map.rs:304:25
|
304 | HashMap { base: base::HashMap::with_hasher(hash_builder) }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: either mark the callee as `#[rustc_const_stable_indirect]`, or the caller as `#[rustc_const_unstable]`
error: `hashbrown::HashSet::<T, S>::with_hasher` cannot be (indirectly) exposed to stable
--> std/src/collections/hash/set.rs:396:25
|
396 | HashSet { base: base::HashSet::with_hasher(hasher) }
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: either mark the callee as `#[rustc_const_stable_indirect]`, or the caller as `#[rustc_const_unstable]`
warning: `std` (lib) generated 1 warning
error: could not compile `std` (lib) due to 2 previous errors; 1 warning emitted
$
Earlier versions did not have this error. Usually when this happens it's something Xous-specific, but in this case it looks like it's entirely within std::collections::hash
.
Meta
rustc --version --verbose
:
rustc 1.85.0-nightly (c44b3d50f 2024-12-03)
binary: rustc
commit-hash: c44b3d50fea96a3e0417e8264c16ea21a0a3fca2
commit-date: 2024-12-03
host: x86_64-unknown-linux-gnu
release: 1.85.0-nightly
LLVM version: 19.1.4