-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Flush errors before deep normalize in dropck_outlives
#140947
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
base: master
Are you sure you want to change the base?
Conversation
rustbot has assigned @petrochenkov. Use |
r? lcnr |
@bors r+ rollup |
@bors r- |
if !errors.is_empty() { | ||
return Err(errors); | ||
} | ||
|
||
ocx.deeply_normalize(&cause, param_env, ty)?; | ||
|
||
let errors = ocx.select_where_possible(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
are these errors always empty now?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
reworked this code a bit b/c it was kinda goofy, returning Err(vec![])
in case deep normalization succeeded.
e2b4654
to
8bf387d
Compare
let errors = ocx.select_where_possible(); | ||
debug!("normalize errors: {ty} ~> {errors:#?}"); | ||
return Err(errors); | ||
match ocx.deeply_normalize(&cause, param_env, ty) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
pls add comment that we do this match to get FulfillmentError
s to report in case query_normalize
failed to avoid ICE due to a delayed bug
8bf387d
to
a508011
Compare
Deep normalization doesn't allow the ocx to have pending obligations, so process them before deeply normalizing.
Fixes #140931
Fixes #140462