compile error: use of unstable library feature 'stdsimd'
Anton-4 opened this issue ยท 20 comments
Since the latest ahash 0.8.7 release I'm hitting a use of unstable library feature 'stdsimd'
on compilation.
We test on several architectures and operating systems and this only occurred on our macos m1 mac mini.
Full error:
error[E0658]: use of unstable library feature 'stdsimd'
--> /Users/m1ci/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ahash-0.8.7/src/operations.rs:124:24
|
124 | let res = unsafe { vaesmcq_u8(vaeseq_u8(transmute!(value), transmute!(0u128))) };
| ^^^^^^^^^^
|
= note: see issue #48556 <https://github.com/rust-lang/rust/issues/48556> for more information
error[E0658]: use of unstable library feature 'stdsimd'
--> /Users/m1ci/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ahash-0.8.7/src/operations.rs:124:35
|
124 | let res = unsafe { vaesmcq_u8(vaeseq_u8(transmute!(value), transmute!(0u128))) };
| ^^^^^^^^^
|
= note: see issue #48556 <https://github.com/rust-lang/rust/issues/48556> for more information
error[E0658]: use of unstable library feature 'stdsimd'
--> /Users/m1ci/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ahash-0.8.7/src/operations.rs:154:24
|
154 | let res = unsafe { vaesimcq_u8(vaesdq_u8(transmute!(value), transmute!(0u128))) };
| ^^^^^^^^^^^
|
= note: see issue #48556 <https://github.com/rust-lang/rust/issues/48556> for more information
error[E0658]: use of unstable library feature 'stdsimd'
--> /Users/m1ci/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ahash-0.8.7/src/operations.rs:154:36
|
154 | let res = unsafe { vaesimcq_u8(vaesdq_u8(transmute!(value), transmute!(0u128))) };
| ^^^^^^^^^
|
= note: see issue #48556 <https://github.com/rust-lang/rust/issues/48556> for more information
For more information about this error, try `rustc --explain E0658`.
error: could not compile `ahash` (lib) due to 4 previous errors
These functions are stable, are you using an older version of rustc?
Oh right, I didn't think to check that. I'm on 1.71.1. Would it be possible to set the required minimum version with the rust-version field in the Cargo.toml? That should provide a nice error message in this case.
This was stabilized in 1.72.
I am attempting to expand the presubmit checks to cover this #197
but so far it is still passing. What combination am I missing?
What combination am I missing?
I left a suggestion: #197 (comment)
@Anton-4 Can you clearify, you saw this when targeting aarch64-apple-darwin
? What args / rust flags were passed?
For datafusion, the issue came from apache/datafusion#8743
Tagging @Ted-Jiang who reproduced the issue
An example of the dependency datafusion has:
- Located in a few other crates within datafusion too, but is essentially the same (version & features)
Can you clearify, you saw this when targeting aarch64-apple-darwin ?
Yes indeed, I'll set up a minimal github repo with a full reproduction.
Files for minimal repro:
// rust-toolchain.toml
[toolchain]
channel = "1.71.1"
// Cargo.toml
[package]
name = "temp2"
version = "0.1.0"
edition = "2021"
[dependencies]
ahash="=0.8.7"
// src/main.rs
fn main() {
println!("Hello, world!");
}
run with cargo build --target=aarch64-apple-darwin
.
That produces the error for me on NixOS (x86_64 device) and also on macos 14 (m2 device).
FWIW, I'm running into this too (when trying to upgrade ahash in hickory-dns on my M1 with Rust 1.67).
I'd greatly appreciate it if we could solve this problem without bumping the MSRV. I try to provide support for older versions of Rust, and Debian stable offers 1.63, which I'd like to continue to target.
This still happens on M1 with rust 1.78.0 nightly. Is there something I am missing ?
Same for me here (M1):
- rust 1.77.0-nightly - works fine
- rust 1.78.0-nightly - error[E0635]: unknown feature
stdsimd
--> /Users/alexeykhan/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ahash-0.7.7/src/lib.rs:33:42
|
33 | #![cfg_attr(feature = "stdsimd", feature(stdsimd))]
| ^^^^^^^
For more information about this error, try rustc --explain E0635
.
error: could not compile ahash
(lib) due to 1 previous error
warning: build failed, waiting for other jobs to finish...
I have the same issue in https://github.com/iesahin/xvc/actions/runs/7798376079/job/21266895940#step:9:1
To anyone hitting this error on nightly: you need to update your nightly compiler.
1.78.0-nightly is latest and not working with it :-(
Are you using the latest version of ahash? Try cargo update
.
still doesn't compile on m1 with stable toolchain with this error