Closed arpankapoor closed 2 months ago
Minimized:
use std::task::Poll;
pub fn poll(val: Poll<Result<Option<Vec<u8>>, u8>>) {
match val {
Poll::Ready(Ok(Some(_trailers))) => {}
Poll::Ready(Err(_err)) => {}
Poll::Ready(Ok(None)) => {}
Poll::Pending => {}
}
}
Run cargo +nightly build --release
to reproduce the ICE
@rustbot labels +regression-from-stable-to-nightly
searched nightlies: from nightly-2024-09-20 to nightly-2024-09-24 regressed nightly: nightly-2024-09-24 searched commit range: https://github.com/rust-lang/rust/compare/6c6d210089e4589afee37271862b9f88ba1d7755...7042c269c166191cd5d8daf0409890903df7af57 regressed commit: https://github.com/rust-lang/rust/commit/a772336fb3fbd1fe4493077fcfe04e0221296a99
Might be #129047 cc @DianQK
WG-prioritization assigning priority (Zulip discussion).
@rustbot label -I-prioritize +P-critical
Trying to figure out what flags I need to pass to make Nevermind an unrelated erorr was masking the ICE in the test.rustc
ICE, -C opt-level=3
doesn't seem to be sufficient alone, checking what cargo release profile sets.
Haven't closed Compiler panik #130771 as duplicate, as while it is probably caused by changes in https://github.com/rust-lang/rust/pull/129047, it might not be due to the exact same code path.
Just encountered this now, posting the GitHub Actions log: https://github.com/HTGAzureX1212/HarTex/actions/runs/11014828619/job/30586387526
This seems to not only be happening to http-body
but to some other crates as well (in the log above, twilight-http
).
The problematic part of twilight-http
has the exact same pattern of nested match patterns https://github.com/twilight-rs/twilight/blob/9147a49e2f96f4cde9be3fc48dda42dd5fecd3e1/twilight-http/src/response/future.rs#L84
Fixed by #130775 which reverted the change and added the minimized reproducer to the test suite. Thanks @jieyouxu!
Code
Clone
http-body
, checkout v0.4.6 and compile in release mode:Meta
rustc --version --verbose
:Error output
Backtrace
```
```