-
Notifications
You must be signed in to change notification settings - Fork 277
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Regression: Compilation failure from imm2, imm4 etc static asserts #1159
Comments
As the original reporter of the issue, it also was frustrating to track down even to make a report:
So unfortunately these static asserts may be a bit too-clever and I suspect this will break other code as well. This should possibly be reported as an issue on rust-lang also, to provide better diagnostics for errors in const evaluation? |
Please do, having better diagnostic would make tracking this kind of problem less gruesome :) (also thank you a lot for the report) |
This is mostly a compiler issue: note that without this |
This may be true in general, but in the case of the specific intrinsics used by RustFFT (_mm_blend_ps, _mm256_blend_pd, _mm_permute_pd), it compiles correctly and tests pass on stable and beta. |
RustFFT recently had a bug report: ejmahler/RustFFT#74
On the latest nightly, RustFFT no longer compiles due to the following error:
A contributor was able to determine that the error was being caused by a
_mm_blend_ps
intrinsic:The fix was to change it to the following, removing unused bits from the imm4 value:
The reporter traced it back to the following code in this repo:
I was able to trace this static assert back to this PR, although it appears to be part of a larger initiative to apply this static assert to as many intrinsics as possible.
A fix has been submitted to RustFFT, and I'm happy to make my library more correct, but I'm creating this issue to raise 2 items of feedback with this new static assert:
The text was updated successfully, but these errors were encountered: