-
Notifications
You must be signed in to change notification settings - Fork 13.3k
ICE: deeply_normalize should not be called with pending obligations
#133868
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
Comments
mvce trait a {
type b;
}
trait c {
fn d->impl
}
impl<e> c e
where<e as a>::b: a {
fn d
} |
@matthiaskrgr: That's not an MCVE. That's "i'm trying to make a test with the minimal amount of tokens", but I'm certain I've noted before that such tests are actually significantly worse than minimizing it conceptually (which is a task that actually requires some puzzle solving to do, rather than just getting a machine to do it). a test that has minimal tokens introduces a bunch of unrelated parser errors and is a bad candidate for a ui test, frankly. |
MUTS? (minimum unviable token set)? 🙈 |
A less esoteric MCVE:
|
Crater #139827 found one of these too: The same code also failed with errors on 1.86.0, but no ICE: |
I put up #140021 to fix the ICE, but I don't believe we should need to backport this given that the regressed crate doesn't even compile on stable. |
…lcnr Don't ICE on pending obligations from deep normalization in a loop See the comment I left inline in `compiler/rustc_trait_selection/src/traits/normalize.rs`. Fixes rust-lang#133868 r? lcnr
…r=lcnr Don't ICE on pending obligations from deep normalization in a loop See the comment I left inline in `compiler/rustc_trait_selection/src/traits/normalize.rs`. Fixes rust-lang#133868 r? lcnr
Rollup merge of rust-lang#140021 - compiler-errors:no-deep-norm-ice, r=lcnr Don't ICE on pending obligations from deep normalization in a loop See the comment I left inline in `compiler/rustc_trait_selection/src/traits/normalize.rs`. Fixes rust-lang#133868 r? lcnr
Don't ICE on pending obligations from deep normalization in a loop See the comment I left inline in `compiler/rustc_trait_selection/src/traits/normalize.rs`. Fixes rust-lang/rust#133868 r? lcnr
auto-reduced (treereduce-rust):
original code
original:
Version information
Possibly related line of code:
rust/compiler/rustc_trait_selection/src/traits/normalize.rs
Lines 63 to 75 in 96e51d9
Command:
/home/matthias/.rustup/toolchains/master/bin/rustc
Program output
The text was updated successfully, but these errors were encountered: