Flush errors before deep normalize in dropck_outlives#140947
Merged
bors merged 2 commits intorust-lang:masterfrom May 16, 2025
Merged
Flush errors before deep normalize in dropck_outlives#140947bors merged 2 commits intorust-lang:masterfrom
dropck_outlives#140947bors merged 2 commits intorust-lang:masterfrom
Conversation
Collaborator
|
rustbot has assigned @petrochenkov. Use |
Contributor
Author
|
r? lcnr |
Contributor
|
@bors r+ rollup |
Contributor
|
@bors r- |
Collaborator
lcnr
reviewed
May 12, 2025
|
|
||
| ocx.deeply_normalize(&cause, param_env, ty)?; | ||
|
|
||
| let errors = ocx.select_where_possible(); |
Contributor
There was a problem hiding this comment.
are these errors always empty now?
Contributor
Author
There was a problem hiding this comment.
reworked this code a bit b/c it was kinda goofy, returning Err(vec![]) in case deep normalization succeeded.
e2b4654 to
8bf387d
Compare
lcnr
reviewed
May 13, 2025
| let errors = ocx.select_where_possible(); | ||
| debug!("normalize errors: {ty} ~> {errors:#?}"); | ||
| return Err(errors); | ||
| match ocx.deeply_normalize(&cause, param_env, ty) { |
Contributor
There was a problem hiding this comment.
pls add comment that we do this match to get FulfillmentErrors to report in case query_normalize failed to avoid ICE due to a delayed bug
8bf387d to
a508011
Compare
Contributor
|
@bors r+ rollup |
Collaborator
matthiaskrgr
added a commit
to matthiaskrgr/rust
that referenced
this pull request
May 15, 2025
Flush errors before deep normalize in `dropck_outlives` Deep normalization doesn't allow the ocx to have pending obligations, so process them before deeply normalizing. Fixes rust-lang#140931 Fixes rust-lang#140462
compiler-errors
added a commit
to compiler-errors/rust
that referenced
this pull request
May 15, 2025
Flush errors before deep normalize in `dropck_outlives` Deep normalization doesn't allow the ocx to have pending obligations, so process them before deeply normalizing. Fixes rust-lang#140931 Fixes rust-lang#140462
bors
added a commit
to rust-lang-ci/rust
that referenced
this pull request
May 15, 2025
…mpiler-errors Rollup of 14 pull requests Successful merges: - rust-lang#139749 (docs(library/core/src/pin): fix typo "necessarily" -> "necessary") - rust-lang#140130 (Add LLDB providers for BTreeMap and BTreeSet) - rust-lang#140685 (Simplify `Vec::as_non_null` implementation and make it `const`) - rust-lang#140712 (normalization: avoid incompletely constraining GAT args) - rust-lang#140768 (Improve `dangerous_implicit_aurorefs` diagnostic output) - rust-lang#140834 (move (or remove) some impl Trait tests) - rust-lang#140910 (Remove `stable` attribute from wasi fs (read_exact|write_all)_at) - rust-lang#140947 (Flush errors before deep normalize in `dropck_outlives`) - rust-lang#140966 (Remove #![feature(let_chains)] from library and src/librustdoc) - rust-lang#140977 ([win] Use a dash instead of slash for linker to avoid breaking lld) - rust-lang#140990 (VxWorks: updates from recent libc versions) - rust-lang#141003 (Improve ternary operator recovery) - rust-lang#141013 (Implement methods to set STARTUPINFO flags for Command API on Windows) - rust-lang#141026 (rustc-dev-guide subtree update) r? `@ghost` `@rustbot` modify labels: rollup
bors
added a commit
to rust-lang-ci/rust
that referenced
this pull request
May 15, 2025
…iaskrgr Rollup of 8 pull requests Successful merges: - rust-lang#139749 (docs(library/core/src/pin): fix typo "necessarily" -> "necessary") - rust-lang#140685 (Simplify `Vec::as_non_null` implementation and make it `const`) - rust-lang#140712 (normalization: avoid incompletely constraining GAT args) - rust-lang#140768 (Improve `dangerous_implicit_aurorefs` diagnostic output) - rust-lang#140947 (Flush errors before deep normalize in `dropck_outlives`) - rust-lang#140966 (Remove #![feature(let_chains)] from library and src/librustdoc) - rust-lang#140990 (VxWorks: updates from recent libc versions) - rust-lang#141027 (remove `RustfmtState` to reduce `initial_rustfmt` complexity) r? `@ghost` `@rustbot` modify labels: rollup
bors
added a commit
to rust-lang-ci/rust
that referenced
this pull request
May 15, 2025
…iaskrgr Rollup of 7 pull requests Successful merges: - rust-lang#139749 (docs(library/core/src/pin): fix typo "necessarily" -> "necessary") - rust-lang#140685 (Simplify `Vec::as_non_null` implementation and make it `const`) - rust-lang#140712 (normalization: avoid incompletely constraining GAT args) - rust-lang#140768 (Improve `dangerous_implicit_aurorefs` diagnostic output) - rust-lang#140947 (Flush errors before deep normalize in `dropck_outlives`) - rust-lang#140990 (VxWorks: updates from recent libc versions) - rust-lang#141027 (remove `RustfmtState` to reduce `initial_rustfmt` complexity) r? `@ghost` `@rustbot` modify labels: rollup
rust-timer
added a commit
to rust-lang-ci/rust
that referenced
this pull request
May 16, 2025
Rollup merge of rust-lang#140947 - compiler-errors:pending-norm, r=lcnr Flush errors before deep normalize in `dropck_outlives` Deep normalization doesn't allow the ocx to have pending obligations, so process them before deeply normalizing. Fixes rust-lang#140931 Fixes rust-lang#140462
github-actions bot
pushed a commit
to model-checking/verify-rust-std
that referenced
this pull request
May 21, 2025
…iaskrgr Rollup of 7 pull requests Successful merges: - rust-lang#139749 (docs(library/core/src/pin): fix typo "necessarily" -> "necessary") - rust-lang#140685 (Simplify `Vec::as_non_null` implementation and make it `const`) - rust-lang#140712 (normalization: avoid incompletely constraining GAT args) - rust-lang#140768 (Improve `dangerous_implicit_aurorefs` diagnostic output) - rust-lang#140947 (Flush errors before deep normalize in `dropck_outlives`) - rust-lang#140990 (VxWorks: updates from recent libc versions) - rust-lang#141027 (remove `RustfmtState` to reduce `initial_rustfmt` complexity) r? `@ghost` `@rustbot` modify labels: rollup
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Deep normalization doesn't allow the ocx to have pending obligations, so process them before deeply normalizing.
Fixes #140931
Fixes #140462