-
Notifications
You must be signed in to change notification settings - Fork 0
werk
regression
#199
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
Labels
from-crater
A regression found via a crater run, not part of our test suite
Comments
I saw another ICE, so I kept that too just in case. godbolt for them both. ( pub async fn run_task(t: &u32) {
build_dependencies(t).await;
}
async fn build_dependencies(t: &u32) {
Box::pin(run_task(t)).await;
Box::pin(build_multiple(t)).await;
}
fn build_multiple(t: &u32) -> impl Future<Output = ()> + Send {
async move {
spawn(async move { run_task(t).await }); // MIR typeck Ambiguity
// spawn(run_task(t)); // index out of bounds in ena
}
}
fn spawn<T>(_: impl Future<Output = T> + Send) {} |
fn build_multiple<'a>() -> impl Future<Output = ()> {
spawn(async { run_task().await });
std::future::ready(())
}
async fn run_task() {
build_dependencies().await;
}
async fn build_dependencies() {
Box::pin(run_task()).await;
Box::pin(build_multiple()).await;
}
fn spawn<F: Send>(_: F) {} |
fn build_multiple<'a>() -> impl Sized {
spawn(async { build_dependencies().await });
}
fn build_dependencies() -> impl Future<Output = ()> /* + Send */ {
async {
Box::pin(build_dependencies()).await;
async { build_multiple() }.await;
}
}
fn spawn<F: Send>(_: F) {}
fn main() {} |
matthiaskrgr
added a commit
to matthiaskrgr/rust
that referenced
this issue
May 17, 2025
…rowck, r=compiler-errors check coroutines with `TypingMode::Borrowck` to avoid cyclic reasoning MIR borrowck taints its output if an obligation fails. This could then cause `check_coroutine_obligations` to silence its error, causing us to not emit and actual error and ICE. Fixes the ICE in rust-lang/trait-system-refactor-initiative#199. It is unfortunately still a regression. r? compiler-errors
rust-timer
added a commit
to rust-lang-ci/rust
that referenced
this issue
May 17, 2025
Rollup merge of rust-lang#141125 - lcnr:coroutine_obligations_use_borrowck, r=compiler-errors check coroutines with `TypingMode::Borrowck` to avoid cyclic reasoning MIR borrowck taints its output if an obligation fails. This could then cause `check_coroutine_obligations` to silence its error, causing us to not emit and actual error and ICE. Fixes the ICE in rust-lang/trait-system-refactor-initiative#199. It is unfortunately still a regression. r? compiler-errors
github-actions bot
pushed a commit
to rust-lang/miri
that referenced
this issue
May 18, 2025
…compiler-errors check coroutines with `TypingMode::Borrowck` to avoid cyclic reasoning MIR borrowck taints its output if an obligation fails. This could then cause `check_coroutine_obligations` to silence its error, causing us to not emit and actual error and ICE. Fixes the ICE in rust-lang/trait-system-refactor-initiative#199. It is unfortunately still a regression. r? compiler-errors
tracked in #209 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Some type of recursive opaque + auto trait that results in infinite blowup:
https://crater-reports.s3.amazonaws.com/pr-133502-11/try%2328f13ad7c79d80decb5a3d54595a8b4105f397a3/gh/simonask.werk/log.txt
The text was updated successfully, but these errors were encountered: