delay bug in RPITIT refinement checking with resolution errors
This commit is contained in:
parent
d929a42a66
commit
6402909f42
3 changed files with 43 additions and 4 deletions
|
@ -171,10 +171,10 @@ pub(super) fn check_refining_return_position_impl_trait_in_trait<'tcx>(
|
|||
}
|
||||
// Resolve any lifetime variables that may have been introduced during normalization.
|
||||
let Ok((trait_bounds, impl_bounds)) = infcx.fully_resolve((trait_bounds, impl_bounds)) else {
|
||||
// This code path is not reached in any tests, but may be reachable. If
|
||||
// this is triggered, it should be converted to `delayed_bug` and the
|
||||
// triggering case turned into a test.
|
||||
tcx.dcx().bug("encountered errors when checking RPITIT refinement (resolution)");
|
||||
// If resolution didn't fully complete, we cannot continue checking RPITIT refinement, and
|
||||
// delay a bug as the original code contains load-bearing errors.
|
||||
tcx.dcx().delayed_bug("encountered errors when checking RPITIT refinement (resolution)");
|
||||
return;
|
||||
};
|
||||
|
||||
// For quicker lookup, use an `IndexSet` (we don't use one earlier because
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue